php显示来自db的数据

时间:2014-06-03 21:36:07

标签: php mysqli show

我试图在html页面中显示我的第一行数据库中的数据。 这是:index.html我不明白哪里出错了。

<div class="container">

  <h3>Menu del giorno <?php $currentDate = date("d-m-Y"); echo $currentDate;?></h3><br/>

<?php
$con=mysqli_connect("localhost","root","root","mydb");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$result = mysqli_query($con,"SELECT * FROM menu");


  while($row = mysqli_fetch_array($result)) {

  echo "<p style="text-align: center;"><strong>Cucina:</strong></p><br/><br/>";
  echo "<p>Primi</p><br/>";
  echo "<p>" . $row['piatto1'] . "</p><br/>";
  echo "<p>" . $row['piatto2'] . "</p><br/><br/>";
  echo "<p>Secondo</p><br/>";
  echo "<p>" . $row['secondo'] . "</p><br/>";

  }
  mysqli_close($con);
  ?>

</div>

2 个答案:

答案 0 :(得分:2)

将文件从index.html重命名为index.php

HTML文件应该只包含有效的HTML代码,其中PHP文件可以包含PHP代码语句,并由PHP二进制文件解释(例如Windows上的php.exe)。如果将PHP代码放在HTML文件中,则不会解释此代码。因此,PHP代码要么在浏览器中以纯文本形式显示,要么 - 在更糟糕的情况下 - 将使HTML代码无效。因此可能会阻止显示您的页面。

(您可以指示您的网络服务器(例如Apache)将.html文件视为PHP文件。但我认为这不是这种情况。)

答案 1 :(得分:0)

首先,你的扩展是错误的。正如其他用户所指出的那样,它应该标题为index.php而不是index.html。

其次,您可能没有在服务器上运行它。 PHP是服务器端,意味着代码在用户获取之前执行,这是使其安全的原因。缺点是,与浏览器本身中运行/执行的javascript等客户端事物不同,对于PHP,您需要一个实际的服务器。

如果您尚未上传(例如使用FTP)支持PHP的服务器,则必须自己制作一个。 mac的一个示例:MAMP

这也将支持您的SQL DB。希望这有帮助!

编辑:哦,我看到一个新错误。如果在引号内有引号,则需要转义序列(“\”hello \“”)。否则PHP会认为第二个“正在结束第一个,而不是实际上在字符串中。所以你应该有,例如:

echo "<p style=\"text-align: center;\"><strong>Cucina:</strong></p><br/><br/>";