IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

 Kayıt ol  Topluluk
Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 24 Nisan 2010, 12:26   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
PHP'nin MySQL'e BAğLANIRKEN KULLANDIğI KOMUTLAR




  1. mysql_affected_rows
  2. mysql_change_user
  3. mysql_close
  4. mysql_connect
  5. mysql_create_db
  6. mysql_data_seek
  7. mysql_db_name
  8. mysql_db_query
  9. mysql_drop_db
  10. mysql_errno
  11. mysql_error
  12. mysql_escape_string
  13. mysql_fetch_array
  14. mysql_fetch_assoc
  15. mysql_fetch_field
  16. mysql_fetch_lengths
  17. mysql_fetch_object
  18. mysql_fetch_row
  19. mysql_field_flags
  20. mysql_field_name
  21. mysql_field_len
  22. mysql_field_seek
  23. mysql_field_table
  24. mysql_field_type
  25. mysql_free_result
  26. mysql_insert_id
  27. mysql_list_dbs
  28. mysql_list_fields
  29. mysql_list_tables
  30. mysql_num_fields
  31. mysql_num_rows
  32. mysql_pconnect
  33. mysql_query
  34. mysql_unbuffered_query
  35. mysql_result
  36. mysql_select_db
  37. mysql_tablename
  38. mysql_get_client_info
  39. mysql_get_host_info
  40. mysql_get_proto_info
  41. mysql_get_server_info

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet
Alt 24 Nisan 2010, 12:34   #2
Çevrimiçi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: PHP'nin MySQL'e BAğLANIRKEN KULLANDIğI KOMUTLAR




Böyle yazarsan boş bir konudan başka bi anlamı kalmaz nedir ne işe yarar neler yapilir bunları yazmak lazim. Microsoftta calismiyoruz fonksiyona bakip kimse anlamaz.
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Aşşağidaki gibi bir anlatim, konu hakkında hic bilgisi olmayan insanlarin kafasinda bile fikirler doğurabilir.

