Selamun aleyküm, merhaba geçen dersimde veritabanına kayıt eklemeyi anlatmıştım. Bu dersimde veritabanında bulunan tablolardan kayıt çekmeyi anlatacağım inÅŸaallah.
Daha önceki veritabanına kayıt ekleme dersini hatırlamak isterseniz buradan okuyabilirsiniz.
Unutulmaması gereken bir hususta veritabanı ile ilgili iÅŸlem yapılacaksa mutlaka veritabanı ile baÄŸlantı kurulmalıdır. Ben, bu derslerde kodların arasına baÄŸlantı kodlarını ve php açma kapama etiketlerini eklemiyorum. Siz örneÄŸi çalıştırabilmeniz için baÄŸlantı kodlarını ve php açma kapama etiketlerini ekleyiniz.
Veritabanına bağlantı kurma dersini buradan okuyabilirsiniz. Kaynak: www.mustafakarsli.com
Kayıt çağırmadan önce var olan veritabanındaki tablonun görüntüsü aÅŸağıda verilmiÅŸtir.

Yukarıdaki duyurular tablosunun 3 alanı olup 2 tane de kayıt bulunmaktadır. Bu dersimde veritabanındaki kayıtları çağırmayı anlatacağım.
Tablodaki Verileri Seçme Kaynak: www.mustafakarsli.com
AÅŸağıda yukarıdaki tablodaki verileri kullanmamıza yarayacak kodlar verilmiÅŸtir. Kodları inceleyerek açıklayalım.
mysql_query("select * from duyurular");
Veritabanından seçim yapmamızı saÄŸlayan komut yukarıdaki gibidir. Buradaki siyah yazılar her zaman olması gereken parametreler olup kırmızı yazılı yerler ise kendi isteÄŸimize göre seçim yapacağımız parametrelerdir. Yukarıdaki satır veritabanındaki duyurular tablosundaki her alanı seçmemizi saÄŸlar. Bu satırda * yerine alan adı da (sutun adı) yazılabilir. Mesela duyurular tablosundan yalnızca kayitno alanlarını seçmek istiyorsak * yerine alan adını (sutun adı) yazmamız gerekmektedir. AÅŸağıdaki gibi…
mysql_query("select kayitno from duyurular");
Tabloyu Satır Satır Çalıştırmak
Yukarıdaki gibi tablodan seçim yaptıktan sonra bu seçimi bir deÄŸiÅŸkene atmalıyız ve bu seçimi satır satır yorumlamalıyız.
$sorgu=mysql_query("select * from duyurular");
$satir=mysql_fetch_array($sorgu);
Yukarıdaki kodları açıklarsak birinci satırdaki kodumuz veritabanındaki bütün alanları seçmekte ve bunu $sorgu deÄŸiÅŸkenine atamaktadır.
İkinci satır ise $sorgu deÄŸiÅŸkenine atadığımız tabloyu satır satır yani kayıt kayıt parçalayarak kullanıma açmaktadır. Yani ikinci satırda veritabanımızdaki duyurular tablosundaki ilk kayıt $satir deÄŸiÅŸkenine alınmaktadır.
İkinci satır tekrarlandığında tablodaki bir sonraki kayıt (satır) alınacaktır.
$sorgu=mysql_query("select * from duyurular");
$satir=mysql_fetch_array($sorgu);
$satir=mysql_fetch_array($sorgu);
Bir önceki örneÄŸi yukarıdaki ÅŸekilde yazacak olursak $satir deÄŸiÅŸkeni ikinci kaydı tutuyor olacaktır.
Kaydı (Satırı) Ekrana Yazdırma
Tabloyu seçtik, satır satır iÅŸledik ve iÅŸlerken yazdırma kısmına gelince; $satir=mysql_fetch_array($sorgu);
kodu tablonun satırını $satir deÄŸiÅŸkenine alırken dizi deÄŸiÅŸkeni olarak alır ve dizi deÄŸiÅŸkeni olarak kullanılır. Yani 3 alandan oluÅŸan kaydımızın her alanı dizi deÄŸiÅŸkeninin bir elemanı olarak kaydedilir. Birinci satırı / kaydı aldığını düÅŸünerek açıklayacak olursak; “1 - ders 1 – ilk dersimizi yayınlamış bulunuyoruz” satırının kayıtno’su dizinin ilk elemanı olur, duyurubaslik ikinci eleman, duyurumetin ise 3.eleman olarak alınır.
$satir[0] dediÄŸimizde kayıt no’sunu yani “1” deÄŸerini alırız. Kaynak: www.mustafakarsli.com
$satir[1] dediÄŸimizde duyurubaslik yani “ders 1” deÄŸerini alırız.
$satir[2] dediÄŸimizde duyurumetin yani “ilk dersimizi yayınlamış bulunuyoruz” deÄŸerini alırız.
echo "No="; echo $satir[0]; echo " Başlık="; echo $satir[1]; echo " Duyuru="; echo $satir[2];
şeklinde yazılırsa aşağıdaki gibi kaydı ekrana yazdırmış oluruz:
No=1 Başlık=ders 1 Duyuru=ilk dersimizi yayınlamış bulunuyoruz
Bu ÅŸekilde fetc_array ile alınan satırı ekrana yazdırabiliriz. Ama çok sayıdaki kaydı bu ÅŸekilde yazdırmak çok zor olur. Tablodaki bütün kayıtları yazdırmak için aÅŸağıdaki kodu kullanacağız.
$sorgu=mysql_query("select * from duyurular");
while($satir=mysql_fetch_array($sorgu))
{
echo "No=".$satir[0]." Başlık=".$satir[1]." Mesajınız=".$satir[2]."<br>";
}
Kaynak: www.mustafakarsli.com
Yukarıdaki kod incelendiÄŸinde tablonun hepsi seçiliyor ve satır sayısı kadar while döngüsü içinde her satır ekrana alt alta yazdırılıyor.
No=1 Başlık=ders 1 Duyuru=ilk dersimizi yayınlamış bulunuyoruz
No=2 Başlık=ders 2 Duyuru=ikinci dersimiz yoğun ilgiyle devam ediyor
Bu ÅŸekilde veritabanındaki kayıtları çağırıp kullanabilirsiniz. İlerleyen derslerde görüÅŸmek üzere saÄŸlıcakla kalınız.
Mustafa KARSLI Kaynak: www.mustafakarsli.com