我正在创建一个网站,我想创建一个动态下拉菜单。问题是,当我从数据库加载条目时,只有第一个条目正确显示,菜单中的其他条目是显示为代码。我正在使用Xamp和PHP 5.3以及HeidiSql。这是我的代码:
<div id="1" class="mega solidblocktheme">
<div class="column">
<ul>
<li><a href="<?php include('../conect.php'); $result=mysql_query("SELECT * FROM tours");
while($data=mysql_fetch_row($result))
{ echo $data[2]; ?>"> <?php echo $data[1];
echo "</a></li>"; }
mysql_close($con);?>
</ul>
</div>
</div>
答案 0 :(得分:1)
你的循环似乎在错误的地方。尝试这样的事情:
<ul>
<?php include('../conect.php');
$result=mysql_query("SELECT * FROM tours");
while($data=mysql_fetch_row($result))
{
echo '<li><a href="'.$data[2].'">'.$data[1];
echo "</a></li>";
}
mysql_close($con);?>
</ul>
答案 1 :(得分:0)
你不应该这样做。
而($数据=和mysql_fetch_row($结果)) {echo $ data [2]; ?&gt;“中&GT; echo“”; }
对于每个循环,您只需添加内容并关闭代码</a>
和</li>
但是你没有为它们添加开始标记。
您可以做的是,首先将数据结果存储在字符串中
include('../conect.php');
$result=mysql_query("SELECT * FROM tours");
$data=mysql_fetch_row($result);
mysql_close($con);
$list = "";
foreach($data as $data_key) {
$list.= '<li><a href="'.data[2].'"> '.$data[1].' </a></li>';
}
所以现在你得到了你的清单
之后是您的HTML,只需回显您构建的字符串
<div id="1" class="mega solidblocktheme">
<div class="column">
<ul>
<?php
echo $list;
?>
</ul>
</div>
</div>