Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Amaran PHP: mysql_num_rows() menjangkakan parameter 1 sebagai penyelesaian sumber

Amaran PHP: mysql_num_rows() menjangkakan parameter 1 sebagai penyelesaian sumber

PHPz
PHPzasal
2023-06-23 09:04:42902semak imbas

Penyelesaian kepada Amaran PHP: mysql_num_rows() menjangkakan parameter 1 sebagai sumber

Apabila anda menulis kod dalam PHP, jika "Amaran PHP: mysql_num_rows() menjangkakan parameter 1 sebagai sumber" muncul Amaran ini menunjukkan bahawa parameter pertama fungsi mysql_num_rows() tidak ditetapkan dengan betul. Dalam artikel ini, kami akan membincangkan cara menyelesaikan masalah ini untuk memastikan kod PHP anda berjalan dengan betul.

Pertama, mari kita fahami fungsi mysql_num_rows(). Fungsi fungsi ini adalah untuk mengembalikan bilangan baris dalam set hasil pertanyaan. Ia memerlukan set hasil pertanyaan sebagai parameter pertama Jika parameter ini salah, amaran di atas akan muncul.

Terdapat banyak sebab yang mungkin untuk amaran ini Berikut adalah beberapa sebab biasa:

1.
2. Pertanyaan pangkalan data gagal.
3. Set hasil pertanyaan kosong.

Seterusnya, kami akan membincangkan satu persatu sebab ini dan memperkenalkan cara menyelesaikannya.

  1. Sambungan pangkalan data gagal

Amaran ini akan muncul jika anda tidak menyambung ke pangkalan data dengan betul sebelum menggunakan fungsi mysql_num_rows(). Untuk menyelesaikan isu ini, anda perlu memastikan anda menggunakan fungsi sambungan pangkalan data yang betul. Sebagai contoh, jika anda menggunakan pangkalan data MySQL, anda perlu menggunakan fungsi mysql_connect() untuk menyambung ke pangkalan data.

Berikut ialah contoh kod untuk menyambung ke pangkalan data MySQL:

$servername = "localhost"; // 数据库服务器名
$username = "用户名"; // 数据库用户名
$password = "密码"; // 数据库密码
$dbname = "数据库名"; // 数据库名

// 创建连接
$conn = mysql_connect($servername, $username, $password);

// 检查连接是否成功
if (!$conn) {
    die("连接失败: " . mysql_error());
}

// 选择数据库
mysql_select_db($dbname, $conn);
  1. Pertanyaan pangkalan data gagal

Jika pertanyaan pangkalan data anda gagal, ia juga akan menyebabkan fungsi mysql_num_rows( ) gagal. Untuk menyelesaikan masalah ini, anda perlu menyemak sama ada pernyataan pertanyaan anda betul dan sama ada anda mempunyai kebenaran yang mencukupi untuk mengakses jadual dalam pangkalan data.

Berikut ialah contoh kod untuk mysql_query() fungsi:

$sql = "SELECT * FROM users";
$result = mysql_query($sql, $conn);

if (!$result) {
    die("查询失败: " . mysql_error());
}

$num_rows = mysql_num_rows($result);

3 Set hasil pertanyaan kosong

Jika set hasil pertanyaan kosong, ia akan. juga menyebabkan mysql_num_rows() Fungsi gagal. Untuk menyelesaikan masalah ini, anda boleh menggunakan fungsi mysql_fetch_array() untuk menentukan sama ada mana-mana baris telah dikembalikan. Berikut ialah kod sampel untuk fungsi mysql_fetch_array():

$sql = "SELECT * FROM users";
$result = mysql_query($sql, $conn);

if (!$result) {
    die("查询失败: " . mysql_error());
}

$row = mysql_fetch_array($result);

if ($row) {
    $num_rows = mysql_num_rows($result);
} else {
    echo "没有结果";
}

Ringkasnya, apabila anda menggunakan fungsi mysql_num_rows(), jika "Amaran PHP: mysql_num_rows() menjangkakan parameter 1 menjadi sumber" muncul Amaran, mungkin sambungan pangkalan data anda gagal, pertanyaan gagal, atau set hasil pertanyaan kosong. Cara terbaik untuk menyelesaikan masalah ini ialah menyemak semula kod anda dan pastikan ia betul.

Atas ialah kandungan terperinci Amaran PHP: mysql_num_rows() menjangkakan parameter 1 sebagai penyelesaian sumber. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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