2017-01-08 120 views
1

我試圖打印從fetchAll函數返回的結果數據。我如何將名稱和desc變量綁定到返回的結果。PHP - 返回fetchAll的每個結果

<?php 
$get = $db->prepare("SELECT * FROM Products ORDER BY DateAdded DESC LIMIT 4"); 
$get->execute(); 
$results = $get ->fetchAll(); 

    foreach($results as $result){ ?> 
       $name = $result['Name']; 
       $desc= $result['Desc']; 
      <h4><?php echo $name ?></h4> 
      <h4><?php echo $desc?></h4> 

     <?php 
     } 
    ?> 
+2

'?>'應該在'$ desc = $ result ['Desc'];'後面。努力學習,仔細學習php語法。 –

回答

1

缺少結束標記嘗試以下操作:

$results = $get->fetchAll(PDO::FETCH_ASSOC); 

foreach($results as $key => $value){ ?> 
    echo '<h4>'.$value['name'].'</h4> 
     <h4>'.$value['desc'].'</h4>';   
} 

也有$get->fetchAll()

你可能之間的空間想要刪除php結束標記?>,因爲它可能會給你包括問題。

+0

謝謝,這解決了它! –

0

您不必一次獲取所有結果來做到這一點。對於該任務最好使用fetch方法。

while ($row = $get->fetch(PDO::FETCH_ASSOC)) { 
    echo $row['Name']; 
} 

而關於這裏主要的問題,你是後$result['Desc'];