Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Verfeinerung der Suchergebnisse anhand der Filter

Lassen Sie mich versuchen, Ihre Frage zu beantworten

1.Wenn der Benutzer bereits nach einer bestimmten Marke filtert, speichern Sie einfach die Marke in der Sitzungsvariable

$sql = "SELECT * from items ";
if(isset($_GET['brand']))
{
    $_SESSION['brand'] = $_GET['brand'];
    //your code 
}

Überprüfen Sie dann in der nächsten Anfrage, ob diese Variable existiert

if($_SESSION['brand'])
{
    $url = $_SERVER['PHP_SELF'] . '?brand=' . $_SESSION['brand'];
    header( 'Location:' . $url );
    exit;
}

2.Mir war nicht bewusst...

3. Sie können eine bessere Abfrage erstellen, indem Sie WHERE 1=1 hinzufügen

$query = "SELECT * FROM items WHERE 1=1";

if($_GET['brand')
{
    $query .= " AND brand={$_GET['brand'}";
}

//another condition perhaps