[英]Separate subject headings in list
<?php require_once('Connections/pdoConnect.php'); ?>
<?php
// Issue the query
$pdo_recordset1 = $conn->query("SELECT id, title, author, subject FROM audio");
$pdo_recordset1->setFetchMode(PDO::FETCH_ASSOC);
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Audio List</title>
</head>
<body>
<?php
// Now iterate over every row and display it
$n = 0;
while($r = $pdo_recordset1->fetch(PDO::FETCH_ASSOC))
{
?>
<a href="PDO_detail.php?item=<?php echo $r['id']?>">
<?php echo ($r['subject'])?><?php echo ($r['title'])?><?php echo ($r['author'])?></a><br />
<?php
++$n;
}
if(0 == $n)
{
echo "Sorry there are no items to display";
}
?>
</body>
</html>
这将生成数据库中所有条目的列表。 但是,我想将“主题”数据作为该主题组中每个标题上方的标题分开。 例如:
主题1
标题1
标题2
标题3
主题2
标题1
标题2
等等
我应该如何修改上面的代码来实现这一目标? 我猜想它将需要一个嵌套循环,但是不确定如何将其组合在一起。
您可以将主题一次性添加到一个数组中,然后可以对该数组中的每个主题进行遍历,并在主题匹配时回显标题和作者。
$subjects = array();
array_push($subjects, $r['subject']);
用法要求如此,但如果有人可以对其进行编辑以使其更正确,更有效,则类似这样...
<?php
$subjects = array();$n=0;
while($r = $pdo_recordset1->fetch(PDO::FETCH_ASSOC))
{array_push($subjects, $r['subject']);}
while($s = $subject->$subjects)
{
while($r = $pdo_recordset1->fetch(PDO::FETCH_ASSOC))
{
if($r['subject']==$s)
{
?><a href="PDO_detail.php?item=<?php echo $r['id']?>">
<?php echo ($r['subject']); echo ($r['title']); echo ($r['author'])?>
</a><br /><?php
}
++$n;
}
if(0 == $n){echo "Sorry there are no items to display";}
}
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.