Ver Mensaje Individual
  #4 (permalink)  
Antiguo 22/03/2014, 16:47
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Guardar IP en mysql

El tema de la IP es algo complicado, y que ha dado tema para muchas discusiones. Puede terminar siendo algo complejo de resolver, dependiendo de lo que entiendas por "IP de la persona".
La única IP que PHP puede obtener es la del servidor desde el cual el usuario se conecta, pero no podrás obtener la IP que tiene asignada la propia PC del usuario, porque en realidad lo que peudes obtener es la IP pública, que pertenece al ISP donde ese usuario se conecta.
Esto significa que si quieres usarla como identificación de un único usuario en tu sistema, no te servirá porque múltiples usuarios conectados al mismo ISP exponen la misma IP pública. La otra, la de la PC conectada, es interna, privada del ISP y no se expone.
Si esa IP pública común te sirve, hay recursos simples para obtenerla. Esta es una función que puedes encontrar publicada en internet:
Código PHP:
Ver original
  1. function getRealIP() {
  2.         if (!empty($_SERVER['HTTP_CLIENT_IP']))
  3.             return $_SERVER['HTTP_CLIENT_IP'];
  4.            
  5.         if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
  6.             return $_SERVER['HTTP_X_FORWARDED_FOR'];
  7.        
  8.         return $_SERVER['REMOTE_ADDR'];
  9.     }
Para entender el funcionamiento de $_SERVER, te recomiendo leer el manual de referencia de PHP: http://www.php.net/manual/es/reserve...les.server.php
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)