such script; suche nach plz
Hallo,
ich biete jetzt meinen usern eine suche nach plz an. die user sind mit den ersten beiden zahlen der plz in der datenbank eingetragen. die suche funktioniert soweit, aber nur wenn der user 2 zahlen in der suche angibt. ich wollte es aber so haben das man auch noch nach der ersten zahl der plz suchen kann. wie mache ich das? mfg, Patrick |
Hi patrickn
Willkommen auf Selfphp in MySql gibt es eine Funktion die heißt like like sucht mittels Patter wie ist es aufgebaut fieldname like '%as%' wobei das % ein Platzhalter ist für kein bzw. beliebig viele Zeichen steht also zB bei dem SQL fieldname like '%as%' findet er as aaas assasa aaassasa Du kannst natürlich auch nur an einer Position den Platzhalter verwenden. In deinem Fall wäre es: plz like '$PLZ%' wenn in $PLZ jetzt nur eine einstellige Zahl steht findet er alle die damit anfangen usw... |
Hallo,
danke für die schnelle antwort!!! habs ausprobiert aber irgendwie kommen jetzt keine ergebnisse mehr. $ergebnis_w = mysql_query ("SELECT * FROM ".$tabelle_m." WHERE komplett = 'TRUE' AND geschlecht = '".$geschlecht."' LIKE postleitzahl = '".$plz."%' ORDER BY model_id DESC LIMIT ".$start.",".$limit); mfg, Patrick |
Hi @gain
du hast die Syntax ned richtig gelesen ;-) -> fieldname like '%as%' richtig ist: Code:
SELECT * FROM ".$tabelle_m." WHERE komplett = 'TRUE' AND geschlecht = '".$geschlecht."' postleitzahl LIKE '".$plz."%' ORDER BY model_id DESC LIMIT ".$start.",".$limit |
hallo,
ok danke jetzt klappts. mfg, Patrick |
hmm.. ein prob gibt es noch.
wenn man jetzt als plz die zahl 0 eingibt sucht er nichts weil 0 ja false ist. was jetzt? mfg, Patrick |
Hi @gain
Ich behaupte jetzt einmal das der Fehler nicht in der SQL ist sondern im PHP Teil. 0 ist nur im PHP false in MySql ist NULL nicht gesetzt. Eine Möglichkeit wäre es, so zu überprüfen if ($plz != "") { if (isset($plz)) { Wobei sich die Frage stellt: Warum sollt der User 0 eingeben?? |
ja es gibt ja städte die eine plt wie 06... haben und so.
ja stimmt ich überprüfe mit empty($plz). wie kann ich das denn jetzt machen das es geht? |
Aha
In Österreich gibt es keine führende 0 Geht mit if ($plz != "") { oder if (isset($plz)) { |
ok danke habs jetzt hinbekommen
mfg, patrick |
Alle Zeitangaben in WEZ +2. Es ist jetzt 13:33:52 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.