Plazma sayı 5, sayfa 54
Sayfanın metni

Sayfa 54

Yukarıdaki örnekte biz yalnızca ilk 3 parametreyi kullandık. Siz kendi test ortamınıza göre MySQL sunucusunun Host ya da IP'sini, yetkili kullanıcı ismini ve şifreyi değiştirmelisiniz. Eğer MySQL, PHP ile aynı bilgisayara kurulmuş ise mysql_connect'in ilk parametresi olarak localhost ya da IP'yi girebilirsiniz ("localhost" ya da "127.0.0.1"). MySQL başka bir bilgisayarda kurulu ise o bilgisayarın networkdeki ismi ya da IP'sini girmeniz gerekmektedir.

Kullanıcı adı/şifre ile ilgili karşılaşabileceğiniz en temel problem, MySQL sunucusunun PHP ile aynı bilgisayarda kurulu olmaması durumunda geçerli bir kullanıcı adı/şifre bilgisiyle bağlantı kurulamamasıdır. Büyük olasılıkla problem söz konusu kullanıcının yalnızca lokal yetkisinin oluşu, uzaktan bağlantılara izin vermeyişidir. Bu durumda MySQL üzerinde yetkili bir kullanıcı yaratmanız ve bu kullanıcıya uzaktan erişim için izin vermeniz gerekir. Bu işlem için PHPMyAdmin ya da MySQL'in kendi araçlarından birini kullanmanızı öneririm.

Bir diğer önemli nokta ise PHP ve MySQL versiyonlarınızın uyumluluğudur. Eğer PHP 5 kullanıyor ve çok eski bir MySQL sürümü kullanıyorsanız PHP'nin mysql eklentisi eski veritabanlarına erişemeyebilir. Geçmişe yönelik uyumluluk açısından PHP 5 ile birlikte "mysqli" isimli bir eklenti gelmiştir. Kullanım olarak hemen hemen aynıdır. php.ini dosyasından "php_mysql" eklentisini kapatıp "php_mysqli" eklentisini açmanız ve "mysql_" şeklinde kullandığınız tüm komutları "mysqli_" şeklinde kullanmanız gerekmektedir. Fakat benim tavsiyem, çok geçerli bir nedeniniz olmadığı sürece güncel bir MySQL versiyonu kullanmanızdan yanadır.

select dbi)

Bu komut mysql_connect komutundan sonra kullanılmalıdır. Eğer MySQL ile başarılı bir bağlantı kurulmuşsa bu durumda mysql_select_db ile MySQL üzerinde yer alan herhangi bir veritabanına erişim sağlanabilir. Bu örnekte MySQL'in içinde hazır gelen "mysql" veritabanını kullandık. Siz kendi veritabanlarınızdan biriyle de test edebilirsiniz.

mysql_select_db'den dönen sonuç boolean bir değerdir, yani true/false şeklindedir. Ancak bu örneklerde "or die" kullandığımız için dönen değerin false olma ihtimalini kontrol etmeye gerek yok. Herhangi bir problem çıkması halinde "die" komutunda yazdığımız mesaj ekrana yazılacak ve PHP scriptinin çalışması o noktada sona erecektir.

mysql_select_db 2 parametre alır. İlk parametre mecburi, ikincisi opsiyoneldir. Veritabanı ismi: MySQL üzerinde bağlanılmak istenen veritabanının ismi. Bağlantı numarası: mysql_connect komutundan dönen numara.

Tek bir bağlantı olduğu taktirde ikinci parametre kullanılmadan da istenilen veritabanına bağlanılabilir.

mysal gueryl)

MySQL'e bir sorgu gönderir. Bu komutu kullanabilmek için yalnızca MySQL'e bağlı olmak yeterlidir. Henüz bir veritabanı seçmemiş bile olsanız gönderebileceğiniz sorgular mevcuttur (örnek sorgu: SHOW DATABASES).

query bir tablo döndürür. Bu tablonun kaça kaç boyutunda olacağı sorguya göre değişir. Tablo tek bir hücreden oluşabileceği gibi binlerce/milyonlarca kolon ve satırdan da oluşabilir.

mysql_query 2 parametre alır. İlk parametre mecburi, ikincisi opsiyoneldir.

Sorgu: MySQL sunucusuna gönderilecek SQL cümlesi.

Bağlantı numarası: mysql_connect komutundan dönen numara.

Bu komuttan dönen tablonun hücrelerine erişmek için tablo üzerinde satır satır dolaşmak ve her satırdan dönecek kolon dizilerinden hücre değerlerini okumak gerekir.

mysql_num_fields() Bu komut tabloda yer alan toplam kolon sayısını döndürür.

mysql_num_fields tek (mecburi) parametre alır.

Tablo: mysql_query'den dönen tablo.

mysql_field_name()

Tablonun kolonlarının başlıkları bu komut ile okunur. Örnek olarak veritabanında isim, soyad, şirket, telefon kolonlarından oluşan bir tablo var ise bu komut ile bu başlıkları okumamız mümkündür.

mysql_field_name komutundan text biçiminde kolon ismi döner.

mysql_field_name 2 mecburi parametre alır.

Tablo: mysql_query'den dönen tablo.

Kolon numarası: 0'dan başlayarak kaçıncı kolonun ismini döndüreceği.

Kolon numarası örnek olarak 4 kolonlu bir tablo için 0-3 aralığındadır.

mysql_fetch_array()

Bu komutun görevi, tablonun satırları üzerinde ilerleyerek satır içeriklerini bir dizi halinde döndürmektir. Bu komutun bir diğer özelliği bir satırı okuduktan sonra otomatik olarak bir sonraki satıra atlamasıdır. Bu komut peş peşe çağrılarak tüm satırlar okunabilir.

Klavyeyle gezinmek için ← ve → tuşları.