Hallo!
Ich habe mich als DB-Anfänger bislang zwar durch vieles gekämpft, hierauf fand ich aber keine zufriedenstellende Antwort:
Es handelt sich um eine kleine Adresssammlung. Über ein HTML-Formular kann der Seitenbesucher per Checkbox wählen, wo der ebenfalls dort einzugebende Suchbegriff gesucht werden soll (Spalten mit Name, Ort, Postleitzahl etc.) und wählte zuvor per Radiobutton aus, in welchem Gebiet er das Stichwort suchen möchte ($_POST[thema]).
Nach diversen Kontrollen (Mindesteingrenzungen, real_escape_string usw.) habe ich nun ...
if($_POST[adrart]=="ja"){$abfrage1=mysql_query("SELECT*FROM adr WHERE top='$_POST[thema]' AND art LIKE '$suche'");while($ausgabe=mysql_fetch_array($abfrage1)){echo "$ausgabe[name]<br />";}}
if($_POST[adrort]=="ja"){$abfrage2=mysql_query("SELECT*FROM adr WHERE top='$_POST[thema]' AND ort LIKE '$suche'");while($ausgabe=mysql_fetch_array($abfrage2)){echo "$ausgabe[name]<br />";}}
if($_POST[adrvname]=="ja"){$abfrage3=mysql_query("SELECT*FROM adr WHERE top='$_POST[thema]' AND vname LIKE '$suche'");while($ausgabe=mysql_fetch_array($abfrage3)){echo "$ausgabe[name]<br />";}}
... (usw.) eingebaut. Damit ergeben sich bei einer Vielfachauswahl wegen der ggf. in mehreren Zellen einer Zeile auftretenden Inhaltsbestandteile zig doppelt angezeigte Zeilen (Ortsangaben in dem Ort, dem Firmennamen, der URL etc.). Das provisorische "$ausgabe[name]" ersetze ich dann durch einen Link zur vom Besucher auszuwählenden einzelnen "Datenzeile".
Weil ich ungern mit langen "if"-Schachtelungen oder var-Kombinationswerten (für alle mögliche Auswahlkombinationen) arbeiten möchte, würde ich mich über einen übersichtlicheren Vorschlag (oder einen, wie ich die Dopplungen im Anschluss nicht doppelt anzeigen lassen muss) freuen.
Ansonsten habe ich noch nicht herausbekommen, wie ich vom Besucher eventuell eingegebene _ und % (Platzhalter) herausfiltern kann. Bei allen meiner Ersetzungs-/Maskierungsversuche kam nur ein entstelltes Datenergebnis heraus :-(
Danke und Gruß :-)