PHP foreach警告

时间:2013-05-25 09:08:52

标签: php html mysql foreach warnings

我在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; ?>

2 个答案:

答案 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):
    ...