Wie machst du das denn, wenn du bei Marke „Alle“ stehen hast, ist doch das gleiche Prinzip. Wenn „Alle“ ausgewählt wurde, lässt du einfach die Bedingung im Select weg.
Deshalb sage ich doch, wenn bei einer Kategorie „Alle“ gewählt wurde, darfst du das nicht in die Bedingung aufnehmen.
Grobes Beispiel:
[PHP]<?php
$query = „Select Marke, Typ, Farbe
from tabelle“;
$conditions = array();
if ($_POST['Marke'] != 'Alle')
$conditions[] = "`Marke`='" . $_POST['Marke'] . "'";
if ($_POST['Typ'] != 'Alle')
$conditions[] = "`Typ`='" . $_POST['Typ'] . "'";
if ($_POST['Farbe'] != 'Alle')
$conditions[] = "`Farbe`='" . $_POST['Farbe'] . "'";
if (count($conditions))
$query .= " where " . implode(" and ", $conditions);