2016-08-21 84 views
0

我想要生成动态图像,我使用jquery从mysql数据库传递图像的id产生动态结果,但似乎并没有工作它只打印一个形象,我的代码是在这里PHP的foreach循环在mysql行

<?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); 
?> 

在这里,我想通过图像用一个接一个的jQuery的值(id),在每次迭代中,以便它可以通过一个彼此相邻的打印图像一个

+0

你为什么不用''这个? –

+0

该ID应该是唯一的 - 在循环中你创建图像具有相同的ID – RamRaider

+0

我理解的形象在一个循环,但你不应该需要在循环中的脚本 – 2016-08-21 21:46:02

回答

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> "; 
} 
+0

其给予非法字符串偏移“ID” – GeekWithGlasses

+0

如果你尝试它呢? – Ikishie

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()不要做IDS,因为它们是唯一的。