我在html中有一个由mysql后端填充的表。我一直收到警告“警告:为foreach()提供的参数无效”我正在使用php foreach函数,但这是在我的html中。我一直在尝试在此代码中执行if(is_array())
,但它似乎无法正常工作。提前谢谢!
<?php foreach($rows4 as $row4): ?>
<tr style="
margin: 0; padding: 0; border-collapse: collapse;"
>
<td style="
border: 1px solid grey;"
>
<form action="" method="post"> <?php echo $row4['DispatchTicketDate']; ?> </form>
</td>
<td style="
border: 1px solid grey;"
>
<form action="" method="post"> <?php echo $row4['LoginUserName']; ?> </form>
</td>
<td style="
border: 1px solid grey;"
>
<form action="" method="post"> <?php echo $row4['DispatchTicketNote']; ?> </form>
</td>
</tr>
<?php endforeach; ?>
答案 0 :(得分:1)
你的mysql后端必须总是返回一个数组,如:
$rows4 = $db->getAll("SELECT * FROM news WHERE cat=?i", $cat);
或
$rows4 = $stmt->fetchAll();
如果没有找到数据,则返回空数组
这样你永远不会有这样的问题答案 1 :(得分:0)
在继续之前检查阵列的大小:
if (sizeof($rows4) > 0) {
foreach($rows4 as $row4):
...