html中的多个mysql回声

问题描述 投票:1回答:1

我想我有一个非常简单的问题。我有一个简单的HTML页面,我想填写mysql数据库中的单词。

因此我写了这个小测试页面。我的问题是,第一个回声“图片”工作正常,但第二个“名称”不会输出任何东西。它只是第一次工作。如果我添加这个:

$sql = <<<SQL
    SELECT *
    FROM `Database1`
    WHERE `id` = 1 
SQL;

if(!$result = $db->query($sql)){
    die('There was an error running the query [' . $db->error . ']');
}
while($row = $result->fetch_assoc()){

在第二个回声“名称”之前一切正常。

<?php
$db = new mysqli('', '', '', '');

if($db->connect_errno > 0){
    die('Unable to connect to database [' . $db->connect_error . ']');
}

$sql = <<<SQL
    SELECT *
    FROM `Database1`
    WHERE `id` = 1 
SQL;

if(!$result = $db->query($sql)){
    die('There was an error running the query [' . $db->error . ']');
}
?>

<html>

<img src="<?php
while($row = $result->fetch_assoc()){
    echo $row['Picture'];}
?>" height="270">

some more html...

<?php
    echo $row['Name'] . '<br />';
?>                          

even more html...

<?php
    mysqli_close ($con);
?>  

</html>

这是要走的路吗?还是我错过了什么?

谢谢!

php echo
1个回答
2
投票

我自己找到了解决方案:诀窍是在while循环后再次将指针移动到第0行:

mysqli_data_seek($result, 0);

Docs

© www.soinside.com 2019 - 2024. All rights reserved.