$ mysqli-> fetch_object($ result)无效

时间:2012-08-31 06:05:00

标签: php mysqli

我正在学习mysqli。

我正在尝试从表“tbllogin”中获取数据。           

      //DATABASE CONNECTION

      $hostname="p:localhost";
      $database="dbLogin";
      $username="user1";
      $password="pwd1";



      $mysqli = new mysqli($hostname, $username, $password,$database);

      if(mysqli_connect_errno()){

       echo mysqli_connect_error();

      }

      // Create Query
      $query = "SELECT * FROM tbllogin";


      // Escape Query

      $query = $mysqli->real_escape_string($query);
      echo $query;

      // Execute Query

      if($result = $mysqli->query($query)){

          print_r($result);

          while($row = $mysqli->fetch_object($result)){

              echo $row->column;

          }

          //Free result set
          $result->close();

      }



      ?>

$mysqli->fetch_object($result)无效。包含if的{​​{1}}语句不会执行。我无法确定是否有任何错误。

请帮忙。 另外,建议mysqli程序形式是更好还是面向对象形式?

提前致谢。

2 个答案:

答案 0 :(得分:11)

不应该是$result->fetch_object()

http://php.net/manual/en/mysqli-result.fetch-object.php

来自示例1:

if ($result = $mysqli->query($query)) {

    /* fetch object array */
    while ($obj = $result->fetch_object()) {
        printf ("%s (%s)\n", $obj->Name, $obj->CountryCode);
    }

根据this stackoverflow page的答案,两者之间没有太大区别。

答案 1 :(得分:1)

试试这个:

if($result = $mysqli->query($query)){

      print_r($result);

      while($row = $result->fetch_object($result)){

       //do something

      }
 }

您需要将命令链接在一起。