Ver Mensaje Individual
  #2 (permalink)  
Antiguo 07/04/2009, 22:19
Avatar de elbuensaint
elbuensaint
 
Fecha de Ingreso: marzo-2009
Ubicación: Chiwas
Mensajes: 178
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: Web Vista en un solo País

navegando por la web me encontre con una funcion en php para detectar el pais del visitante por medio de la IP, te lo he adaptado para los fines que quieres:
Código PHP:
<?php
//Obtener IP:
$_SERVER["HTTP_CLIENT_IP"]!=""?$ip=$_SERVER["HTTP_CLIENT_IP"]:$ip=$_SERVER["REMOTE_ADDR"];
//Función de obtención de IP (basado en la web de webhosting.info)
   
function getCountry($ip_address){
      
//By Marc Palau (http://www.nbsp.es)
      
$url "http://ip-to-country.webhosting.info/node/view/36";
      
      
$inici "src=/flag/?type=2&cc2=";
      
      
$ch curl_init();
      
curl_setopt($chCURLOPT_URL$url);
      
curl_setopt($chCURLOPT_POST,"POST");
      
curl_setopt($chCURLOPT_POST1);
      
curl_setopt($chCURLOPT_POSTFIELDS"ip_address=$ip_address"); 
      
      
ob_start();
      
      
curl_exec($ch);
      
curl_close($ch);
      
$cache ob_get_contents();
      
ob_end_clean();
      
      
$resto strstr($cache,$inici);
      
$pais substr($resto,strlen($inici),2);
      
      return 
$pais;
   }
//obtención de código de país:
$pais strtolower(getCountry($ip));

if (
$pais == 'us'){ ?>
...CODIGO HTML DE LA PAGINA...
<?php
}else{ echo 'This site is only for United States'; }

?>
En el else puedes poner lo que quieras, cualquier adevertencia o incluso un redireccionamiento a google o algun otra pagina, ya que no podran ver el sitio.
Este codigo lo tendras que poner en todas las paginas para que funcione, donde pone "CODIGO HTML DE LA PAGINA" ahi pondras todo el codigo de la pagina.

Espero te sirva

Nota: en $pais == 'us', no estoy del todo seguro si asi es como se define estados unidos como pais, pero es lo mas probable, a mi mexico me sale como mx. Tendrias que probar el codigo con alguien que resida en estados unidos para ver si le funciona.