![]() |
SQL-Abfrage via URL-Parameter
Wenn ich im Browser
mydomain.at/myscript.php?where_string=id=17 eintrage, wird das in meinem php-Script PHP-Code:
Leider funktioniert das nur mit Zahlenfeldern. Wie stelle ich das an, wenn ich ein Textfeld abfragen will: mydomain.at/myscript.php?where_string=Tier=Katze Das funktioniert ohne Hochkommas nicht. Hat da jemand eine Idee? Danke ff |
du mußt $where_string mit einfachem hochkomma einschließen -> '$where_string' ...
|
Das funktioniert leider nicht. Die Variable $where_string soll ja Tier='Katze' liefern und nicht 'Tier=Katze'.
Das Problem sehe ich eher in den URL-Parametern. Wie bringe ich das $where_string="Tier=\'Katze\'" oder so aehnlich in einer URL unter? Danke ff |
aja, jetzt wird mir klar, was du willst ...
dann solltest du nicht beide paramater in einen reinstopfen, sondern diese trennen ... mydomain.at/myscript.php?search_column=Tier&match_string=Katze PHP-Code:
|
Ja, das funktioniert so. Nur bin ich halt dann bei der Abfrage nicht so flexibel, wie ich es gerne haette. Dann braeuchte ich eine weitere Variable fuer den Operator (= ,LIKE, <, >, ...) und was mache ich bei Tier='Katze' AND Farbe='schwarz'?
Vermutlich bilde ich schon wieder etwas ein, was via URL gar nicht moeglich ist . . . schade :( Danke jedenfalls fuer deine Hilfe! ff |
naja, man kann halt nicht alles so wie man es gerne hätte in eine url packen ;) ...
|
aber man soll die Hoffnung nicht aufgeben ;-)
Jedenfalls geht es auch, wenn man nun den Operator in die 1. Variable schreibt! Also: mydomain.at/myscript.php?search_column=Tier =&match_string=Katze bzw. mydomain.at/myscript.php?search_column=Farbe LIKE&match_string=%schwarz% PHP-Code:
ff |
ich würd dann aber den operator auch separat in einer eigenen variable übergeben ;) ...
|
Hast du dafuer eine Begruendung, die ich momentan nicht erkennen kann?
|
bei der parameter-übergabe würde ich jedenfalls leer- und operatorzeichen (=, <, >, !=, <=, >=) möglichst vermeiden ...
statt "=" würde ich das wort "equal" nehmen (analog dazu greater, less_then, not_equal, usw.) ... das ganze dann in php auf das entsprechende operator-zeichen zu ersetzen ist IMHO designmäßig unkritischer (vor allem in bezug auf fehlerquellen bei upgrade oder zusätzlicher einzubindender browser bzw. plattformen) ... |
Alle Zeitangaben in WEZ +2. Es ist jetzt 00:51 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag