Rumah > pembangunan bahagian belakang > tutorial php > Mengapa Pengambilan MySQL Melemparkan Ralat 'Kegagalan Jangkaan Sumber'?

Mengapa Pengambilan MySQL Melemparkan Ralat 'Kegagalan Jangkaan Sumber'?

DDD
Lepaskan: 2024-12-27 21:16:10
asal
308 orang telah melayarinya

Why Does MySQL Fetching Throw a

Ralat Dilemparkan: Kegagalan Jangkaan Sumber

Apabila cuba mengakses data daripada jadual MySQL, anda mungkin menghadapi ralat yang berbunyi: "mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows dll... menjangkakan parameter 1 sebagai sumber, boolean diberikan."

Penjelasan

>

Ralat ini dicetuskan apabila pertanyaan MySQL gagal, selalunya disebabkan oleh sintaks yang salah, ralat logik, medan hilang atau isu sambungan pangkalan data. Akibatnya, pembolehubah $result yang diberikan daripada fungsi mysql_query() mengembalikan false.

Penyelesaian

Untuk menyelesaikan ralat ini, anda mesti menyemak sama ada pembolehubah $result adalah palsu sebelum cuba melakukan sebarang operasi selanjutnya. Dokumentasi fungsi mysql_query() menyediakan butiran tentang nilai pulangan yang mungkin dan mencadangkan langkah untuk mengendalikan kegagalan.

Untuk sambungan mysql_, gunakan mysql_error() untuk mendapatkan butiran ralat dan mencetuskan mesej ralat yang sesuai menggunakan trigger_error(). Kod yang disemak berikut termasuk pengendalian ralat:

$username = mysql_real_escape_string($_POST['username']);
$password = $_POST['password'];
$result = mysql_query("SELECT * FROM Users WHERE UserName LIKE '$username'");

if ($result === FALSE) {
    trigger_error(mysql_error(), E_USER_ERROR);
}

while ($row = mysql_fetch_array($result)) {
    echo $row['FirstName'];
}
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa Pengambilan MySQL Melemparkan Ralat 'Kegagalan Jangkaan Sumber'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan