显示字段


displaying fields

我有这个代码

$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("juliver", $con);
$result = mysql_query("SELECT * FROM menu");
$sm = "";
while($row = mysql_fetch_array($result))
{
$sm .= "<li><a href='#".$row['page'].'">'.$row['menulist']."</a></li>";
}
mysql_close($con);
?>
<? echo $sm; ?>

我的数据库是这样的。

id    menulist          page
1     Home              tb1
2     Gallery           tb2
3     Clothing          tb3
4     Furniture         tb4
5     Household-items   tb5

如果转换为html,输出应该是这样的。

<li><a href="#tb1">Home</a></li>
<li><a href="#tb2">Gallery</a></li>
<li><a href="#tb3">Clothing</a></li>
<li><a href="#tb4">Furniture</a></li>
<li><a href="#tb5">Household-items</a></li>

我试着在代码中删除、添加、重命名等,但我还是坚持了下来,都不起作用。

请帮帮我。

您忘记了结束的;

$sm = "<li><a href='#".$row['page']."'>".$row['menulist']."</a></li>"; //<<----there

您可能想寻找一个可以突出显示语法的编辑器,因为这对它来说很容易。

您在这一行漏掉了一个分号

$sm = "<li><a href='#".$row['page']."'>".$row['menulist']."</a></li>"

更改为

$sm = "<li><a href='#".$row['page']."'>".$row['menulist']."</a></li>";

是否每次都要附加HTML而不是覆盖值?

$sm = "<li><a href='#"...

应该是:

$sm .= "<li><a href='#"

编辑:

以下是我如何构建页面(只是我的偏好):

<?php
$con = mysql_connect("localhost","root","");
if (!$con)
{
  die('Could not connect: ' . mysql_error());
}
mysql_select_db("juliver", $con);
$result = mysql_query("SELECT * FROM menu");
mysql_close($con);
while($row = mysql_fetch_array($result))
{
  echo "<li><a href='";
  echo $row['page'];
  echo "'>";
  echo $row['menulist'];
  echo "</a></li>'n";
}
?>