• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Per PHP Provider und Land der IP erkennen

jakestyler

Mitglied
Hallo,
ich arbeite an einer Seite gegen die Telekom-"Drossel".
Wenn der Provider die Telekom ist und das Land Deutschland, soll in einem Textfeld Telekom Deutschland stehen.
Was ich nicht hinbekomme Ist die Abfrage des Providers und des Landes über IP.

die IP bekomme ich so heraus:
PHP:
$ip=$REMOTE_ADDR;

Den Provider bekomme ich allerdings nicht wirklich raus, ich benutze folgendes:
PHP:
$provider =gethostbyaddr($_SERVER["REMOTE_ADDR"]);

Die Ausgabe ist aber nicht z.B Telekom sondern irgendeine Adresse. Muss das so sein?

Und wie ich das Land rausbekomme weiß ich garnicht.

danke schonmal für Hilfe! :)
 
Ja, das muss so sein. Das ist der Hostname. Anhand des Aufbaus von diesem kann man in Bezug auf deutsche Provider jedoch meist erkennen um welche es sich handelt. Freenet hat deutlich andere Hostnames als die Telekom. Ein Bestandteil des Hostnames eines Providers ist dabei immer identisch, auf den müsstest Du prüfen.

Das Herkunftsland einer IP kann man z.B. hierüber ermitteln:
PHP: GeoIP - Manual
Daneben gibt es noch mehrere weitere Geolocation-Dienste und APIs die man nutzen kann.

Beachte, dass in Deutschland bestimmte Regeln für die Erfassung von IP-Adressen gelten.
 
Zurück
Oben