2011-11-14 35 views
0

的結果這是我的代碼:呼應一個FETCH_ASSOC

<?php 
mysql_connect("localhost","*****","********") or die("Can't connect to DB"); 
mysql_select_db("kroltan_main") or die("Can't select to DB"); 
$result = mysql_query("SELECT * FROM comments") or die("Can't fetch data"); 
if(mysql_num_rows($result) > 0){ 
    $info = mysql_fetch_assoc($result); 
    while($row = mysql_fetch_assoc($result)){ 
     echo "<div class='t_post'>"; 
     echo "<div class='t_message'>" .$row["comment"]. "</div>"; 
     echo "<div class='t_info'>" .$row["name"]. "</div>"; 
     echo "</div>"; 
    } 
} 
?> 

我試圖生成兩個div裏面,一個顯示一個MySQL行的「名稱」值的div容器,另顯示「評論」價值。但是當我測試它時,沒有內容(沒有任何迴應)。我的MySQL表有內容,所以這是我的代碼的問題。 http://kroltan.eliti.com.br/?/=Talk。該頁面上有一些信息,但這是無關緊要的。

回答

0

我已經收拾了代碼和以下應該工作確定:

<?php 
mysql_connect("localhost","*****","********") or die("Can't connect to DB"); 
mysql_select_db("kroltan_main") or die("Can't select to DB"); 
$result = mysql_query("SELECT name,comment FROM comments") or die("Can't fetch data"); 

while($row = mysql_fetch_assoc($result)){ 
?> 
<div class="t_post"> 
    <div class="t_message"><?php echo $row["comment"] ?></div> 
    <div class="t_info"><?php echo $row["name"] ?></div> 
</div> 
<?php 
} 
?> 

變化我做的:

  • 多餘$info = mysql_fetch_assoc()刪除
  • 使用內嵌echo()調用使標記更易讀
  • 只從您的查詢返回所需的列而不是SELECT *
1

刪除其中包含$info = mysql_fetch_assoc($result);的行。應該工作(需要您的查詢是正確的)

+0

工作正常。謝謝 – Kroltan

0
// connect 

$result = mysql_query('SELECT * FROM `comments`') or die("Can't fetch data")); 

if(mysql_num_rows($result) > 0) { 
    while($row = mysql_fetch_assoc($result)) { 
     // display data 
    } 
} 

這應該工作!

應該在while循環條件中調用mysql_fetch_assoc函數。如果您在條件之外調用mysql_fetch_assoc,它只會返回第一行。