php pdo使用数据库中的数组填充表
我试图将MySQL中的数据插入到表中,但我似乎无法使循环正常工作:( select语句是正确的,我只是无法让它正确地回显数据 有什么想法吗 编辑的代码位于下面,我已修复:) 这是一个错误php pdo使用数据库中的数组填充表,php,mysql,pdo,Php,Mysql,Pdo,我试图将MySQL中的数据插入到表中,但我似乎无法使循环正常工作:( select语句是正确的,我只是无法让它正确地回显数据 有什么想法吗 编辑的代码位于下面,我已修复:) 这是一个错误 Parse error: syntax error, unexpected '(', expecting T_STRING or T_VARIABLE or '{' or '$' in /home/4507408/public_html/review.php on line 67 正确代码:
Parse error: syntax error, unexpected '(', expecting T_STRING or T_VARIABLE or '{' or '$' in /home/4507408/public_html/review.php on line 67
正确代码:
<?php
$sql = "SELECT u.userID, p.productID, p.name, c.categoryname, r.reviewID, r.reviewTime, r.reviewData, u.firstname FROM review r INNER JOIN product p on p.productID = r.productID INNER JOIN user u on u.userID = r.userID INNER JOIN category c on c.categoryID = p.categoryID ORDER BY $sortby ASC;";
$query = $DBH->prepare($sql);
$query->execute();
$data = $query->fetchALL();
?>
<table class="rev">
<tr>
<th><a href="review.php?sort=name">Product Name:</a></th>
<th><a href="review.php?sort=categoryname">Category</a></th>
<th><a href="review.php?sort=reviewID">ID</a></th>
<th><a href="review.php?sort=reviewTime">Date</a></th>
<th><a href="review.php?sort=reviewData">Review</a></th>
<th><a href="review.php?sort=firstname">Reviewer's Name</a></th>
</tr>
<? foreach ($data as $row): ?>
<?
$originalDate = $row['reviewTime'];
$newDate = date("d-m-Y", strtotime($originalDate));
?>
<tr>
<td><a href="viewproduct.php?productID=<?=$row['productID']?>"><?=$row['productID']?></a></td>
<td><?=$row['categoryname']?></a></td>
<td><?=$row['reviewID']?></a></td>
<td><?=$newDate?></a></td>
<td><?=$row['reviewData']?></a></td>
<td><?=$row['firstname']?></a></td>
</tr>
<? endforeach?>
</table>
这一行毫无意义:
while($row = $data->(PDO::FETCH_ASSOC))
我想你需要的是
因为fetchAll
返回一个数组。它应该是
$data = $query->fetchALL();
foreach($data as $row)
而不是
while($row = $data->(PDO::FETCH_ASSOC))
而且
除非您尚未配置shortag
<? } ?>
@jon是正确的,您需要一个foreach循环,您需要将PDO::FETCH_ASSOC放入$query->fetchAll(PDO::FETCH_ASSOC)谢谢,我现在已经解决了这个问题,并用正确的代码更新了这个问题。在转移到PDO的过程中
while($row = $data->(PDO::FETCH_ASSOC))
<?php } ?>
<? } ?>