Php 如何将css类添加到mysql数据库的最后10个条目中?
我有一个非常简单的PHP函数,获取所有结果(从两个表“Items”和“Categories”中),并将它们显示在单个站点上(直接在index.PHP上) 现在我想在最新的(=最后10个sql数据库条目/行)左侧添加一个带有css的图标,但我不知道怎么做 作为一名PHP新手,我的逻辑如下:Php 如何将css类添加到mysql数据库的最后10个条目中?,php,css,mysql,Php,Css,Mysql,我有一个非常简单的PHP函数,获取所有结果(从两个表“Items”和“Categories”中),并将它们显示在单个站点上(直接在index.PHP上) 现在我想在最新的(=最后10个sql数据库条目/行)左侧添加一个带有css的图标,但我不知道怎么做 作为一名PHP新手,我的逻辑如下: 识别最高id 减去上述结果/值的数字10 创建一个if函数,如下所示:“如果$highest_id=在'lastInsertId()-10'的范围内,则应用css类'new item'”(很抱歉将其写成一个句
- 识别最高id
- 减去上述结果/值的数字10
- 创建一个if函数,如下所示:“如果$highest_id=在'lastInsertId()-10'的范围内,则应用css类'new item'”(很抱歉将其写成一个句子,不像真正的if函数,但如前所述,我是新的……)
谢谢。你不能简单地从最高的ID中减去10就得到第10高的ID,因为ID序列中可能会有间隙 要获得10个最高ID,请使用:
SELECT id
FROM Items
ORDER BY id DESC
LIMIT 10
将它们放入数组$first_10
,然后在显示fetchAllItems
的结果时,可以执行以下操作:
if (in_array($row->id, $first_10) {
$class = "newest";
} else {
$class = "";
}
你不能简单地从最高的ID中减去10就得到第10个最高的ID,因为ID序列中可能有间隙 要获得10个最高ID,请使用:
SELECT id
FROM Items
ORDER BY id DESC
LIMIT 10
将它们放入数组$first_10
,然后在显示fetchAllItems
的结果时,可以执行以下操作:
if (in_array($row->id, $first_10) {
$class = "newest";
} else {
$class = "";
}
首先你需要做的是输出它们。你要在那里应用这个类。按ID按降序排列查询,最后限制为10。使用
按{FieldName}DESC排序
,这样,前10个结果将被标识为New
{FieldName}
应该是自动递增
您当前按项目名称对查询结果排序,我认为这与项目是否为“新”没有任何关系。那么“新”的标准实际上是什么?您不应该滥用记录ID来创建任何此类订单,这不是他们的工作(这是唯一标识记录的方法,没有其他方法),因此,如果还不存在日期列,您可能首先要添加一个日期列。您希望按项目“新”的顺序输出项目,还是按不同的顺序输出项目,以便标记为“新”的项目不一定都在列表的顶部或底部,甚至不一定是连续的?首先需要输出它们。在那里应用类。按ID按降序排列查询,最后限制为10。使用按{FieldName}排序DESC
,因此,前10个结果将被标识为New
{FieldName}
应该是自动递增
您当前按项目名称排序查询结果,我假设这与项目是否“新”没有任何关系。那么“新”的标准是什么事实上?您不应该滥用记录ID来创建任何这样的顺序,这不是他们的工作(唯一地标识记录,而不是其他),因此您可能需要首先添加一个日期列,如果还不存在的话。您想按项目的“新性”顺序输出项目吗-或者您希望以不同的顺序输出它们,以便标记为“新”的项目不一定全部位于列表的顶部或底部,甚至不连续?