gpt4 book ai didi

php - 根据mysql结果的div导致循环

转载 作者:行者123 更新时间:2023-11-29 09:20:28 26 4
gpt4 key购买 nike

首先,如果标题令人困惑,抱歉!我正在开发博客的一部分,该部分确定如何显示类别中最近帖子的列表(有时由日期确定)。在数据库中,每个类别都有一个“类型”集,决定其进入的div是小还是大。

我可以显示结果,但列表中的每个链接都有自己的 div,而不是包含在一个“主”类别 div 中。

简短说明:数据库从类别表和帖子表中提取结果,正如您在查询中看到的那样。然后循环运行,以便可以动态创建类别框及其中的链接。问题在于,本来应该包含链接列表的 div 却包裹着每个单独的链接,而不是所需的集合。

虽然下面的代码只显示了两种“类型”,但我计划在将来添加更多。

这是代码

                <?
require("classes/Database.class.php");

$db = new Database(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE);
$time = $_REQUEST['time'];

$db->connect();

$sql = "SELECT
cm.id,
cm.title AS cmtitle,
cm.sectionid,
cm.type AS cmtype,
cd.id,
cd.time,
cd.link,
cd.title,
cd.description,
cd.sectionid AS sectionid
FROM c_main AS cm
JOIN c_data AS cd ON cd.sectionid=cm.sectionid
WHERE cd.sectionid=cm.sectionid AND time = '".$time."' ORDER by id ASC";

$rows = $db->query($sql);


while($record = $db->fetch_array($rows)){

//determine what div to use by checking "type"
if ($record['cmtype'] == 'large') {
?>
<div class="large" >
<?
} elseif ($record['cmtype'] == 'small') {
?>
<div class="small">
<?

}

for($x =0; $x <= $db->affected_rows; ++$x)
{
if ($record['cmtype'] == 'small') {
echo $record['title'].'<br/>';
} else {
echo $record['title'].'<br/>'.$record['description'];

}
break;
}
echo '</div>';

}
$db->close();
?>

基本上我想像这样:

    /-------------------\
| Category Title |
| -relevant link |
| -relevant link |
\____________________/
/-------------------\
| Category Title |
| -relevant link |
| -relevant link |
\____________________/
.... and so on for each subsequent category

而不是这个(这就是它的输出方式)

/-------------\
\relevant link/
-------------
/-------------\
\relevant link/
-------------
etc.

这是我当前正在使用的 mysql 包装器,如果有任何意义的话http://ricocheting.com/scripts/php_mysql_wrapper.php

最佳答案

如果你只想要一大一小两个div,你应该这样做ORDER BY cmtype,然后你只需要在类型改变或者是第一种类型时创建一个div .

关于php - 根据mysql结果的div导致循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1994583/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com