PHP MySQL Fonksiyonları

PHP MySQL Tanıtımı

MySQL fonksiyonları, MySQL veritabanı sunucusuna erişmenizi sağlar.

Kurulum

Bu sınıf fonksiyonlarını sorunsuz bir şekilde kullanabilmek için, PHP'yi derlerken MySQL desteğini eklemek zorundasınız.

Derleme sırasında sadece --with-mysql[=DIR] yapılandırma seçeneğini kullanmanız yeterlidir, burada seçmeli [DIR], MySQL'in kurulum dizinini belirtir.

Bu MySQL eklenti kütüphanesi MySQL 4.1.0 ve sonraki sürümlerle uyumludur, ancak bu sürümler tarafından sağlanan ek işlevleri desteklemez. Bu işlevleri kullanmak için MySQLi eklenti kütüphanesini kullanmanız gerekmektedir.

mysql eklenti kütüphanesi ve mysqli eklenti kütüphanesini aynı anda kurmak istiyorsanız, herhangi bir çatışmayı önlemek için aynı istemci kütüphanesini kullanmanız gerekmektedir.

Linux sistemine kurulum

PHP 4

Öntanımlı olarak --with-mysql seçeneği etkinleştirilmiştir. Bu öntanımlı davranışı engellemek için --without-mysql yapılandırma seçeneğini kullanabilirsiniz. MySQL'i etkinleştirirseniz ve kurulum dizinini belirtmezseniz, PHP bağlı MySQL istemci bağlantı kütüphanesini kullanacaktır.

MySQL'i (örneğin auth-mysql) kullanan diğer uygulamaların kullanıcıları, bağlantılı kütüphaneyi kullanmamalı, aksine MySQL'in kurulum dizinini belirtmelidir: --with-mysql=/path/to/mysql. Bu, PHP'nin MySQL ile birlikte kurulan istemci bağlantı kütüphanesini kullanmasını zorunlu kılar ve herhangi bir çatışmayı önler.

PHP 5+

MySQL öntanımlı olarak etkinleştirilmemiştir ve bağlantılı MySQL kütüphanesi yoktur. MySQL desteğini eklemek için --with-mysql[=DIR] yapılandırma seçeneğini kullanın. MySQL'in indirilebileceği bir yerden, --with-mysql=/path/to/mysql gibi bir şekilde MySQL'in kurulum dizinini belirtmek gerekebilir. Bu, PHP'nin MySQL ile birlikte kurulan istemci bağlantı kütüphanesini kullanmasını zorunlu kılar ve herhangi bir çatışmayı önler. MySQL Başlık dosyalarını ve kütüphaneleri indirin.

Windows sistemine kurulum

PHP 4

PHP MySQL eklentisi PHP'ye derlemiş durumdadır.

PHP 5+

MySQL öntanımlı olarak etkinleştirilmemiştir, bu yüzden php.ini dosyasında php_mysql.dll dinamik bağlantı kütüphanesini etkinleştirmek zorundasınız. Ayrıca, PHP'nin MySQL istemci bağlantı kütüphanesine erişmesi gerekmektedir. PHP'nin Windows sürümleri libmysql.dll dosyasını içerir, PHP'nin MySQL ile konuşabilmesi için bu dosya Windows'un sistem yolu PATH'inde bulunmalıdır.

Herhangi bir PHP eklenti kütüphanesini (örneğin php_mysql.dll) etkinleştirmek için, PHP komut extension_dir PHP eklenti kütüphanesinin bulunduğu dizine ayarlanmalıdır. PHP 5'te extension_dir değerinin bir örneği c:\php\ext olabilir.

Yorum:Web sunucusunu başlatırken aşağıdaki gibi hatalar alıyorsanız: "Unable to load dynamic library './php_mysql.dll'" bu, sistem php_mysql.dll ve / veya libmysql.dll'yi bulamadığı için olmaktadır.

Çalışma zamanı yapılandırması

MySQL fonksiyonlarının davranışı php.ini ayarlarına bağlıdır.

MySQL yapılandırma seçenekleri:

