%2F in Übergabe
H. Schmidt
- php
0 H. Schmidt0 rob
Hallo,
ich habe folgendes Problem: Ich möchte eine URL an mein PHP Script übergeben.
Zum Testen habe ich mir eine Testseite erstellt:
-------------------------
echo "URL: $_GET[url]";
-------------------------
Ruft man diese Seite nun auf mit ?url=Test, wird "URL: Test" ausgegeben.
Ruft man diese Seite nun auf mit ?url=irgendwas%2Firgendwas wird 404 ausgegeben. Woran liegt das?
Mit freundlichen Grüßen!
Entschuldigung! Ich bin gerade zu der Erkenntnis gekommen, dass es NICHT an PHP liegt sondern an htaccess...
Folgender rewrite_rule habe ich dafür:
RewriteRule url=(.*)$ index.php?url=$1 [L]
Wenn ich "www.xyz.de/index.php?url=HIER DIE URL" aufrufe klappt das aber nicht bei "www.xyz.de/url=HIER DIE URL"...
Also, muss ich irgendwas am htaccess verstellen?
Hi!
echo "URL: $_GET[url]";
Da hatte ich gestern bereits in einem anderen Thread was zu geschrieben.
Du benutzt hier eine undefinierte Konstante.
Es mußt $_GET['url'] statt $_GET[url] heißen.
Ansonsten bekommst du, jenachdem, wie das error_reporting eingestellt ist, ein unschönes Notice.
Das sollte dann so aussehen:
Notice: Use of undefined constant url - assumed 'url' in /www/blabla.php on line blabla
Notice: Undefined index: url in /www/blabla.php on line blabla
Wenn ich "www.xyz.de/index.php?url=HIER DIE URL" aufrufe klappt das aber nicht bei "www.xyz.de/url=HIER DIE URL"...
Was klappt denn jetzt nicht genau?
http://www.modrewrite.de/
http://www.modrewrite.de/foren/forums.html
Schöner Gruß,
rob
Hallo rob,
echo "URL: $_GET[url]";
Da hatte ich gestern bereits in einem anderen Thread was zu geschrieben.
Du benutzt hier eine undefinierte Konstante.
Es mußt $_GET['url'] statt $_GET[url] heißen.
Jein. Wenn der Zugriff alleine (also nicht in einem String) steht, hast du recht, aber wenn ein Arrayelement in einem String steht, muss man die Anführungszeichen weglassen oder geschweifte Klammern um die Variable machen, siehe Doku (im 3. Kasten mit Beispielcode unterhalb der Überschrift)
Grüße aus Nürnberg
Tobias