Warning: mysqli_num_rows() expects exactly 1 parameter, 2 given | mysql |mysqli

好久不见. 提交于 2019-12-31 05:26:07

问题


i have code like this in mysql_query , works fine. but i moving all the code to mysqli_ its throw error like in the title

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>';
      }

pls help .. editt. this code for

work : http://www.imagebam.com/image/830cf2469802470 in mysql_

not working : i already did the mysqli_num_rows ($count); http://www.imagebam.com/image/a32c87469802459

this code for counting this : http://www.imagebam.com/image/f8a0b9469803871 see the red


回答1:


mysqli_num_rows does nothing even remotely similar to mysql_result.

The replacement for mysql_result in mysqli in this case would be to fetch the entire row and use the first element only, something like;

$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>';
}



回答2:


According to PHP Manual

you must change $count = mysqli_num_rows($count,0); into $count = mysqli_num_rows($count);

NOTE:Don't use mysql any more.This extension was deprecated in PHP 5.5.0




回答3:


this error throws because PHP function

 int mysqli_num_rows ( mysqli_result $result )

needs only one argument.

Here is http://php.net/manual/ru/mysqli-result.num-rows.php documentation




回答4:


correct way of doing is

$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);


来源:https://stackoverflow.com/questions/35824419/warning-mysqli-num-rows-expects-exactly-1-parameter-2-given-mysql-mysqli

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!