• Lunes 23 de Diciembre de 2024, 11:38

Autor Tema:  Problema al mostrar el pais de la IP  (Leído 1096 veces)

th3r0rn

  • Miembro activo
  • **
  • Mensajes: 49
  • Nacionalidad: mx
    • Ver Perfil
    • http://imgeek.net
Problema al mostrar el pais de la IP
« en: Sábado 21 de Noviembre de 2009, 04:42 »
0
Hola, tengo un problema al querer mostrar unos datos en una pagina, lo que intento es mostrar el pais del que viene la ip La base de datos de rangos de ip es enorme, no se si sea por eso, me dice lo siquiente al ejecutarlo:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/phpmexic/public_html/pruebas/ip/determinarPais.php on line 14
El pais que corresponde a la IP 189.132.182.42 es: .
El link es:
http://phpmexico.net/pruebas/ip/determinarPais.php
aunque dudo que sea por eso :(
La base de datos la baje de http://ip-to-country.webhosting.info/
Aqui mi code que muuestra los datos:
Código: PHP
  1. <?php
  2.  
  3. /* Se incluyen el mini-script que abre la base de datos. */
  4.  
  5.   include ("abrirDB.php");
  6.  
  7. /* Se incluye el archivo que contiene la función para obtener la IP del cliente. */
  8.  
  9.   include ("obtenerIP.php");
  10.  
  11. /* Se obtiene la IP del cliente, en el formato típico: "xxx.xxx.xxx.xxx". */
  12.  
  13.   $direccionReal=obtenerIPCliente();
  14.  
  15. /* Se convierte la IP a valor numérico. */
  16.  
  17.   $direccionNumerica=ip2long($direccionReal);
  18.  
  19. /* Se localiza el registro que corresponde a la ip numérica. */
  20.  
  21.   $consulta="SELECT countryCode2, countryName FROM ipcountry WHERE ipStart<=$direccionNumerica AND ipEnd>=$direccionNumerica;";
  22.  
  23.   $hacerConsulta=mysql_query($consulta, $conexion);
  24.  
  25. /* Se recuperan los datos de "código del país de dos letras y nombre del país. */
  26.  
  27. $datosDePais=mysql_fetch_array ($hacerConsulta);
  28.  
  29.   $codigoDePais=strtolower($datosDePais["countryCode2"]);
  30.  
  31.   $nombreDePais=$datosDePais["countryName"];
  32.  
  33. /* Se obtiene el nombre de la imagen de la bandera del país. */
  34.  
  35.   $nombreDeImagen="imagenes/banderas/".$codigoDePais.".gif";
  36.  
  37. /* Se muestran los resultados. */
  38.  
  39.   echo ("El pais que corresponde a la IP $direccionReal es: $nombreDePais. ");
  40.  
  41.   echo ("<IMG SRC='$nombreDeImagen' ALT='$nombreDEPais'>");
  42.  
  43. /* Se liberan recursos y se cierra la BBDD. */
  44.  
  45.  // mysql_free_result ($hacerConsulta);
  46.  
  47.  
  48.  
  49.   mysql_close ($conexion);
  50.  
  51. ?>
  52.  
  53.  
  54.  

th3r0rn

  • Miembro activo
  • **
  • Mensajes: 49
  • Nacionalidad: mx
    • Ver Perfil
    • http://imgeek.net
Re: Problema al mostrar el pais de la IP
« Respuesta #1 en: Sábado 21 de Noviembre de 2009, 07:02 »
0
Problema resuelto, tenia mal en la conexion a mi base de datos.
Saludos y disculpen las molestias.