PHP kullanarak mysql’e sorgu gönder
Gönderilme zamanı: 15 Eki 2009, 15:28
PHP’de MySQL’e sorgu göndermek için mysql_query() komutu kullanılır. Parantez içinde tırnak arasında sql sorgusu veya daha önce sql olarak hazırlanmış değişken yazılabilir.
Örneğin:
veya
aynı işlemi yapar.Kaç tane kayıt geldiğini öğrenmek için mysql_numrows() komutu kullanılır. Bu daha sonra sorgudan gelen kayıtları almak işimize yarayacaktır.
yukarıdaki sorgudan kaç tane kayıt geldiğini bize verecektir. Eğer sorgudan gelen kayıtları değişkenlere almak istiyorsak bunun icinde mysql_result() komutu kullanılır.
Mesela yukarıdaki sorgudan php ve asp diye iki alan geldiğini düşünelim burdan gelen tüm kayıtları ayrı ayrı iki değişkene aktaralım.
Yukarıda $i değişkeni sorgudan gelen sonuçları alırken kullandığımız tampon değişkendir. Sırası ile her sıradaki asp ve php alanlarındaki kayıtlar $asp ve $php isimli iki dizi değişkene aktarıyor. Böylece mysql’de yer alan yaptığımız sorgu ile alakalı tüm kayıtlar artık php’nin içine aktarılmıştır. Bunları ekrana dökmek için:
şeklinde kısa bir döngü kullanılabilir. Tabii ki bunu html kullanarak daha görsel hale getirmek mümkündür.
Php’den gelen değişkenleri de sorgularda kullanmamız mümkündür. Mesela $ad diye bir değişken gelecek ve bu değişkenin ad, soyad ve eposta bilgileri ekrana yazılacaktır. Kullanılan database isimler olsun isim adlı bir tablo kullanılsın. Örneğin aşağıda dökelim:
/* Daha dinamik bir program yapısı olması açısından bu şekilde tanımlamalar ile kullanmak ileride değişikliler yapıldığında işimizi kolaylaştıracaktır*/
ALINTIDIR
Örneğin:
Kod: Tümünü seç
$sorgu=”select * from phpisbest”;
$islem=mysql_query($sorgu);Kod: Tümünü seç
$islem=mysql_query(“select * from phpisbest”);Kod: Tümünü seç
$kac=mysql_numrows($islem);Mesela yukarıdaki sorgudan php ve asp diye iki alan geldiğini düşünelim burdan gelen tüm kayıtları ayrı ayrı iki değişkene aktaralım.
Kod: Tümünü seç
$i=0;
while($i<$kac):
$asp[]=mysql_result($islem,$i,”asp”);
$php[]=mysql_result($islem,$i,”php”);
$i++;
endwhile;Kod: Tümünü seç
for($j=0;$j<$kac;$j++):
echo $asp[j].” “.$php[j].”<br>”;
endfor;Php’den gelen değişkenleri de sorgularda kullanmamız mümkündür. Mesela $ad diye bir değişken gelecek ve bu değişkenin ad, soyad ve eposta bilgileri ekrana yazılacaktır. Kullanılan database isimler olsun isim adlı bir tablo kullanılsın. Örneğin aşağıda dökelim:
Kod: Tümünü seç
<?
$host = “localhost”;
$user = “root”;
$pass = “”;
$database = “isimler”;Kod: Tümünü seç
mysql_connect($host,$user,$pass)
mysql_select_db($database);
$sorgu = “select ad,soyad,eposta from isim where ad=’$ad’”;
$islem = mysql_query($sorgu);
$kac = mysql_numrows($islem);
$i=0;
while($i<$kac):
$isim = mysql_result($islem,$i,”ad”);
$soyisim = mysql_result($islem,$i,”soyad”);
$posta = mysql_result($islem,$i,”eposta”);
echo”ad: $isim <br> soyad: $soyisim<br> eposta: $posta<br><br><br>”;
$i++;
endwhile;
?>