Php 错误表示它给出了布尔值

Php 错误表示它给出了布尔值,php,mysql,phpmyadmin,Php,Mysql,Phpmyadmin,我在$count部分得到一个错误,用于验证数据是否存在, 上面说 它返回布尔值 但我不明白为什么。我已经在哪一行写了一条注释,错误在哪里 $check = mysql_fetch_array(mysql_query("SELECT * FROM `request` WHERE `Request_ID`=''")); $count = mysql_num_rows($check); // error is here if($count > 0){

我在
$count
部分得到一个错误,用于验证数据是否存在, 上面说

它返回布尔值

但我不明白为什么。我已经在哪一行写了一条注释,错误在哪里

    $check = mysql_fetch_array(mysql_query("SELECT * FROM `request` WHERE `Request_ID`=''"));
    $count = mysql_num_rows($check); // error is here 

    if($count > 0){
        ?>
        <script>
            alert('Data Already Exist!');
        </script>
        <?php

    }else{
    mysql_query("INSERT INTO `request` (`Request_Name`, `Request_Date`, `Request_By`,`Description`,`Quantity`, `Price`, `Destination`,`Reason`) VALUES ('$name', '$date', '$req','$desc','$qty','$prc','$dest','$reason',)");
    ?>
    <script>
        window.location = "home.php#requi.php";
    </script>
    <?php
    }
$check=mysql\u fetch\u数组(mysql\u查询(“SELECT*FROM`request`WHERE`request\u ID`='');
$count=mysql_num_行($check);//错误就在这里
如果($count>0){
?>
警报('数据已存在!');

尝试使用
mysql\u num\u rows()
替换
mysql\u fetch\u array()


检查引用。

您只能对结果obejct调用
mysql\u num\u rows
。 如果要获取结果的num行,必须使用以下代码:

$check = mysql_query("SELECT * FROM `request` WHERE `Request_ID`=''");
$count = mysql_num_rows($check); // error should be gone

//Optional:
while($data = mysql_fetch_array($check, MYSQLI_ASSOC))
{
    $result[] = $data;//To get all rows, one by one
}
另一方面,我建议您使用mysql,改用,如果您需要帮助,我将很乐意进一步帮助您。

mysql\u fetch\u array:

Returns an array of strings that corresponds to the fetched row, or FALSE if there are no more rows.

我猜它返回false。这就是为什么会出现错误。

你能给我们提供var\u dump($check,$count)
的输出吗?你能分享你更新的代码吗?如果仍然不起作用吗?嗨,Leah,你需要在你的查询中为Request\u ID提供一些值$check=mysql\u fetch\u数组(mysql\u query(“从
request
中选择*其中
request_ID
='someid'”;