İçeriğe geç

PHP ile Veri Tabanı İşlemleri

PHP ile Veri Tabanı İşlemleri

Php ile Veri Tabanı İşlemleri Sunusu

  • MariaDB (MySQL) Veri Tabanı Bağlantısı ve Bağlantının Sonlandırılması
  • Include, Require, İlk Sorgusu ve Veri Tabanı Oluşturma
  • Tablo Oluşturma
  • Kayıt Ekleme
  • Birden Fazla Kayıt Ekleme (For Döngüsü İle)
  • Bir Formdan Girilen Verileri Veri Tabanına Kaydetme ve SQL Injection İçin Önlem Alma
  • Kayıt Silme

MariaDB (MySQL) Veri Tabanı Bağlantısı ve Bağlantının Sonlandırılması

<?php
	$sunucu_adi = "localhost";
	$kullanici_adi = "root";
	$sifre = "";
	
	//die("Burdan sonrasına geçit yok...");
	
	$baglanti = new mysqli($sunucu_adi, $kullanici_adi, $sifre,"",3306);
	
	if ($baglanti->connect_error)
		die("Bağlantı sağlanamadı : ".$baglanti->connect_error);
	
	echo "Bağlantı başarılı...";
	echo "<br>Madem işimiz bitti bağlantı kapansın...";
	$baglanti->close();
?>

Include, Require, İlk Sorgusu ve Veri Tabanı Oluşturma

<?php
	include("hafta_6_orn_2_include_require.php");
	//require("hafta_6_orn_2_include_require.php");
	
	//include("olmayan_dosya.php"); include: dosya olmasada devam eder.
	//require("olmayan_dosya.php"); require: dosya olmazsa program durur.
	
	
	echo "<hr>hala çalışıyor...<hr>";
	
	$sorgu = "CREATE DATABASE ilk_veri_tabani";
	
	if ($baglanti->query($sorgu) === TRUE) 
	{
		echo "Veritabanı başarıyla oluşturuldu";
	} 
	else 
	{
		echo "Veritabanı oluşturulurken hata: " . $baglanti->error;
	}
	
	include("hafta_6_orn_baglanti_kapat.php");
?>

hafta_6_orn_2_include_require.php

<?php
	$sunucu_adi = "localhost";
	$kullanici_adi = "root";
	$sifre = "";
	
	$baglanti = new mysqli($sunucu_adi, $kullanici_adi, $sifre);
	
	if ($baglanti->connect_error)
		die("Bağlantı sağlanamadı : ".$baglanti->connect_error);
	
	echo "Bağlantı başarılı...";

?>

Tablo Oluşturma

