Dennis: Javascript oder PHP?

Beitrag lesen

Hi DaniO2006,

document.write("<br><br><table align=center cellpadding=0 cellspacing=0 border=0><form method=post action=" + document.URL + "><tr>");

Ich sehe das Problem an der Stelle document.URL - das ist dann natürlich die Adresse der HTML Datei, in der das Javascript geladen wird! Also http://user-server.de/datei.html und nicht http://php-server.de/script.js.php.

Dadurch wird das Formular natürlich an den ersten Server geschickt - der reagiert aber nicht darauf, weil es sich eben nur um eine HTML Datei handelt. Du müsstest das so gestalten denke ich:

document.write("<form method='post' action='http://[code lang=php]<?php echo $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']; ?>'>");[/code]

Dann hast du allerdings eventuell das Problem, dass du wenn du die POST-Daten empfängst nicht mehr weißt, wo die herkommen, vl. solltest du deshalb noch ein hidden-Feld einfügen, was die Quell-URL angibt:

document.write("<input type='hidden' name='source' value='" + document.URL + "'>");

Du kannst dann mit deinem PHP Script entsprechend darauf reagieren - beachte allerdings, dass diese Angabe dann natürlich auch fälschbar ist und du sie also nicht für sicherheits-relevante Zwecke verwenden solltest!

MfG, Dennis.