Diese Seite befindet sich im Kompost. Wenn ich mal Zeit habe, wird sie entweder überarbeitet oder entfernt.
Man hat eine Suchmaske um mehrere Felder nach verschiedenen Kriterien zu durchsuchen. Jedoch muss nicht jeder Suchbegriff eingegeben werden.
In dieser Lösung sind keine Security-Relevanten Teile eingebaut. Der Code dient eher als Idee, wie man sowas umsetzen kann. Natürlich muss man noch mit input_filter() und mysql_escape_string() arbeiten….
<!-- Formular --> <form action="?" method="post"> Text 1:<input type="text" name="text1" /><br /> Text 2:<input type="text" name="text2" /><br /> Zahl 3:<input type="text" name="zahl3" /><br /> <input type="submit" name="submit" /> </form> <hr /> <?php // Prüfen ob das Formular gesendet wurde if(isset($_POST['submit'])){ // Array initializieren. Falls kein argument angegeben wurde, // dann ist die Argumentliste ein leeres Array $wheres = array(); //Jedes Feld prüfen und ggf in den Where-Array einfügen if(isset($_POST['text1'])) $wheres[] = "text1='{$_POST['text1']}'"; if(isset($_POST['text2'])) $wheres[] = "text2='{$_POST['text2']}'"; if(isset($_POST['zahl3'])) $wheres[] = "zahl3={$_POST['zahl3']}"; // Wenn Bedinungen vorhanden sind, WHERE-Teil des SQL-String zusammenstellen if(count($wheres)>0) $wherestring = "WHERE ".implode(' AND ', $wheres); //SQL-String zusammensetzen $sql = "SELECT * FROM mytable {$wherestring}"; //TODO: Sql an die DB absetzen echo $sql; } ?>