1

Webサイトを作成している最中で、動的なドロップダウンメニューを作成したい。問題は、データベースからエントリをロードすると、最初のエントリのみが正しく表示され、メニューの他のエントリがコードとして表示されることです。 。私はPHP5.3とHeidiSqlでXampを使用しています。これは私のコードです:

<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

ループが間違った場所にあるようです。次のようなものを試してください。

<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]; ?> "> 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>
于 2012-12-20T07:44:25.713 に答える