Php 多次使用同一个foreach
我目前正在编写一个php脚本,并停留在这一部分。我有一个数据库表,我想显示每一行的信息。我有两个下拉菜单,我想有一个完全相同的名称,只是一个不同的网址。我假设这是可能的,我做错了什么,因为我对php没有那么先进 我发现这个问题很相似,但似乎没有看到任何帮助 这是我目前拥有的 页首Php 多次使用同一个foreach,php,foreach,Php,Foreach,我目前正在编写一个php脚本,并停留在这一部分。我有一个数据库表,我想显示每一行的信息。我有两个下拉菜单,我想有一个完全相同的名称,只是一个不同的网址。我假设这是可能的,我做错了什么,因为我对php没有那么先进 我发现这个问题很相似,但似乎没有看到任何帮助 这是我目前拥有的 页首 <?php require("common.php"); if(empty($_SESSION['user'])) { header("Location: login.php"); d
<?php
require("common.php");
if(empty($_SESSION['user']))
{
header("Location: login.php");
die("Redirecting to login.php");
}
$header = "SELECT id, location FROM table";
try
{
$headerstmt = $db->prepare($header);
$headerstmt->execute();
}
catch(PDOException $ex)
{
die("Failed to run query: " . $ex->getMessage());
}
?>
下面是foreach循环的部分
<ul class="nav navbar-nav">
<li class="dropdown <?php if ($page == 'view') {echo 'active';} ?>">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">View <b class="caret"></b></a>
<ul class="dropdown-menu">
<?php foreach ($headerstmt->fetchAll() as $hrow) { ?>
<li><a href="view.php?id=<?php echo $hrow['id'] ?>"><?php echo $hrow['location']; ?></a></li>
<?php } ?>
</ul>
</li>
<li class="dropdown <?php if ($page == 'edit') {echo 'active';} ?>">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">Edit <b class="caret"></b></a>
<ul class="dropdown-menu">
<?php foreach ($headerstmt->fetchAll() as $hrow) { ?>
<li><a href="edit.php?id=<?php echo $hrow['id'] ?>"><?php echo $hrow['location']; ?></a></li>
<?php } ?>
</ul>
</li>
</ul>
您应该将
$headerstmt->fetchAll()的结果存储在变量中,然后将结果变量用于foreach循环
$results = $headerstmt->fetchAll();
foreach( $results as $row ) {
}
foreach( $results as $row ) {
}
foreach( $results as $row ) {
}
将fetchAll()result存储在变量中如何?@YourCommonSense您的用户名再合适不过了。也许您需要倒带缓冲区。这里有一些解决方案: