从其他列中选择数据

时间:2018-02-27 19:42:49

标签: php mysqli

我在php和mysqli上相当新,而且我已经取得了一些成功,但我目前面临着一堵墙。主要是因为我不知道表达我想要做的事情的条款。

我可以整天选择一行,但我似乎被困在同一行。我需要能够从列的下方选择数据。这是我正在使用的代码。

$qry = "select * from products";
$rs = mysqli_query($conn,$qry);


$getRow = mysqli_fetch_row($rs);
$getRowAssoc = mysqli_fetch_assoc($rs);

echo "<img src=\"".$getRow['1'] . "\">";

我在数据库的图片列中有几个图像链接,但似乎无法找到一种简单的方法来显示该列中其他行的链接。我可能会离开这里,但我不认为我。 这是db db pic的布局 任何帮助将不胜感激

2 个答案:

答案 0 :(得分:0)

对于每个mysqli_fetch_assoc,您将获得下一行的结果。当索引从-1开始时,第一次调用它时,它将转到第一行。因此,无论何时再次调用它,它都会进入下一行。在循环中使用它就可以了。

while($row = mysqli_fetch_assoc($result)){
   // $row will have new content each iteration
}

答案 1 :(得分:0)

mysqli_fetch_assoc将结果行作为关联数组获取,但只获取1行,如果要获得所有结果,则必须通过循环获取结果的所有内容,例如:

<?php

  $query = 'SELECT `products`.* FROM `products`';

  $mysqli = new Mysqli('localhost','test','root','password');

  $result = $mysqli->query($query);

  while ($row = $result->fetch_assoc()) {
        echo '<img src="' . htmlentities($row['pic']) . '" /><hr />'; 
  }

  unset($row);

  $result->free();

  $mysqli->close();

如果您希望在以后的步骤中获取所有行以供以后使用,则可以使用mysqli::fetch_all(),例如:

<?php

  $query = 'SELECT `products`.* FROM `products`';

  $mysqli = new Mysqli('localhost','test','root','password');

  $result = $mysqli->query($query);

  $products = $result->fetch_all();

  $result->free();

  $mysqli->close();

  print_r($products);