2017-01-08 78 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'];