【问题标题】:mysql_num_rows() expects parameter 1 to be resource for count row [duplicate]mysql_num_rows() 期望参数 1 是计数行的资源 [重复]
【发布时间】:2016-04-20 07:10:29
【问题描述】:

我得到一个错误 mysql_num_rows() 期望参数 1 是资源

这是我的代码

$carikomoditas = $_POST['cari'];
$cariquery=mysqli_query($connect,"
    SELECT * 
    FROM komoditassample
    WHERE id='$carikomoditas'
") or die('Error');

$data = mysqli_fetch_array($cariquery);
$res = mysql_num_rows($data);
echo $res;

我也试过mysqli num,但同样的错误

【问题讨论】:

  • 混音mysqli with mysql
  • $cariquery=mysqli_query($connect,"select* from komoditassample` where id='$carikomoditas'") or die(mysqli_error($connect));`

标签: php sql mysqli


【解决方案1】:

试试这个:

$carikomoditas=$_POST['cari'];
$cariquery=mysqli_query($connect,"select*from komoditassample where id='$carikomoditas'") or die('Error');
$res=mysqli_num_rows($cariquery); // result set

$data=mysqli_fetch_array($cariquery);

echo $res;

【讨论】:

    【解决方案2】:

    使用mysqli,参数应该是查询

    $carikomoditas = $_POST['cari'];
    $cariquery = mysqli_query($connect, "select * from komoditassample where id='$carikomoditas'") or die('Error');
    
    $data = mysqli_fetch_array($cariquery);
    $res  = mysqli_num_rows($cariquery);
    echo $res;
    

    已编辑:更详细

    $carikomoditas = isset($_POST['cari']) ? $_POST['cari'] : 0;
    
    if (!empty($carikomoditas))
    {
        $cariquery  = mysqli_query($connect, "select * from komoditassample where id='$carikomoditas'") or die('Error');
    
        $total_rows = mysqli_num_rows($cariquery);
    
        if ($total_rows > 0)
        {
            $data = mysqli_fetch_array($cariquery);
            /*
            Display the retrieved database content here
            */
        }
        else
        {
        echo 'No record found';
        }
    
    }
    else
    {
    echo 'Error: carikomoditas not valid';
    }
    

    【讨论】:

      【解决方案3】:

      这是正确的答案

      $carikomoditas=$_POST['cari'];
          //echo$carikomoditas;
          $cariquery=mysqli_query($connect,"select*from komoditassample where id='$carikomoditas'") or die('Errorororor');
          $res=mysqli_num_rows($cariquery);
          echo $res;
      

      mysqli_num_row 参数必须是 mysqli 查询变量而不是 fetch

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-07
        • 1970-01-01
        • 2013-03-14
        • 1970-01-01
        相关资源
        最近更新 更多