1

我正在创建一个网站,我想创建一个动态下拉菜单。问题是当我从数据库加载条目时,只有第一个条目正确显示,菜单中的其他条目显示为代码. 我将 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>
4

2 回答 2

1

Your loop seems to be in the wrong place. Try something like this:

<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>
于 2012-12-20T07:42:55.600 回答
0

你不应该这样做。

while($data=mysql_fetch_row($result)) { echo $data[2]; ?>"> 回声 ""; }

对于每个循环,您只是添加内容和关闭标签</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>
于 2012-12-20T07:44:25.713 回答