<?php
	$sunucu_adi = "localhost";
	$kullanici_adi = "root";
	$sifre = "";
	$veritabani_adi="ilk_veri_tabani";
	
	$baglanti = new mysqli($sunucu_adi, $kullanici_adi, $sifre, $veritabani_adi);
	
	if ($baglanti->connect_error)
		die("Bağlantı sağlanamadı : ".$baglanti->connect_error);
	
	echo "Bağlantı başarılı...<hr>";
	
	$sorgu="
	CREATE TABLE `ogrenci` (
  `idogrenci` int(11) NOT NULL,
  `ad` varchar(50) NOT NULL,
  `soyad` varchar(50) NOT NULL,
  `yas` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ALTER TABLE `ogrenci`
  ADD PRIMARY KEY (`idogrenci`);
COMMIT;";

	if ($baglanti->multi_query($sorgu) === TRUE) 
	{
		echo "Tablo başarıyla oluşturuldu";
	} 
	else 
	{
		echo "Tablo oluşturulurken hata: " . $baglanti->error;
	}
	
	include("hafta_6_orn_baglanti_kapat.php");
?>

hafta_6_orn_baglanti_kapat.php

<?php
	$baglanti->close();
	echo "<hr>Bağlantı kapatıldı";
?>

Kayıt Ekleme

<?php
	$sunucu_adi = "localhost";
	$kullanici_adi = "root";
	$sifre = "";
	$veritabani_adi="ilk_veri_tabani";
	
	$baglanti = new mysqli($sunucu_adi, $kullanici_adi, $sifre, $veritabani_adi);
	
	if ($baglanti->connect_error)
		die("Bağlantı sağlanamadı : ".$baglanti->connect_error);
	
	echo "Bağlantı başarılı...<hr>";
	
	$sorgu="INSERT INTO `ogrenci` (`idogrenci`, `ad`, `soyad`, `yas`) 
			VALUES ('', 'Cahit', 'Kaner', '46');";

	if ($baglanti->multi_query($sorgu) === TRUE) 
	{
		echo "Kayıt başarıyla oluşturuldu";
	} 
	else 
	{
		echo "Kayıt oluşturulurken hata: " . $baglanti->error;
	}
	
	include("hafta_6_orn_baglanti_kapat.php");
?>

Birden Fazla Kayıt Ekleme (For Döngüsü İle)

<?php
	$sunucu_adi = "localhost";
	$kullanici_adi = "root";
	$sifre = "";
	$veritabani_adi="ilk_veri_tabani";
	
	$baglanti = new mysqli($sunucu_adi, $kullanici_adi, $sifre, $veritabani_adi);
	
	if ($baglanti->connect_error)
		die("Bağlantı sağlanamadı : ".$baglanti->connect_error);
	
	echo "Bağlantı başarılı...<hr>";
	
	

	for ($i=0;$i<10;$i++)
	{
		$sorgu="INSERT INTO `ogrenci` (`idogrenci`, `ad`, `soyad`, `yas`) 
				VALUES ('', 'Cahit', 'Kaner', '".($i+30)."');";
		$baglanti->query($sorgu);
	}
	
	include("hafta_6_orn_baglanti_kapat.php");
?>

Bir Formdan Girilen Verileri Veri Tabanına Kaydetme ve SQL Injection İçin Önlem

<?php
	$sunucu_adi = "localhost";
	$kullanici_adi = "root";
	$sifre = "";
	$veritabani_adi="ilk_veri_tabani";
	
	$baglanti = new mysqli($sunucu_adi, $kullanici_adi, $sifre, $veritabani_adi);
	
	if ($baglanti->connect_error)
		die("Bağlantı sağlanamadı : ".$baglanti->connect_error);
	
	echo "Bağlantı başarılı...<hr>";
?>
<!doctype html>
<html>
	<head>
		<title>Formdan Girilen Veriyi Veri Tabanına Kaydet</title>
	</head>
	<body>
		<?php
			if(!empty($_POST["kaydet"]))
			{
				$sorgu = $sorgu="INSERT INTO `ogrenci` (`idogrenci`, `ad`, `soyad`, `yas`) 
				VALUES ('', '".sqlInjectionEngelle($_POST['ad'])."', '".sqlInjectionEngelle($_POST['soyad'])."', '".sqlInjectionEngelle($_POST['yas'])."');";
				$baglanti->query($sorgu);
			}
		?>
		<form action="" method="POST">
			Ad<input type="text" name="ad"><hr>
			Soyad<input type="text" name="soyad"><hr>
			Yaş<input type="text" name="yas"><hr>
			<input type="submit" value="Kaydet" name="kaydet">
		</form>
	</body>
</html>

<?php
	include("hafta_6_orn_baglanti_kapat.php");
	function sqlInjectionEngelle($var) 
	{
		$var=stripslashes($var);
		$var=htmlentities($var);
		$var=strip_tags($var);
		$var=mysqli_real_escape_string($GLOBALS["baglanti"],$var);
		return $var;
	}
?>

Kayıt Silme

<?php
	$sunucu_adi = "localhost";
	$kullanici_adi = "root";
	$sifre = "";
	$veritabani_adi="ilk_veri_tabani";
	
	$baglanti = new mysqli($sunucu_adi, $kullanici_adi, $sifre, $veritabani_adi);
	
	if ($baglanti->connect_error)
		die("Bağlantı sağlanamadı : ".$baglanti->connect_error);
	
	echo "Bağlantı başarılı...<hr>";

	$sorgu='DELETE FROM `ogrenci` WHERE `ogrenci`.`idogrenci` = 29';
	if ($baglanti->query($sorgu) === TRUE) 
	{
		echo "Kayıt başarıyla silindi";
	} 
	else 
	{
		echo "Kayıt silinirken hata: " . $baglanti->error;
	}
	echo "29 Nolu kayit silindi...";
	include("hafta_6_orn_baglanti_kapat.php");
?>
2.115 Gösterim  
Tarih:bilgisayar mühendisliğiDersinternet programlamaPHPprogramlamaweb programlama

Tek Yorum

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.

This site uses Akismet to reduce spam. Learn how your comment data is processed.