html中的多个mysql回声

时间:2018-06-10 12:58:18

标签: php echo

我想我有一个非常简单的问题。我有一个简单的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>

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

谢谢!

1 个答案:

答案 0 :(得分:2)

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

app.get('/player/:userID', (req, res) =>
  let apiServer

  fetch('https://api1.com/api/user/' + req.params.userID + '/')
  .then(function(res) {
    var contentType = res.headers.get("content-type");
    if (contentType && contentType.includes("application/json")) {
      apiServer = 'swgohgg';
      return res.json();
    } else {
      apiServer = 'server2';
      throw new Error("server 1 did not reply properly");
    }
  })
  .catch(function(err) {
    console.log(err);

    // in case of an error do a different request
    if (apiServer == 'server2') {
      return fetch('https://api2.com/api/user/' + req.params.userID + '/')
        .then(function(res) {
          var contentType = res.headers.get("content-type");
          if (contentType && contentType.includes("application/json")) {
            return res.json();
          }
        })
    } else {
       throw new Error('invalid fallback server')
    }
  })
  .then(json => res.send(json))
  .catch(function(err) {
    console.log(err);
  });
});

Docs