PHP ile MySQL’den veri okutma konusuna sıra geldiğinde ayrıca öğrenmemiz gereken mysql_result() MySQL’e gönderilen sorgudan geri gelen bilgileri depolar.Basit anlamda mysql_query() komurundan sonra bu komutu bilmemiz işimize yarar.Bir örnek ile öğrendiklerimizi sınıyalım.


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<?
mysql_connect
(&#8220;localhost”,”root”) or die (“MySQL’e bağlanamadım”);
mysql_select_db(&#8220;deneme2″) or die (“MySQL’de veritabanını bulamadım”);
$tablo=&#8220;SELECT * FROM liste “;
$sorgu=mysql_query($tablo);
 
$sayi=mysql_num_rows($sorgu);
print &
#8220;<table align=\”center\” border=\”1\”>
<tr>
<
td>Adı:</td><td>Soyadı</td><td>username</td><td>sifre</td><td>mail</td>
</
tr>&#8221;;
$sayac=0;
while(
$sayac $sayi){
$degiskenler = array (
1=> @mysql_result($sorgu$sayac, &#8220;ad”),
2=> @mysql_result($sorgu$sayac, &#8220;soyad”),
3=> @mysql_result($sorgu$sayac, &#8220;username”),
4=> @mysql_result($sorgu$sayac, &#8220;sifre”),
5=> @mysql_result($sorgu$sayac, &#8220;mail”)
);
print &
#8220;<tr> <td>$degiskenler[1]</td><td>$degiskenler[2]</td>
<td>$degiskenler[3]</td><td>$degiskenler[4]</td>
<
td>$degiskenler[5]</td>
</
tr>&#8221;;
$sayac++;
}
?>


Aslına bakarsanız birazcık zor bir örnekle okuma işlemine başladık.Bu script liste tablosunda bulunan bütün değerleri bir tabloya basıyor.Yukarda adından bahsettiğimiz mysql_resul() komutundan hariç birde mysql_num_rows() komutunu kulllandık.Bu komut tabloda bulunana satır sayısını verir.Şimdi scriptimizi satır satır açıklayalım.
İlk önce MySQL’imize bağlanıyor ve hangi veritabanında işlem yapacağımızı belirtiyoruz.Daha sonra tablo değişkeninde tablonun bütün değerlerini seçili duruma getiriyoruz.mysql_query() komutu ile MySQL’e sorgu gönderiyoruz.Daha sonrada mysql_num_rows() komutu ile MySQL’de ki satır sayısını belirliyoruz.Bundan sonrada 5 sütünlu bir tablonun açıklayıcı satırını print komutu ile yazıyoruz.Bir while döngüsü ile tablomuzun devamını yazdırmak için kaç adet satır yapacağını önceden MySQL’in satır sayısını belirleyen komutun değişkenini yani sayi değişkenini yazıyoruz.Bundan sonra bir array ile tablomuzdaki değerleri değişkenlendiriyoruz.Burada ki püf nokta mysql_resul() komutunun içerisine ilk önce sorgudan dönen sonucu giriyoruz.Daha sonra tablomuzdaki hangi satırın okunacağını belirtiyoruz.Burası while döngüsünde değilde sabit olduğunda 0 sayısını alır yani tablodaki ilk satır değerlerini okuturuz.Ama biz burada while döngüsü kullandığımızdan dolayı sayac değişkeni koyduk.Sayac değişkenide sıfırdan başlayarak tabloda ne kadar satır varsa hepsini okuyacak.En sonunda da hanci sütun değerini okuyacağımızı belirtiyoruz.Bundan sonrası da fasa fiso.
Bu yöntem, Php’nin hızını düşürecektir.Çünkü bütün satırları tek tek okuyarak dizi değişkenlerde ki değişkenlere depoluyor.Bu işin daha kolay bir yöntemi var.Bu yönteme ilerde değineceğiz.
Şimdi tablomuzdan istediğimiz bir değişkenin satırında bulunan değerleri okutacağız.Bu örnek yukardaki örnekten daha basit bir uygulamadır.


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<?
mysql_connect
(&#8220;localhost”,”root”) or die (“MySQL’e bağlanamadım”);
mysql_select_db(&#8220;deneme2″) or die (“MySQL’de veritabanını bulamadım”);
$tablo=&#8220;SELECT * FROM liste WHERE username=’$kullanici_adi‘ and sifre=’$parola‘”;
$sorgu=mysql_query($tablo);
$degiskenler = array (
1=> @mysql_result($sorgu$sayac, &#8220;ad”),
2=> @mysql_result($sorgu$sayac, &#8220;soyad”),
3=> @mysql_result($sorgu$sayac, &#8220;username”),
4=> @mysql_result($sorgu$sayac, &#8220;sifre”),
5=> @mysql_result($sorgu$sayac, &#8220;mail”)
);
if(
$degiskenler[3]==&#8220;$kullanici_adi” && $degiskenler[4]==“$parola“){
print &#8220;Şu anda şifreli alandasınız.”;
}
else{
print &
#8220;Kullanıcı adı veya şifreniz yanlış”;
}
?>


Burada tablo değişkeninde MySQL’e username ve sifre alanlarının ikisininde doğru olması durumunda o girilen satırın değişkenlerini bize veriyor.Yani bu programa bir form eklerseniz ve bu formda iki değişkenli bir login sayfası yaparsanız girdiğiniz değerler eğer MySQL’de varsa şifreli alana girilecek.Aksi durumda program hata verecektir.Birde burada bişeyi daha belirtmekte yarar olduğunu düşünüyorum.MySQL’e gönderilen sorgudan dönene sonuçları mysql_reslt() komutu ile alıyoruz.Bu komut, özellikle sorgu dönmediğinde browsera hata mesajı veriyor.Dolayısıyla bu hata mesajının ziyaretçilerimize gözükmesini istemeyiz.Onun için bu komutun başına @ işareti koyuyoruz.Önceden açıkladığımız gibi bu @ işareti program hata verirse browsera hata numarasını çıkarmıyor.
MySQL’de kullanmamızda yarar olduğunu düşündüğüm mysql_close() komutu vardır.Bu komut MySQL’e sağlamış olduğumuz bağlantıyı keser.PHP ile MySQL’e veritabanı açmamız, tablo oluşturmamızda mümkün.Veritabanı açmamız için gerekli olan kod mysql_create_db() bu komutu MySQL’ bağlandıktan sonra hemen kullanarak yapabilirsiniz.Tabi bunun içerisinede tırnak içerisinde veritabanımızın adını yazmamız gerekiyor.Tablo oluşturmak içinde mysql_query() komutu işimizi görür.Şimdi örnek bir uygulama ile işimize devam edelim.


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<?
mysql_connect
(&#8220;localhost”,”root”) or die (“MySQL’e bağlanamadım”);
$tablo= &#8220;CREATE TABLE tablo(
no int(10unsigned NOT NULL auto_increment,
adi varchar(12NOT NULL default &#8221;,
soyadi varchar(12NOT NULL default &#8221;,
tel_no int(11NOT NULL default &#8216;0′,
KEY no (no)
)&
#8221;;
switch ($veri){
case &
#8220;veritabani”;
if(mysql_create_db(&#8220;deneme3″)){
print &#8220;Veritabnı yaratıldı.Şimdi tabloyuda oluşturmak için <a href=’?veri=tablo_olustur’>tıklayın.</a>”;
}else{
print &
#8220;Veritabanı yaratılamadı.”;
}
break;
case &
#8220;tablo_olustur”;
@mysql_select_db(&#8220;deneme3″);
if(mysql_query($tablo)){
print &
#8220;Tablonuzda yaratıldı”;
}else{
print &
#8220;Tablo yaratılamadı”;
}
break;
default:
print &
#8221;
<form action=&#8217;?veri=veritabani’ method=’post’>
<input type=&#8217;submit’ value=’Veritabanını Oluştur’>
</form>&#8221;;
}
?>


Bu scripti kaydedip adım adım ilerlediğinizde deneme3 adında bir veritabanı yaratıyor.İçerisinede tablo adında bir de tablo yerleştiriyor.
Önce MySQL’e bağlanıyoruz.Daha sonra yapacağımız tablonun kodunu tablo değişkenine giriyoruz.Bu tablo kodunda bilmediğimiz bir unsuru açıklayayım.Dikkat ettiyseniz en başta unsigned not null auto_increment ve sonunda KEY no (no) yazısı var.Bu MySQL’e girilen satırları saydırmaya yarar.Yani no diye bir sutun oluşturuyoruz ve MySQL’e her girilen bilgide 1 2 3 diye tabloda kaç adet veri girildiğiniz gösterir.MySQL’den veri silersenizde o eski verileride sayar.Daha sonra bir switch deyimi ile en sonda bir form butonu koyuyoruz.Veritabanı oluşması için if deyimi ile yararlanıyoruz.Eğer veritabanı oluştu ise diğer aşamaya geçmek için bir linki tıklıyoruz.Bu linkin gösterdiği adreste il önce oluşturduğumuz veritabanına bağlanıyoruz sonra da bir if deyimi ile tablonun oluşturulup oluşturulmadığını sınıyoruz.
İlk örneğimizin hız açısından yanlış hazırlanmış bir örnek olduğunu söylemiştik.Ama bu sizin bu konuyu kavramız açısından güzel bir örnekti.Gerçi bu hız farkını öyle 300 – 500 satırlık bilgi çekerken fazla belirli olmaz.ancak 5000 ve üzeri bilgi çekmelerde hız farkı gözle gürülebilir.Ama siz yinede hızlı çalışan örneklerden yararlanın.


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<?
mysql_connect
(&#8220;localhost”,”root”) or die (“MySQL’e bağlanamadım”);
mysql_select_db(&#8220;deneme2″) or die (“MySQL’de veritabanını bulamadım”);
$tablo=&#8220;SELECT * FROM liste “;
$sorgu=mysql_query($tablo);
print &
#8220;<table align=\”center\” border=\”1\”>
<tr>
<
td>Adı:</td><td>Soyadı</td><td>username</td><td>sifre</td><td>mail</td>
</
tr>&#8221;;
while ($degiskenler mysql_fetch_row($sorgu)):
print &
#8220;<tr> <td>$degiskenler[0]</td><td>$degiskenler[1]</td>
<td>$degiskenler[2]</td><td>$degiskenler[3]</td>
<
td>$degiskenler[4]</td>
</
tr>&#8221;;
endwhile;
print &
#8220;</table>”;
?>

Bu örneği gördüğünüz gibi ilk örnekten daha kısa ve daha anlaşılırlı.Yine MySQL’e bağlanıyoruz ve hangi veritabanında işlem yapacağımızı gösteriyoruz.Daha sonra tablo değişkeninde tablonun hepsini işaretliyoruz.Sonrada sorgu değişkeniyle MySQL’e sorgu gönderiyoruz.Daha donra tablomuzun açıklama satırını yapıyoruz.Bundan sonra bir döngü ile mysql_fetch_row() komutu ile tablodaki değişkenlei bir dizi değişkenine depoluyoruz.Gördüğünüz gibi tektek mysql_result() komutu ile sorgulamadık.Burada mysql_fetch_row() komutu tabloda bulunan değerleri verdiğiniz izin gereğince dizi değişkenlere aktarır.Burada biz bu komutun yerine mysql_fetch_array() komutunuda kullanabilirdik.İki komutda aynı görevi görür.MySQL’den verileri listeleme işi için PHP 4.03 versiyonundan sonra bazı ek komutlar geliştirdi.Bunlardan biride mysql_fetch_assoc() komutudur.Şimdi bu işi birde bu komutla gerçekleştirelim.


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<?php
mysql_connect 
(&#8220;mehmet”,”root”);
$result mysql_db_query (&#8220;deneme2″,”select * from liste”);
print &#8220;<table align=\”center\” border=\”1\”>
<tr>
<
td>Adı:</td><td>Soyadı</td><td>username</td><td>sifre</td><td>mail</td>
</
tr>&#8221;;
while ($degiskenlermysql_fetch_assoc ($result)) {
print &
#8220;<tr> <td>$degiskenler[ad]</td><td>$degiskenler[soyad]</td>
<td>$degiskenler[username]</td><td>$degiskenler[sifre]</td>
<
td>$degiskenler[mail]</td>
</
tr>&#8221;;
}
mysql_free_result ($result);
?>

Burada bilmediğimiz komutların ilki mysql_db_query() komutu tıpkı mysql_query() komutu gibi MySQL’e sorgu gönderir.Ama bundaki fark mysql_select_db() komutunu kullanmadan direkt olarak önce veritabanımızın adını giriyoruz sonrada MySQL komut satırını giriyoruz.While döngüsünde ise mysql_fetch_assoc() komutunu kullandık.Bu komut diğer dizi değişkenlerinden farkı dizi değişkenlerini sıralarken numaralandırma kullanmıyorda direkt sutun adlarını kullanıyor.Döngüden hemen sonra mysql_free_result() komutunu kullanmamızın nedeni hafızaya toplanan dizi değişkenlerini hafızadan boşaltmaktır.Bu komutu yukardada kullanmanızda fayda vardır.Tabi bu değişkenleri aynı sayfada bir yerlerde kullanmayacaksanız.

İyi calismalar...
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

 
Alıntı ile Cevapla

Cevapla

Etiketler
bağlanirken, komutlar, kullandiği, mysqle, phpnin


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
MySQL Nedir ve MySQL C++ Builder Bağlantısı Nasıl Yapılır Swat MySQL 0 01 Temmuz 2014 12:59
tuning-primer.sh mysql tuning scripti - mysql performans raporu CeSaRCripS MySQL 0 16 Aralık 2012 15:11
PHP'nin MySQL'e Bağlanırken Kullandığı Komutlar Desmont PHP 0 15 Ocak 2012 14:54