sinvoll währe dies über das apache mod_geoip bereits vor dem php code abzufangen....
alternative ohne zusätzliche apache oder php module anhand des hosts allerdings nur mit manueller pflege gut nutzbar ...
PHP-Code:
<?php
$ip = $_SERVER['REMOTE_ADDR'];
// Host ermitteln
$host = gethostbyaddr($ip);
// Host-Korrekturen
$host = strtolower($host);
$hostTrans = array(
'.arcor-ip.net'=>'.de', '.t-dialin.net'=>'.de',
'.sui-inter.net'=>'.ch', '.drei.com'=>'.at',
'.proxad.net'=>'.fr', '.gaoland.net'=>'.fr',
'.mchsi.com'=>'.us', '.comcast.net'=>'.us',
);
$host = strtr($host, $hostTrans);
// Herkunftsland (TLD) ausschneiden
$country = (strpos($host, '.')===false) ?
$host :
substr(strrchr($host, '.'), 1);
// Fehler bei gethostbyaddr()
if($ip === $host)
$country = '?';
# Mögliche Inhalte von $country:
# de, uk, com, ?, localhost
?>
alternative mit http://dev.maxmind.com/geoip/legacy/geolite/
gibt da viele möglichkeiten...
http://www.designerscripte.net/showt...ie-Ganze-Seite!