paste mal kurz deinen query-string wie er in php ausschaut.
so sieht er aus:
$sql = "Select * from users where nachname = '".$_POST['name']."' AND land = '".$_POST['land']."'";so bekomme ich aber nur die raus, wenn ich name und land gleichzeitig angeben.
will aber eins davon auch freilassen können, damit man nur nach einen kriterium suchen kann, und nicht nach 2 , 3 oder allen 4.
dann mach doch $sql = "SELECT... WHERE";
$sql .= $_POST["name"] ? 'nachname = "'.$_POST["name"].'" AND ' : "";
und so weiter
(das jetzt nur mal ganz vereinfacht dargestellt.
noch geschickter ist es natürlich, wenn du alle datenbank-feldnamen genau so wie die formfelder benennst und das in nen array packst.
also <input type="text" name="feld[nachname]">
etc..
dann kannst du
im php-teil ein
foreach ($_POST["feld"] as $feldname => $feldinhalt) {
$sql .= $feldname." = "'.$feldinhalt.'" AND ';
}
oder ähnliches machen.
dann ist dein php-teil unabhängig von formular und datenbank...
aber vielleicht ist das auch zuviel des guten :)