Ad Varsayılan Açıklama Değiştirilebilir
mysql.allow_persistent "1" MySQL'in kalıcı bağlantılarına izin verilip verilmediği. PHP_INI_SYSTEM
mysql.max_persistent "-1" Her bir sürecin en fazla kalıcı bağlantı sayısı. PHP_INI_SYSTEM
mysql.max_links "-1" Her bir sürecin en fazla bağlantı sayısı, kalıcı bağlantılar dahil. PHP_INI_SYSTEM
mysql.trace_mode "0" Takip modu. PHP 4.3.0'dan itibaren kullanılabilir. PHP_INI_ALL
mysql.default_port NULL Varsayılan bağlantı veritabanı için TCP port numarasını belirtir. PHP_INI_ALL
mysql.default_socket NULL Varsayılan soket adı. PHP 4.0.1'den itibaren kullanılabilir. PHP_INI_ALL
mysql.default_host NULL Varsayılan sunucu adresi. SQL güvenlik modunda kullanılmaz. PHP_INI_ALL
mysql.default_user NULL Varsayılan olarak kullanılan kullanıcı adı. SQL güvenlik modunda kullanılmaz. PHP_INI_ALL
mysql.default_password NULL Varsayılan olarak kullanılan şifre. SQL güvenlik modunda kullanılmaz. PHP_INI_ALL
mysql.connect_timeout "60" Bağlantı zaman aşımı saniyesi. PHP_INI_ALL

Kaynak türü

MySQL modülünde iki kaynak türü kullanılmıştır. İlk tür veritabanı bağlantı cümlenidir, ikinci tür ise SQL sorgusu dönen sonuç kümesidir.

PHP MySQL Fonksiyonları

PHP:Bu fonksiyonu destekleyen en eski PHP sürümünü belirtir.

fonksiyon Açıklama PHP
mysql_affected_rows() Son MySQL operasyonunun etkilediği kayıt satır sayısını alır. 3
mysql_change_user() Kabul edilmiyor. Geçerli bağlantıdaki oturum açılmış kullanıcıyı değiştirin. 3
mysql_client_encoding() Geçerli bağlantının karakter setinin adını döndürür. 4
mysql_close() Kalıcı olmayan MySQL bağlantısını kapatır. 3
mysql_connect() Kalıcı olmayan MySQL bağlantısını açar. 3
mysql_create_db() Kabul edilmiyor. Yeni bir MySQL veritabanı oluşturun. mysql_query ile değiştirin. 3
mysql_data_seek() Kayıt işaretçisini hareket ettirir. 3
mysql_db_name() mysql_list_dbs() çağrısından veritabanı adlarını döndürür. 3
mysql_db_query()

Kabul edilmiyor. Bir MySQL sorgusu gönderin.

mysql_select_db() ve mysql_query() ile değiştirin.

3
mysql_drop_db()

Kabul edilmiyor. Bir MySQL veritabanını atın (silin).

mysql_query() ile değiştirin.

3
mysql_errno() Son MySQL operasyonundaki hata mesajının sayısal kodunu döndürür. 3
mysql_error() Son MySQL operasyonunun oluşturduğu metin hata mesajını döndürür. 3
mysql_escape_string()

Kabul edilmiyor. mysql_query için bir dizeyi yuvarlayın.

mysql_real_escape_string() ile değiştirin.

