Andreas Korthaus: IP-Adresse auslesen?

Beitrag lesen

Hallo!

habe dies auch angegeben:
$_SERVER["REMOTE_ADDR"]
gibt mir aber immer meine Homepage an "www.mtevents.de"
und nicht die jeweilige IP Adresse.

das ist aber seltsam.

In der CGI-Spezifikation steht dazu:

#  REMOTE_HOST

The hostname making the request. If the server does not have this
information, it should set REMOTE_ADDR and leave this unset.

REMOTE_ADDR

The IP address of the remote host making the request.

Daran sollte sich der Apache eigentlich halten: http://httpd.apache.org/docs-2.0/mod/mod_cgi.html#env. Bei der Apache sapi von PHP sollte das eigentlich genau so funktionieren.

Evtl. ist da etwas falsch konfiguriert, kann ich mir aber eigentlich kaum vorstellen.

Hast Du Dir mal print_r($_SERVER) ausgeben lassen, oder phpinfo()? Evtl. wird die IP aufgrund irgendeiner seltsamen Konfiguration woanders gespeichert.

Aber zu Deinem ursprünglichen Problem - was willst Du da mit der IP machen? Bzw. was willst Du genau verhindern? Dass man Formulare aus Versehen doppelt abschickt?

Da gibt es verschiedene Ansätze das zu verhindern. Einer wäre eine Header-Weiterleitung nach Speicherung der Daten.

siehe:
http://www.php-faq.de/q/q-formular-mehrfach.html

Ein anderer wäre die Verwendung eines eindeutigen Token als hidden-field im Formular, der serverseitig (Datei, DB, Session...) gespeichert wird und nur einmal verwendet werden kann.

siehe:
http://phpsec.org/projects/guide/2.html#2.4
http://www.php-faq.de/q/q-scripte-abstimmung.html

Grüße
Andreas

--
SELFHTML Tipps & Tricks: http://aktuell.de.selfhtml.org/tippstricks/