MySQL aramalar PHP hata iletileri ortadan kaldırmak için nasıl?

5 Cevap
$conn = mysql_connect('localhost', 'root', 'xyvz5j');
mysql_select_db('rata2', $conn);

(Bir MySQL hata varsa) "bağlanamadı" falan gibi çöp bir sürü baskı yapmaz ki ben bu yüzden nasıl yapabilirim?

5 Cevap

Bir başkası "bilgilendirici" hata iletisi bir kişinin "çöp" :)

I not @ onları bastırmak yerine üretim sunucu hiç hata iletileri görüntülemek değil yapılandırılmış öneriyoruz. Onları periyodik incelenmek üzere bir dosyaya gitmek olabilir. Ancak, hazırlama / geliştirme sistemleri çıkış everything, hatalar, uyarılar, bildirimler, sürü ayarlanmış olmalıdır.

Ayrıntılar için error_reporting yapılandırma yönergesine bakınız.

Aramalar önünde sembolü bir koyun.

$conn = @mysql_connect('localhost', 'root', 'xyvz5j');
@mysql_select_db('rata2', $conn);

Sadece mysql_connect kullanmadan önce iade ne değer kontrol edin:

$conn = mysql_connect('localhost', 'root', 'xyvz5j');
if (!is_resource($conn)) {
    // error
} else {
    mysql_select_db('rata2', $conn);
}

Ancak, bir bağlantı başarısız uyarı mysql_connect, bu şekilde önlenemez. Ancak display_errors bir hata gösterilmez, böylece devre dışı bırakabilirsiniz.

@ Sembolü tamamen hataları azaltırlar, ama bir şey yanlış olduğunu yazdırmak istiyorsanız, bunu yapacağız:

$conn = mysql_connect('localhost', 'root', 'xyvz5j') or die("Connection to MySQL failed");
mysql_select_db('rata2', $conn) or die("MySQL database not found");

Gelişmekte zaman çirkin, üretim kodu 0 bir error_reporting seviyesi. Zorunlu ayarlayabilirsiniz. Bu nedenle her iki ortam için ayrı değerlere sahiptir.