4
mysql_fetch_array() Sonuç kümesinden bir satırı ilişkili dizisi, sayı dizisi veya her ikisini birden olarak alır. 3
mysql_fetch_assoc() Sonuç kümesinden bir satırı ilişkili dizisi olarak alır. 4
mysql_fetch_field() Sütun bilgilerini sonuç kümesinden alır ve nesne olarak döndürür. 3
mysql_fetch_lengths() Sonuç kümesinde her bir alanın içeriğinin uzunluğunu alır. 3
mysql_fetch_object() Sonuç kümesinden bir satırı nesne olarak alır. 3
mysql_fetch_row() Sonuç kümesinden bir satırı sayı dizisi olarak alır. 3
mysql_field_flags() Sonuçtan belirtilen alanla ilişkili bayrakları alır. 3
mysql_field_len() Belirtilen alanın uzunluğunu döndürür. 3
mysql_field_name() Sonuçta belirli bir alanın alan adını alın. 3
mysql_field_seek() Sonuç kümesindeki işaretçiyi belirli bir alan kaydırımına ayarlayın. 3
mysql_field_table() Belirli bir alanın bulunduğu tablo adını alın. 3
mysql_field_type() Sonuç kümesinde belirli bir alanın türünü alın. 3
mysql_free_result() Sonuç belleğini serbest bırakın. 3
mysql_get_client_info() MySQL istemci bilgilerini alın. 4
mysql_get_host_info() MySQL ana bilgisayar bilgilerini alın. 4
mysql_get_proto_info() MySQL protokol bilgilerini alın. 4
mysql_get_server_info() MySQL sunucusu bilgilerini alın. 4
mysql_info() En son sorgunun bilgilerini alın. 4
mysql_insert_id() Önceki INSERT işleminden oluşan ID'yi alın. 3
mysql_list_dbs() MySQL sunucusundaki tüm veritabanlarını listeyin. 3
mysql_list_fields()

Reddedil. MySQL sonuçlarındaki alanları listeyin.

mysql_query() ile değiştirin.

3
mysql_list_processes() MySQL süreçlerini listeyin. 4
mysql_list_tables()

Reddedil. MySQL veritabanındaki tabloları listeyin.

Use mysql_query() ile değiştirin.

3
mysql_num_fields() Sonuç kümesinde alan sayısını alın. 3
mysql_num_rows() Sonuç kümesinde satır sayısını alın. 3
mysql_pconnect() MySQL sunucusuna bir kalıcı bağlantı açın. 3
mysql_ping() Bir sunucu bağlantısını Pingleyin, bağlantı yoksa yeniden bağlanın. 4
mysql_query() Bir MySQL sorgusu gönderin. 3
mysql_real_escape_string() SQL cümlesinde kullanılan karakterlerin özel karakterlerini yuvarlayın. 4
mysql_result() Sonuç verilerini alın. 3
mysql_select_db() MySQL veritabanını seçin. 3
mysql_stat() Mevcut sistem durumunu alın. 4
mysql_tablename() Reddedil. Tablo adını alın. mysql_query() ile değiştirin. 3
mysql_thread_id() Mevcut iş parçacığının ID'sini döndürür. 4
mysql_unbuffered_query() MySQL'e bir SQL sorgusu gönder (sonuçları almak / önbelleklemez). 4

PHP MySQL Sabitleri

PHP 4.3.0'dan sonraki sürümlerde, mysql_connect() fonksiyonu ve mysql_pconnect() fonksiyonunda daha fazla istemci etiketi belirtilmesine izin verilir:

PHP:Bu sabiti destekleyen en eski PHP sürümünü belirtir.

Sabit Açıklama PHP
MYSQL_CLIENT_COMPRESS Sıkıştırılmış iletişim protokolü kullanır. 4.3
MYSQL_CLIENT_IGNORE_SPACE Fonksiyon adı sonrası boşluk bırakmaya izin verir. 4.3
MYSQL_CLIENT_INTERACTIVE Bağlantıyı kapatmadan önce izin verilen etkileşim süresi süresiz bekleme süresi. 4.3
MYSQL_CLIENT_SSL SSL ile şifreleme kullan (sadece MySQL istemci kütüphanesi sürümü 4+ olduğunda kullanılabilir). 4.3

mysql_fetch_array() fonksiyonu, döndürülen dizinin türünü belirtmek için bir sabit kullanır:

Sabit Açıklama PHP
MYSQL_ASSOC Dönen veri sütunları, alan adı olarak dizinin adlarını kullanır.  
MYSQL_BOTH Dönen veri sütunları, alan adı ve sayısal indeks olarak dizinin adlarını kullanır.  
MYSQL_NUM

Dönen veri sütunları, sayısal indeks olarak dizinin adlarını kullanır.

Dizinin 0'dan başladığı, döndürdüğü sonuçların ilk alanını gösterir.