douzhuoxia0587
douzhuoxia0587
2013-04-19 01:21

将mysql_num_rows更新为新的Mysqli标准:mysqli_stmt_num_rows

已采纳

I have a PHP page with some Mysqli that I am attempting to convert from MySql. I think I've converted most of it correctly, but I am getting the following error message when I try to execute the code (below):

    Connection was OK!
    Warning: mysqli_stmt_num_rows() expects parameter 1 to be mysqli_stmt, object given in /quantityremaining5.php on line 25
    9999

I'm a bit new to this, so please be gentle - what is that I'm doing wrong? thanks!

<?php

include 'quantitytest_config.php';

// Create connection to MySQL
$link = mysqli_connect($hostname, $username, $password); 
// Check connection
if (mysqli_connect_errno($link))
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  } else { echo "Connection was OK!
";}

//select a database to work with
$selected = mysqli_select_db($link, "grace59_countdown");
  // or die("Could not select countdown");

// use if TWO SEPARATE columns for date and time
//execute the SQL query and return records
$result = mysqli_query($link,
        "SELECT items 
        FROM cases 
        WHERE datetime<=NOW()
        Limit 1 ");

if(mysqli_stmt_num_rows($result) == 0){
   echo "9999";
    } else {
        //fetch tha data from the database
        while ($row = mysqli_fetch_array($result)) {
        echo "Quantity:".$row{'items'}."<br>";
        }
}

//close the connection
mysqli_close($link);
?>
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • dougongnan2167 dougongnan2167 8年前

    Use mysqli_num_rows($result) or $result->num_rows. As the name indicates, mysqli_stmt_num_rows() is intended to be used with a mysqli_stmt object (as returned by mysqli_prepare()).

    See the documentation.

    点赞 评论 复制链接分享