PHP ile MySQL veritabanına MySQLi tekniği ile Bağlanma

Bu makalemizde MySQLi tekniği ile veritabanına bağlanacağız. Veirtabanına bağlanmak için artık klasik mysql_connect, mysql_select_db ifadeleri yerine MySQLi veya PDO(Php Data Objects) tekniğini kullanmalısınız, güvenlik ve performans açısından bu seçim önemlidir. Wamp veya Xamp gibi paketlerden birini kurduktan sonra, bu paketlerin içinde MySQL veritabanı yönetim yazılımı olan PhpMyAdmin geldiğini göreceksiniz. Ayrı ayrı kurduysanız PhpMyAdmin'i sonradan da kurabiirsiniz.  



1) PhpMyAdmin'de Veritabanı sekmesine tıklayınz ve aşağıdaki şekilde görüldüğü gibi vtokul isimli bir veritabanını PHPMyAdmin'de oluşturunuz.



2) vtokul veritabanı içine tblogrenci isimli bir tablo açınız.
 

3) Tablo Yapsını aşağıdaki şekilde oluşturunuz. Bu tabloda ogrenciID gibi mutlaka her kayıtta eşsiz olan bir alan olmalıdır, bu alanı Primary Key(Birincil Anahtar) olarak belirledik. Birincil Anahtar olarak işaretlenen alanlar her tabloda bir tane olup, eşsiz olmalıdır. Veritabanı, Primary key olarak seçilen alana veri girildiğinde otomatik olarak sıralar ve verilerin eşsiz girilip girilmediğini kontrol eder. Biz bu alanı, aynı zamanda Auto Increment(Otomatik Artan) olarak seçtik, böylece her kayıt girildiğinde ogrenciID değeri bir artacak. 



4) Ekle bölümünden ogrenciID alanını dışında tüm kutucuklara aşağıdaki gibi örnek kayıtlar giriniz. ogrenciID alanına biz elle herhangi bir kayıt girmiyoruz, çünkü yukarıdaki tablo yapısını oluştururken Otomatik Artan olarak seçtik, Otomatik Artan alanlara elle (manuel olarak) giriş yapılmaz.


 

5) PhpMyAdmin ile işimiz şimdilik bu kadar, daha sonra farklı kullanımlar yapacağız. Şimdi veritbanımıza girdiğimiz bilgileri PHP ile listeleyelim. Önce veritabanına bağlanmamız gerekecek, bu işlem mysqli_connect fonksiyonu ile kolay şekilde yapılabiliyor.

$baglan=mysqli_connect("localhost","root","","vtokul");

Burada mysqli_connect fonksiyonu 4 parametre alıyor, ilk parametre veritabanının bulunduğu sunucu adı veya IP adresi. Benim örneğimde MySQL veritabanı ve yazacağım PHP kodları aynı bilgisayarda olduğu için localhost yazdım, localhost yerine yine çift tırnak içinde 127.0.0.1 de yazabilirsiniz. Eğer MySQL veritabanı farklı sunucuda ise o sunucunun IP adresini yazmalısınız.

İkinci parametre MySQL veritabanına bağlanırken kullanılacak kullanıcı adı, üçüncü parametre veritabanı şifresi, son parametre ise MySQL sunucusunda bağlanılacak veritabanı adı'dır. Şimdi gelelim veritabanındaki herhangi bir tablodan veri çekme işlemine. Bu işlem için mysqli_query() fonksiyonundan yararlanıyoruz. Bu fonksiyon içine  SELECT, INSERT, UPDATE, DELETE gibi SQL komutlarını kullanabiliriz.

$sonuc=mysqli_query($baglan,"select * from tblogrenci");

Yukarıdaki satırda tblogrenci isimli tablodan tüm kayıtları çekiyoruz. 

mysqli_set_charset($baglan, "utf8");

Yukarıdaki satırda Türkçe karakterlerle sorun yaşamamak için utf-8 karakter seçine göre ayarlanmasını sağlıyoruz. Aşağıdaki while döngüsü ile veritabanından tüm kayıtları çekiyoruz. tblogrenci tablosundan bir satır çekmek için mysqli_fetch_array() fonksiyonunu kullanıyoruz. Bu fonksiyon, her çağrılışında ilgili satırı $satir isimli diziye atacaktır. Dizinin ilk elemanına $satir['ogrenciID'] sonraki elemanına $satir['ADI'] şeklinde ulaşıyoruz. 

while($satir=mysqli_fetch_array($sonuc))
{
   echo $satir['ogrenciID']." ".$satir['ADI']. "  ". $satir['SOYADI'] ;
   echo "<br>";
}

 


Aşağıda kodların tamamı görülmektedir,  Notepad++ gibi bir editörde yazıp c:\Wamp\www klasörüne kaydediniz. 

<html>
 
<head>
<meta charset="utf-8">
<title>Notlar</title>
</head>
 
<body>
<table border="1" align="center" width="80%">
<tr>
<td>TC Kimlik No</td>
<td>Adı</td>
<td>Soyadı</td>
<td>Not1</td>
<td>Not2</td>
<td>Not3</td>
<td>Ortalama</td>
<td>Durum</td>
 
</tr>
<?php
$baglan=mysqli_connect("localhost","root","","vtokul");
$sonuc=mysqli_query($baglan,"select * from tblogrenci");
mysqli_set_charset($baglan, "utf8");
 
while($satir=mysqli_fetch_array($sonuc))
{
echo '<tr>';
echo '<td>'.$satir['TCKIMLIKNO'].'</td>';
echo '<td>'.$satir['ADI'].'</td>';
echo '<td>'.$satir['SOYADI'].'</td>';
echo '<td>'.$satir['NOT1'].'</td>';
echo '<td>'.$satir['NOT2'].'</td>';
echo '<td>'.$satir['NOT3'].'</td>';
 
echo '</tr>';
}
?>
 
</table>
 
</body>
</html>
 
Yukarıdaki kodları Notepad++'a yapıştırıp, C:\Wamp\www\ dizinine notlistele.php olarak kaydedip, herhangi bir tarayıcıda http:\\localhost\notlistele.php yazıp çalıştırdığınızda aşağıdaki sonucu göreceksiniz. 


Sonraki örneklerimizde veritabanına kayıt eklemeyi, silmeyi ve güncellemeyi öğreneceğiz. 

Dosyaları İndirmek için aşağıdaki linke tıklayınız, WinRAR programı ile sıkıştırılmış dosyaları www dizinine atınız. PhMyAdmin'i açıp vtokul.sql dosyasını İçeriye Aktar seçeneğini seçerek aktarınız.

Dosyaları İNDİR

Aşağıdaki makaleler de ilginizi çekebilir.

1) PHP ile Web Programlama Diline Giriş ve Orta Seviye
2) PHP ile MySQL Veritabanına PDO Tekniği ile Bağlanma Bölüm 1
3) 
PHP ile MySQL Veritabanına PDO Tekniği ile Bağlanma Bölüm 2
4) PHP ile MySQL Veritabanına PDO Tekniği ile Bağlanma Bölüm 3
5) PHP ile MySQL Veritabanına PDO Tekniği ile Bağlanma Bölüm 4
6) PHP ile MySQL Veritabanına PDO Tekniği ile Bağlanma Bölüm 5
7) PHP ile MySQL Veritabanına PDO Tekniği ile Bağlanma Bölüm 6



Mutlu Kodlamalar,
Oğuzhan TAŞ



 
Bookmark and Share