Provo a rispondere alla tua domanda
1.Se l'utente ha già filtrato per marca specifica, salva semplicemente la marca nella variabile di sessione
$sql = "SELECT * from items ";
if(isset($_GET['brand']))
{
$_SESSION['brand'] = $_GET['brand'];
//your code
}
Quindi nella richiesta successiva verifica l'esistenza di quella variabile
if($_SESSION['brand'])
{
$url = $_SERVER['PHP_SELF'] . '?brand=' . $_SESSION['brand'];
header( 'Location:' . $url );
exit;
}
2.Non ne ero a conoscenza.
3. Puoi creare query migliori aggiungendo WHERE 1=1
$query = "SELECT * FROM items WHERE 1=1";
if($_GET['brand')
{
$query .= " AND brand={$_GET['brand'}";
}
//another condition perhaps