Pembaruan wajib :karena mysql ext tidak ada lagi, berikut adalah jawaban untuk dua API MySQL yang tersisa yang saya tulis di situs saya berdasarkan pengalaman menjawab 1000 pertanyaan di Stack Overflow:
- Cara melaporkan kesalahan di mysqli
- Cara menyambungkan ke MySQL menggunakan PDO (dengan tujuan pelaporan kesalahan yang tepat).
Singkatnya, untuk mysqi baris berikut harus ditambahkan sebelum mysqli_connect()
hubungi:
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
sedangkan untuk PDO mode kesalahan yang tepat harus diatur, misalnya
$pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
Pada ext mysql lama,
Untuk mendapatkan kesalahan dari mysql_query()
anda harus menggunakan mysql_error()
function.
Jadi selalu jalankan semua kueri Anda dengan cara ini, setidaknya sampai Anda mengembangkan penangan kueri yang lebih canggih:
$query = "SELECT * FROM 'users'";
$result = mysql_query($query) or trigger_error(mysql_error()." ".$query);
masalah dengan kueri Anda saat ini adalah 'users'
bagian. Tanda kutip tunggal harus digunakan untuk membatasi string sedangkan untuk pengidentifikasi Anda harus menggunakan backticks:
SELECT * FROM `users`
Untuk melihat kesalahan ini selama pengembangan, tambahkan baris ini di bagian atas kode Anda untuk memastikan Anda dapat melihat setiap kesalahan yang terjadi
ini_set('display_errors',1);
error_reporting(E_ALL);
di server produksi, namun, nilai pada baris pertama harus diubah dari 1 menjadi 0