online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon Kallos23 vom 15.01.2021, 11:25 Options

Dereferrer

Hallo,

ich benötige Hilfe bei einem Dereferrer mit PHP. Zwar wird weitergeleitet, jedoch fehlerhaft, so dass nicht die gesamte URL korrekt ist. Also: die URL wird als "urlencode" übergeben und dann per $_GET ausgelesen und dann mit:
$link = $_GET["link"];
header("Location:".urldecode($link)."");
soll weitergeleitet werden.

Jedoch kommt es zu einem Fehler. Zum Beispiel, wenn ich auf die Seite http://www.google.de/search?num=100&hl=de&q=supportnet&btnG=Suche&meta=lr%3Dlang_de
verlinke, werde ich auf http://www.google.de/webhp?num=100 geleitet. Bei anderen Websiten ist mir aufgefallen, dass Variablen nicht korrekt verbunden werden, z.B. lang=en_GB&word1= anstatt von lang=en_GB&amp&word1=

Woran liegt das?


Antwort schreiben

Antwort 1 von katy vom 15.01.2021, 11:36 Options

lang=en_GB&word1

ist korrekt, das Semikolon gehört dahin, ansonsten ist der Code nicht valide.

katy

Antwort 2 von Kallos32 vom 15.01.2021, 11:41 Options

Sorry, das war nur ein Teil des ganzen Codes, hier der Ganze.

Richtig:
index.php?lang=en_GB&amp&word1=www.example.de&amp&word2=www.example.com


Falsch (so wie mit Dereferrer weitergeleitet wird):
index.php?lang=en_GB&word1=www.example.de&word2=www.example.com

Antwort 3 von Joshuan vom 15.01.2021, 11:42 Options

Keine Ahnung. Tu doch mal mal urldecode($link) in das HTML Dokument ausgeben und dann schau dir die Ausgabe in der Quelltextanzeige(!) im Browser an. Da müsste man eigentlich sehn was kaputt ist.

PS: hinter den Doppelpunkt von Location muss ein Leerzeichen.

Antwort 4 von Kallos32 vom 15.01.2021, 12:01 Options

Zitat:
hinter den Doppelpunkt von Location muss ein Leerzeichen.

Nicht zwingend.

Es ist sehr merkwürdig. Wenn ich mir $link per echo ausgeben lasse, zeigt der Browser:
index.php?lang=en_GB&word1=www.example.de&word2=www.example.com


Im Quelltext steht jedoch:
index.php?lang=en_GB&word1=www.example.de&word2=www.example.com

Antwort 5 von Kallos32 vom 15.01.2021, 12:02 Options

Möglicherweise könnte ein Hiddenfield helfen? Ich probiers mal...

Antwort 6 von Kallos32 vom 15.01.2021, 12:06 Options

Ne, leider nicht.

Antwort 7 von Joshuan vom 15.01.2021, 12:07 Options

Es gibt bestimmt schlecht programmierte Clients die das Leerzeichen erwarten. zb viele von meine Skripte. LOL
Vergiss was der Browser anzeigen tut. Der interpretiert HTML. Das ist sein Job. Hat mit deinem Prob nix zum tun.

Antwort 8 von Joshuan vom 15.01.2021, 12:08 Options

Was ist denn mit dem ersten Beispiel wo es schon am ersten Kaufmann UND scheitert?

Antwort 9 von katy vom 15.01.2021, 12:25 Options

Zitat:
Es ist sehr merkwürdig. Wenn ich mir $link per echo ausgeben lasse, zeigt der Browser:
index.php?lang=en_GB&word1=www.example.de&word2=www.example.com

Im Quelltext steht jedoch:
index.php?lang=en_GB&word1=www.example.de&word2=www.example.com
das ist nicht im geringsten merkwürdig, sondern genau so muss der Browser das anzeigen. & ist die Bezeichnung für ein &, das so nicht im HTML-Quelltext allein stehen darf, weil es ein HTML-Sonderzeichen ist. Mit anderen Worten: überall wo der Browser ein & anzeigen soll muss im Quelltext & stehen. PHP-Funktionen wie htmlspecialcharacters machen nichts anderes als HTML-Sonderzeichen so zu maskieren.

katy

Antwort 10 von Joshuan vom 15.01.2021, 12:31 Options

Was meinst du mit hidden fields? Kenn ich nur im Formular. Forms sind im Body nicht bei den Headers wie Location. Das Lesen vom HTTP Body nach Location Header ist auch nich zwingend. ;-) Natürlich kannst du ohne Location Header eine Form mit autosubmitt machen aber das geht nur mit Javascript.

Aber konzentrier dich mal auf dein Prob. Das muss lösbar sein. Glaub mir. Hör auf zum raten und theoretisieren. Lass dir Werte ausgeben. Programmieren is nich wie Schachspielen wo man beim denken die Figuren nich anfassen darf. ;-)

Ähnliche Themen

Administratorkennwort vergessen
rfb  17.09.2007 - 26626 Hits - 7 Antworten

Hilfe VBS-Script Programmstart Optionen
Agasthia  09.07.2007 - 31 Hits - 4 Antworten

Perl Programm
stivi  10.08.2007 - 49 Hits - 1 Antwort

levenshtein
Uesch  13.07.2007 - 11 Hits - 7 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026