tschulian Geschrieben 1. Juni 2015 Geschrieben 1. Juni 2015 Hallo, ich habe ein Programm das IP Adressen aus einer Tabelle ausliest. Nur leider wird bei manchen Usern statt der IPv4 Adresse die IPv6 Adresse bzw. zwei IPv4 Adressen eingetragen. Wie kann ich dafür sorgen, dass nur die IPv4 Adressen geloggt werden? Gibt ja sicher ein Command das man in den Header schreiben kann wie z.b der für einen festen Zeichensatz. Finde dazu leider nichts - womöglich liegt es daran, dass ich nach den falschen Begrifflichkeiten suche. Hier ein Screenshot zur veranschaulichung: Zitieren
feuerjinn Geschrieben 1. Juni 2015 Geschrieben 1. Juni 2015 Ist das PHP-Code welcher von dir geschrieben wurde oder ist das was externes? Deine Fehlerbeschreibung gibt kaum etwas verwertbares her, der Screenshot hilft ohne Code nicht. Du hast ein Problem bei der Verarbeitung, vielleicht liegt die Ursache ja bei der Eingabe? (EVA-Prinzip) Zitieren
tschulian Geschrieben 1. Juni 2015 Autor Geschrieben 1. Juni 2015 Von mir geschrieben. Ich verwende folgendes um die IPs zuerkennen: $_SERVER['HTTP_X_FORWARDED_FOR']; Warum? Weil mein Webserver auf einer Windowsmaschine läuft und die Domain-Umleitung via Proxy erfolgt und nur mit X FOWARDED FOR die echte Client-IP angezeigt wird. Zitieren
RipperFox Geschrieben 1. Juni 2015 Geschrieben 1. Juni 2015 Wenn dich die anderen Daten nicht interessieren: Schauen, ob $_SERVER['HTTP_X_FORWARDED_FOR'] ne IPv4 Adresse enthält und dann loggen Siehe z.B. PHP FILTER_VALIDATE_IP Filter Dass dir dann die Leute mit IPv6 oder welche die hinter nem Proxy sitzen durch die Lappen gehen ist klar.. Besser vllt so: What is the most accurate way to retrieve a user's correct IP address in PHP? - Stack Overflow Zitieren
tschulian Geschrieben 2. Juni 2015 Autor Geschrieben 2. Juni 2015 Das hab ich schon gefunden, aber es muss ja nen Grund haben weshalb bei manchen IPv6 oder mehrere IPv4 Adressen angezeigt werden...? Zitieren
mfk'); DROP TABLE Users;-- Geschrieben 2. Juni 2015 Geschrieben 2. Juni 2015 Das hab ich schon gefunden, aber es muss ja nen Grund haben weshalb bei manchen IPv6 oder mehrere IPv4 Adressen angezeigt werden...?Natürlich gibt es den. Die grundsätzliche Frage ist doch, was soll in deiner Tabelle stehen, wenn jemand über einen oder mehrere Proxies kommt, oder eben IPv6 benutzt? Wenn du das geklärt hast, kann man darüber reden, wie die Daten verarbeitet werden sollen. Zitieren
tschulian Geschrieben 2. Juni 2015 Autor Geschrieben 2. Juni 2015 Wenn jemand Proxys benutzt darf er nicht ins System. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.