【问题标题】:mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean with mysqli [duplicate]mysqli_num_rows() 期望参数 1 为 mysqli_result,mysqli 的布尔值 [重复]
【发布时间】:2018-11-06 00:08:46
【问题描述】:

我无法收到警告 sql 查询正在运行,mysqli_query() 返回 1,并且每次我的数据库也在更新。有什么问题?

警告:mysqli_num_rows() 期望参数 1 为 mysqli_result,布尔值在 C:\xampp\htdocs\qq\index.php 第 55 行给出

代码是

<?php
 try{
  $host="localhost";

 $user="deb";
 $password="12345";
 $database="1";
 $conn=mysqli_connect($host,$user,$password,$database);
 if (mysqli_connect_errno())
 {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
 }
 echo "connected succesfully";
   }catch(Exception $e){
 echo $e->getMessage();
 }
 $select=mysqli_select_db($conn,$database);
 if($select)
  {
  echo "yipee";
  }

echo "<table>
<thead>
<tr>
    <th>Id</th>
    <th>Value</th>
    <th>Threshold Value</th>
    <th>Chances of Fire</th>
</tr>
</thead>";
$val=$_GET["val"];

错误出现在这段代码中:

$tval=$_GET["tval"];
 if ($val<$tval) {
 $res="less ";
 }
else{$res="exreme ";}
$sql1="INSERT INTO sensor (val,tval,result) VALUES 
('".$val."','".$tval."','".$res."')"; 
 $que=mysqli_query($conn,$sql1);
 if($que)
  {
  if(mysqli_num_rows($que))
   {
    while ($data=mysqli_fetch_array($que))
     {
    echo "<tr>";
    echo "<td>".$data['id']."</td><td>".$data['val']."/td> 
       <td>".$data['tval']."</td><td>".$data['result']."</td>";
    echo"</tr>";
     }
   }

   else{
      echo "nooooooo";
        } 
      }     
      echo"</table>"
        ? >

即使我要删除 mysqli_num_rows,它的显示错误也会出现

【问题讨论】:

    标签: php mysqli


    【解决方案1】:

    根据另一个问题here

    INSERT 命令会返回一个布尔值(true/false),所以你必须使用 select 命令来获得所需的结果

    【讨论】:

      【解决方案2】:

      您收到的错误是因为 INSERT 查询失败,所以 mysqli_query() 返回 false 表示查询失败。一个成功的查询将返回一个 mysqli_result() 对象。检查 $sql1 的内容是否有语法错误。

      您可以在插入查询之后使用 mysqli_error() 来获取 MySQL 返回的错误。

      顺便说一句,您很容易受到 SQL 注入攻击! $tval 的值直接来自用户,没有任何尝试验证或清理它!您应该使用准备好的语句。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-05-15
        • 1970-01-01
        • 2013-07-17
        • 2013-03-04
        • 2014-02-27
        • 2012-07-06
        • 2013-06-02
        • 2013-11-08
        相关资源
        最近更新 更多