1
if ($result = $db->query("SELECT * FROM tab WHERE ID = $id")) {
while($row = $result->fetch_assoc() ){
echo "ID:". $row['ID'];
echo "Product:" .$row['Product'];
... }
$result->close();
} else {
echo "could not retrieve data from db";  }

我只得到一个结果,但应该更多。如何获得所有结果?

顺便说一句,我不能使用 fetch_all。

4

4 回答 4

2

您在查询中使用了 ID,这意味着您正在询问特定项目。为了选择所有你必须删除这个条件。

您的代码如下所示:

  if ($result = $db->query("SELECT * FROM tab")) {
    while($row = $result->fetch_assoc() ){
      echo "ID:". $row['ID'];
      echo "Product:" .$row['Product'];
    }
    $result->close();
  } else {
    echo "There is no data in the database";  
  }
于 2015-06-02T14:46:41.337 回答
1

代替

$result = $db->query("SELECT * FROM tab WHERE ID = $id"

$result = $db->query("SELECT * FROM tab WHERE ID = $id LIMIT 1"
于 2015-06-02T14:33:59.440 回答
0

您必须从选项卡中选择 id 和 product 并添加 where 语句。

您的代码如下所示:

  if ($result = $db->query("SELECT ID, Product, user FROM tab WHERE user='".$username."' ")) { //$username = john;
    while($row = $result->fetch_assoc() ){
      echo "ID:". $row['ID'];
      echo "Product:" .$row['Product'];
    }



  } else {
    echo "There is no data in the database"; 

  } result->close();

让我希望你的同等价值是约翰这个名字,它可能是任何东西。因此,您将从列出单词 john 的数据库中获取所有结果行。

把 $username = '约翰'; 在 if 语句之前。

于 2017-01-07T18:11:30.860 回答
-2

从 MYSQL 结果中获取数据的过程是这样的:

  • 连接到主机
  • 选择数据库
  • 运行查询

if ($result) //Check if the return is true

while($row = mysqli_fetch_array($result)) { // do something with the $row //like print it } }

为了完全确保使用打印查询

echo $your_query

然后通过 phpMyAdmin 运行该查询并查看您得到的结果或错误。

于 2013-04-25T21:09:33.227 回答