


Amaran PHP: mysql_num_rows() mengharapkan penyelesaian parameter
PHP ialah bahasa skrip sumber terbuka yang digunakan secara meluas digunakan untuk pembangunan web, di mana banyak aplikasi web (seperti WordPress) bergantung pada pangkalan data MySQL untuk menyimpan dan mendapatkan semula data. Walau bagaimanapun, apabila menggunakan fungsi mysql_num_rows(), kadangkala amaran berikut muncul:
PHP Amaran: mysql_num_rows() menjangkakan parameter 1 sebagai sumber, boolean diberikan dalam...
Dalam artikel ini, kita akan membincangkan isu ini Sebabnya dan bagaimana untuk memperbaikinya.
Apakah fungsi mysql_num_rows()? Fungsi
mysql_num_rows() digunakan untuk mendapatkan bilangan baris yang diambil daripada pertanyaan MySQL. Ia menerima sumber set hasil sebagai parameter dan mengembalikan bilangan baris atau palsu jika ralat berlaku. Berikut ialah contoh:
$result = mysql_query("SELECT * FROM mytable");
$num_rows = mysql_num_rows($result);
echo "Rows: ".$num_rows;
Ini akan mengembalikan keputusan yang diambil daripada jadual mytable Bilangan baris yang dicapai. Walau bagaimanapun, jika set hasil bukan sumber, amaran akan muncul:
PHP Amaran: mysql_num_rows() menjangkakan parameter 1 sebagai sumber, boolean diberikan dalam...
Mengapa amaran "boolean diberi" muncul?
Masalah ini biasanya disebabkan oleh kegagalan pertanyaan SQL. Apabila menggunakan fungsi mysql_query(), ia mungkin mengembalikan palsu, menunjukkan bahawa pertanyaan itu gagal. Jika kita menghantar hasil ini sebagai parameter kepada fungsi mysql_num_rows(), ia akan ditafsirkan sebagai nilai boolean dan bukannya sumber set hasil yang dijangkakan. Oleh itu, amaran "Amaran PHP: mysql_num_rows() menjangkakan parameter 1 sebagai sumber, boolean diberikan dalam ..." muncul pada konsol.
Bagaimana untuk menyelesaikan amaran "diberikan boolean"?
Untuk menyelesaikan masalah ini, kita perlu memastikan bahawa pertanyaan SQL berjaya sebelum menggunakan fungsi mysql_num_rows(). Kita boleh menyemak hasil fungsi mysql_query() seperti ini:
$result = mysql_query("SELECT * FROM mytable");
if($result){
$num_rows = mysql_num_rows($result);
echo "Rows: " .$num_rows;
}
Ini akan memastikan bahawa fungsi mysql_num_rows() hanya digunakan selepas pertanyaan berjaya dilaksanakan.
Cara lain ialah menggunakan sambungan MySQLi atau PDO (Objek Data PHP) untuk menyambung dan membuat pertanyaan pangkalan data MySQL. Sambungan MySQLi menyediakan kaedah yang lebih baik untuk mengakses pangkalan data MySQL, manakala PDO boleh digunakan untuk menyambung dan menanyakan jenis pangkalan data yang berbeza (seperti MySQL, PostgreSQL, SQLite).
Berikut ialah contoh menggunakan MySQLi:
$conn = mysqli_connect("localhost","username","password","dbname");
if (!$conn) {
die("Could not connect: " .mysqli_error($conn));
}
$result = mysqli_query($conn,"SELECT * FROM mytable");
if($result){
$num_rows = mysqli_num_rows($result);
echo "Rows : ".$num_rows;
}
Selain itu, PDO juga menyediakan kaedah akses pangkalan data yang mudah digunakan dan selamat:
$conn = new PDO("mysql:host=localhost;dbname=myDB","username" ,"kata laluan");
$result = $conn->query("SELECT * FROM mytable");
if($result){
$num_rows = $result->rowCount();
echo "Rows: ".$num_rows;
}
Summary
Amaran "boolean given" apabila menggunakan fungsi mysql_num_rows() biasanya disebabkan oleh pertanyaan SQL yang gagal. Untuk menyelesaikan masalah ini, kita perlu memastikan bahawa pertanyaan berjaya sebelum menggunakan fungsi mysql_num_rows(), atau menggunakan kaedah akses pangkalan data MySQL yang berbeza, seperti sambungan MySQLi atau PDO.
Atas ialah kandungan terperinci Amaran PHP: mysql_num_rows() mengharapkan penyelesaian parameter. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Dalam Php8, ungkapan perlawanan adalah struktur kawalan baru yang mengembalikan hasil yang berbeza berdasarkan nilai ungkapan. 1) Ia sama dengan pernyataan suis, tetapi mengembalikan nilai dan bukannya blok pernyataan pelaksanaan. 2) Ekspresi perlawanan secara ketat (===), yang meningkatkan keselamatan. 3) Ia mengelakkan kemungkinan ketinggalan dalam penyataan suis dan meningkatkan kesederhanaan dan kebolehbacaan kod.

Pengendali ... (Splat) dalam PHP digunakan untuk membongkar parameter fungsi dan tatasusunan, meningkatkan kesederhanaan dan kecekapan kod. 1) Parameter Fungsi Membongkar: Lulus elemen array sebagai parameter ke fungsi. 2) Array Unpacking: Buka array ke array lain atau sebagai parameter fungsi.

Bagaimana untuk mendapatkan data dinamik 58.com halaman kerja semasa merangkak? Semasa merangkak halaman kerja 58.com menggunakan alat crawler, anda mungkin menghadapi ...

Apabila bilangan elemen tidak ditetapkan, bagaimana untuk memilih elemen anak pertama nama kelas yang ditentukan melalui CSS. Semasa memproses struktur HTML, anda sering menghadapi unsur yang berbeza ...

Mengapa margin negatif tidak berkuatkuasa dalam beberapa kes? Semasa pengaturcaraan, margin negatif dalam CSS (negatif ...

Iconfont ...

Bagaimana menyelesaikan masalah paparan yang disebabkan oleh helaian gaya ejen pengguna? Apabila menggunakan penyemak imbas Edge, elemen Div dalam projek tidak dapat dipaparkan. Setelah memeriksa, saya menyiarkan ...

Mengapa margin negatif tidak berkuatkuasa dalam beberapa kes? Apabila menggunakan CSS ke laman web susun atur, anda sering menghadapi margin negatif (negatif ...
