2015-10-02 226 views
1

這裏在a.php文件中只有1行正在顯示。我使用fetch(PDO :: FETCH_ASSOC)stll我沒有從chatlog獲取整行。 問題在哪裏?只選擇一條記錄

a.php只會

<html> 
<head> 
</head> 
<body> 
<?php 
Include ('connect.php'); 
$query = $handler->prepare("SELECT message FROM chatlog"); 
$query->execute(); 
while ($row = $query->fetch()) { 
    $message = $row['message']; 
    $query = $handler->prepare("SELECT * FROM smilies"); 
    $query->execute(); 
    while ($row = $query->fetch()) { 
     $emoji = $row['emoji']; 
     $smiley = "<img src='image/" . $row['smiley'] . "'/>"; 
     $message = str_replace($emoji, $smiley, $message); 
    } 
    print_r("$message"); 
} 
?> 
</body> 
</html> 
+1

的'$ query'變量。你正在覆蓋它。 –

回答

1
<?php 
Include ('connect.php'); 

$smileys = $handler->query("SELECT emoji, smiley FROM smilies")->fetchAll(); 
$query = $handler->query("SELECT message FROM chatlog"); 
foreach($query as $row) 
{ 
    $message = $row['message']; 
    foreach($smileys as $sm) 
    { 
     $smiley = "<img src='image/$sm[smiley]'/>"; 
     $message = str_replace($sm['emoji'], $smiley, $message); 
    } 
    echo $message; 
} 
+0

它的工作,但我的字符串不會被取代@您的常識 – art