PHP - mysql行中的foreach循环

时间:2016-08-21 21:37:43

标签: php mysql loops mysqli foreach

我正在尝试生成动态图像,我正在使用jquery从mysql数据库传递图像的id以产生动态结果,但它似乎不能仅仅打印一个图像,我的代码在这里

 <?php

 include 'conn.php';

 if (mysqli_connect_errno()) {
 printf("Connect failed: %s\n", mysqli_connect_error());
 exit();
}

 $query = "SELECT id FROM homebg";
 $result = mysqli_query($conn, $query);
 if ($result->num_rows > 0) {

 while($row = $result->fetch_assoc()) {
 foreach ($row as $value) {
        echo " 
        <img class=\"responsive-img col l3\" id=\"img\">
        <script>  
$('#img').attr(\"src\",\"getImageadmin.php?id=\"+".$value.");
$('#img').show();
</script> ";
    }
  }
}
mysqli_close($conn);
?>  

这里我想在每次迭代中将图像的值(id)一个接一个地传递给jquery,以便它可以一个接一个地打印图像

2 个答案:

答案 0 :(得分:0)

你的$ row是一个数组,在你的查询中选择了所有字段(这里只是id)。 所以你需要这样做:

while($row = $result->fetch_assoc()) {
    echo "<img class=\"responsive-img col l3\" id=\"img\">
    <script>  
    $('#img').attr(\"src\",\"getImageadmin.php?id=\"+".$row['id'].");
    $('#img').show();
    </script> ";
}

答案 1 :(得分:0)

while($row = $result->fetch_assoc()) {
 foreach ($row as $value): ?> 
        <img class="responsive-img col l3" class="img" src = getImageadmin.php?id=<?php $value ?>>;
<?php endforeach; } ?>

您甚至不需要使用javascript / jquery。这解决了目的。如果你仍然需要使用jQuery,那么使用append()不要生成id,因为它们是唯一的。