gpt4 book ai didi

带过滤器的 PHP 导航

转载 作者:行者123 更新时间:2023-11-29 06:12:37 26 4
gpt4 key购买 nike

我正在制定一个多面导航(我认为这是正确的表达方式......)

所以我有很多类别和制造商可供用户过滤。

我已经到了必须从数据库中获取过滤器结果的地步。创建这些查询的最快方法是什么?我有 3 个可以过滤的获取值(制造商/公司/类别),这意味着我会编写一个查询,询问制造商和公司何时是事件过滤器以及类别和公司等...我看到这需要多少工作是的,我想知道是否有一个简短的方法可以做到这一点?

最佳答案

可能想要如下所示的内容(如果我正确理解你的问题:

SELECT * FROM 表名,其中制造商='A' AND 公司='B' AND 类别='C'

如果您使用 PHP,您可以使用它来输入 A、B 和 C 的当前值 - 但请记住清理这些值

编辑

例如,使用 PHP...

<?php
$manufacturer = mysql_real_escape_string($_GET['manufacturer']);
$company = mysql_real_escape_string($_GET['company']);
$category = mysql_real_escape_string($_GET['category']);

$query = "SELECT * FROM tablename WHERE manufacturer='".$manufacturer."' AND company='".$company."' AND category='".$category."'";

// then simply run the query....
?>

编辑2

您可以在需要时将 AND 更改为 OR

<?php
$query = "SELECT * FROM tablename";
$mixed_query = "";

if(isset($_GET['manufacturer']) && !empty($_GET['manufacturer'])){
$mixed_query .= ($mixed_query !== "") ? " AND " : " WHERE ";
$mixed_query .= "manufacturer='".mysql_real_escape_string($_GET['manufacturer'])."'";
}
if(isset($_GET['company']) && !empty($_GET['company'])){
$mixed_query .= ($mixed_query !== "") ? " AND " : " WHERE ";
$mixed_query .= "company='".mysql_real_escape_string($_GET['company'])."'";
}
if(isset($_GET['category']) && !empty($_GET['category'])){
$mixed_query .= ($mixed_query !== "") ? " AND " : " WHERE ";
$mixed_query .= "category='".mysql_real_escape_string($_GET['category'])."'";
}

// then add to query
$query .= $mixed_query;

// then simply run the query....
?>

关于带过滤器的 PHP 导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8300675/

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