sql >> Databáze >  >> RDS >> Mysql

Upřesnění výsledků vyhledávání na základě filtrů

Pokusím se odpovědět na vaši otázku

1.Pokud uživatel již filtruje konkrétní značku, jednoduše značku uložte do proměnné relace

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

Poté v dalším požadavku zkontrolujte existenci této proměnné

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

2.Netušil jsem..

3. Můžete vytvořit lepší dotaz přidáním WHERE 1=1

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

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

//another condition perhaps


  1. Přístavní dělník. Obrázek MySQL. Soubor my.cnf nelze změnit

  2. Jak filtrovat (nebo nahradit) znaky unicode, které by v UTF-8 zabraly více než 3 bajty?

  3. Jak vrátit výstup uložené procedury do proměnné na serveru SQL

  4. Aplikace Laravel v Azure:Přístup odepřen uživateli 'azure'@'localhost'