2012-04-08 19 views
-3

Ich muss eine Abfrage mit mehreren Bedingungen machen es Ergebnisse von einer internen Suchmaschine anzeigen, sollte es nach bestimmten Wörtern in bestimmten Spalten suchen, aber diese "Wörter" sind durch drei Kategorien unterteilt WOOD, PLASTIC, ALLE MATERIALIEN.Mysql Abfrage mit mehreren Bedingungen

Also bei meiner Suche Textbox ein haben ein Dropdown-Menü mit den Kategorien, was ich tat, ist, dass:

$query = mysql_query("SELECT * FROM data WHERE mat1 OR mat2 OR mat3 LIKE '%$string%' ") or die(mysq_error); 

dies ohne die DROPDOWN Wert fein arbeiten, aber ich brauche einen anderen Parameter in der Abfrage, die von den Kategorien ist das Drop-Down-Menü, habe ich versucht:

$query = mysql_query("SELECT * FROM data WHERE mat1 OR mat2 OR mat2 AND sex = '%$kind%' LIKE '%$string%' ") or die(mysq_error); 

Art $ den Wert des dropdow Box enthalten, Holz, Kunststoff, alle Materialien. irgendeine Hilfe? danke

+0

Leider i, dass die Materialien zu sagen vergessen haben, nicht in separaten Spalten unterteilt sind, aber sie sind in einer einzigen Spalte namens SEX – user1084304

+0

ich stark Mixxed Ich schlage vor, Sie 'REGEXP' in MySQL zu verwenden, wenn Ihre Suche wie folgt aussieht:% %' – hjpotter92

+4

haben Sie schon 5 Minuten SQL gelernt? –

Antwort

1

Ich glaube, was Sie versuchen zu tun:

$query = mysql_query("SELECT * FROM data WHERE (mat1 LIKE '%$string%' OR mat2 LIKE '%$string%' OR mat3 LIKE '%$string%') AND sex = '$kind'") or die(mysq_error); 
+0

Vielen Dank, arbeiten wie ein Charme. – user1084304

Verwandte Themen