23. januar 2003 - 11:25
Der er
4 kommentarer og 3 løsninger
Fejl i min søge kriterier
Hvis man indtaster et søgeord (model), så kommer den ikke med nogen records. $query = "SELECT * FROM members WHERE (model LIKE ('%$ord%')) and (marke LIKE ('$marke')) ORDER BY ID"; Fjerner jeg derimod det sidste stykke kode så det ser sådan ud, så virker det fint. $query = "SELECT * FROM members WHERE (model LIKE ('%$ord%')) ORDER BY ID"; Hvordan skal det skrives så man kan bruge mere end et kriterie på en gang ????
Annonceindlæg fra Asus
23. januar 2003 - 11:27
#1
$query = "SELECT * FROM members WHERE (model LIKE ('%$ord%')) OR (marke LIKE ('$marke')) ORDER BY ID"; brug OR hvis du vil tjekke i begge felter uafhængigt af hinanden...
23. januar 2003 - 11:31
#2
Det duer jo ikke, for de skal ikke være uafhængige.... Først skal den vælge dem model=$ord og derefter skal den ud fra det resultat vælge dem hvor marke=$marke
23. januar 2003 - 11:37
#3
når du siger den skal søge på (marke LIKE ('$marke')) så kunne du jo ligeså godt skrive marke = '$marke' hvad med at bruge: (marke LIKE ('%$marke%'))
23. januar 2003 - 11:38
#4
Du skal bruge AND hvis begge kriterier skal være opfyldt. Når der ikke kommer nogen records kan det være fordi: Dit SQL statement ikke er korrekt, dvs variablene $ord og $marke indeholder noget andet end det du forventer Eller Der simpelthen ikke er den kombination af $ord og $marke i din database Kontroller disse ting og du finder fejlen.
25. januar 2003 - 18:38
#5
$like .= " AND "; $like .= "(model LIKE '%$ord%') AND (marke LIKE '%$marke%')"; $query = mysql_query ("SELECT * FROM members $like ORDER BY ID"); Prøv det her
27. januar 2003 - 08:40
#6
Sonnyvj: Smider du lige et svar også.... :-)
28. januar 2003 - 00:23
#7
Jo da håber du kan bruge det
Vi tilbyder markedets bedste kurser inden for webudvikling