我有一个包含3个字段(类别,标题,图像)的行的表。起初,我创建了一个foreach循环,它返回一些html与每行的信息。但是,现在我真的想创建一个场景,可以按类别“过滤”我的循环。PHP - 通过MySQL字段值筛选
我的意思是说,我想创建一个函数,它只会为其category字段中具有特定值的行生成html。我希望能够将此函数应用于类别的所有不同值。
任何帮助,将不胜感激。
我有一个包含3个字段(类别,标题,图像)的行的表。起初,我创建了一个foreach循环,它返回一些html与每行的信息。但是,现在我真的想创建一个场景,可以按类别“过滤”我的循环。PHP - 通过MySQL字段值筛选
我的意思是说,我想创建一个函数,它只会为其category字段中具有特定值的行生成html。我希望能够将此函数应用于类别的所有不同值。
任何帮助,将不胜感激。
MySQL查询解决方案:
使用Where
声明在您的查询,并保持你的PHP一样。
例如
Select * From table Where `category`="Filter Value";
让我知道是否适合你,或者如果你限制只使用PHP来过滤类别..
我想这样做PHP仅仅是因为我不知道它在mysql查询中做的解决方案有多容易。 – user1794386
MySQL用于查询。大声笑它的目的是检索数据。 –
要么使用WHERE
从句作asifrc建议。
或者做这样的事情
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
if($row['category'] == 'category1') {
// do some stuff example
$html_output .= '<p style="font-weight:bold">Important category: ' . $row['title'] . '</p>';
} else if($row['category'] == 'category2') {
// do other stuff
$html_output .= '<p>Not important category: ' . $row['title'] . '</p>';
}
}
是的,这就是我在PHP中使用它的原因,但我想知道是否有一些不太复杂的事情(我有很多类别) – user1794386
您对类别的处理对于每个类别都必须是唯一的吗?是否有类别组?即如果有5类别的类别,那么我们可以使用开关将它们分开。或者如果处理取决于该类别的某个方面,那可能是一个线索。更多信息? –
为什么不能在查询中直接筛选呢?所以你不需要你的PHP代码中的任何过滤器?你所要做的就是显示行的html。 –
使用mysql过滤是好吗? – asifrc
是的,你可以在你的'where'子句中有这样的东西,'WHERE category <> NULL' –