警告:mysqli_num_rows()只需要1个参数,2给出| mysql | mysqli

时间:2016-03-06 07:47:08

标签: php mysql mysqli

我在mysql_query中有这样的代码,工作正常。 但我将所有代码移动到mysqli_其抛出错误,如标题

MySQL的

$count = mysql_query("SELECT COUNT(*) FROM xxx limit 2") or die(mysql_error());
      $count = mysql_result($count,0);
      for($i=0; $i<$count;$i++){
        echo '<li data-target="#transition-timer-carousel" data-slide-to="'.$i.'"'; if($i==0){ echo 'class="active"'; } echo '></li>';
      }

的mysqli

   $count = mysqli_query($con,"SELECT COUNT(*) FROM xxx limit 2") or die(mysqli_error());
      $count = mysqli_num_rows($count,0);
      for($i=0; $i<$count;$i++){
        echo '<li data-target="#transition-timer-carousel" data-slide-to="'.$i.'"'; if($i==0){ echo 'class="active"'; } echo '></li>';
      }

请帮忙.. editt。

的代码

在mysql _

中工作:http://www.imagebam.com/image/830cf2469802470

不工作:我已经完成了mysqli_num_rows($ count); http://www.imagebam.com/image/a32c87469802459

此代码用于计算:http://www.imagebam.com/image/f8a0b9469803871见红色

4 个答案:

答案 0 :(得分:1)

根据PHP Manual

您必须将$count = mysqli_num_rows($count,0);更改为$count = mysqli_num_rows($count);

注意:不要再使用mysql了。这个扩展在PHP 5.5.0中已弃用

答案 1 :(得分:0)

因为PHP函数

而抛出此错误
 int mysqli_num_rows ( mysqli_result $result )

只需要一个参数。

这是 http://php.net/manual/ru/mysqli-result.num-rows.php 文档

答案 2 :(得分:0)

mysqli_num_rows甚至与mysql_result远程无关。

在这种情况下,mysqli中mysql_result的替换将是获取整行并仅使用第一个元素,例如;

$result = mysql_query("SELECT COUNT(*) FROM xxx limit 2") or die(mysql_error());
$row = mysqli_fetch_row($result);
$count = $row[0];

for($i=0; $i<$count;$i++){
    echo '<li data-target="#transition-timer-carousel" data-slide-to="'.$i.'"'; if($i==0){ echo 'class="active"'; } echo '></li>';
}

答案 3 :(得分:-1)

正确的做法是

$sql="SELECT COUNT(*) FROM xxx limit 2";

if ($result=mysqli_query($con,$sql))
  {
  // Return the number of rows in result set
  $rowcount=mysqli_num_rows($result);
  printf("Result set has %d rows.\n",$rowcount);
  // Free result set
  mysqli_free_result($result);
  }

mysqli_close($con);