Foros del Web » Programando para Internet » PHP »

como le quito los puntos a una direccion ip

Estas en el tema de como le quito los puntos a una direccion ip en el foro de PHP en Foros del Web. Tengo un problema y es que leo la direccion ip de el pc del cual se conecta a mi sistema (por ejemplo 192.168.25.1) y ahora ...
  #1 (permalink)  
Antiguo 15/05/2009, 14:26
 
Fecha de Ingreso: abril-2009
Mensajes: 14
Antigüedad: 15 años
Puntos: 0
como le quito los puntos a una direccion ip

Tengo un problema y es que leo la direccion ip de el pc del cual se conecta a mi sistema (por ejemplo 192.168.25.1) y ahora necesito que esta dirección la pueda leer como un numero osea (192168025001) como lo puedo hacer alguien me puede ayudar???
  #2 (permalink)  
Antiguo 15/05/2009, 14:27
 
Fecha de Ingreso: mayo-2009
Ubicación: Madrid
Mensajes: 100
Antigüedad: 14 años, 11 meses
Puntos: 3
Respuesta: como le quito los puntos a una direccion ip

por favor revisaros el manual de tratamiento de candeas

str_replace o str_ireplace $tuip = str_ireplace(".","",$tuip);

* str_replace() - Sustitiye todas las apariciones de una cadena en otra
* preg_replace() - Realizar una operación de búsqueda y reemplazo con expresiones regulares
* strtr() - Traduce ciertos caracteres
  #3 (permalink)  
Antiguo 15/05/2009, 14:39
 
Fecha de Ingreso: abril-2009
Mensajes: 14
Antigüedad: 15 años
Puntos: 0
Respuesta: como le quito los puntos a una direccion ip

ok funciona muy bien...ahora tengo otro problema que en este caso me queda 192168251 y necesito es que me quede 192168025001 hay alguna manera??
  #4 (permalink)  
Antiguo 15/05/2009, 14:48
 
Fecha de Ingreso: mayo-2009
Ubicación: Madrid
Mensajes: 100
Antigüedad: 14 años, 11 meses
Puntos: 3
Respuesta: como le quito los puntos a una direccion ip

Tratamiento de cadenas, tu quieres que la ip tenga rangos de 3 en 3 pues facilmente

divide primera parte de la cadena 0,3 , comprueba que sea menor de 255 y si es ok continua sino corta en 2 y lo mismo ta terminar, vamos a jugar un rato con tratamiento de cadenas
  #5 (permalink)  
Antiguo 15/05/2009, 14:51
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: como le quito los puntos a una direccion ip

Solo por curiosidad, ¿porque necesitas la IP sin puntos?
  #6 (permalink)  
Antiguo 15/05/2009, 14:55
 
Fecha de Ingreso: abril-2009
Mensajes: 14
Antigüedad: 15 años
Puntos: 0
Respuesta: como le quito los puntos a una direccion ip

hay una funcion en php para rellenar que es str_pad pero esto no me funciona ya que pone ceros a la derecha o a la izquierda . hay alguna otra forma de utilizarla??
  #7 (permalink)  
Antiguo 15/05/2009, 14:56
 
Fecha de Ingreso: abril-2009
Mensajes: 14
Antigüedad: 15 años
Puntos: 0
Respuesta: como le quito los puntos a una direccion ip

para responder tu curiosidad es porque necesito tomarla como un numero porque solo un determinado rango de ip entran al sistema.. y esta se me hace la manera mas fácil!!
  #8 (permalink)  
Antiguo 15/05/2009, 14:59
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: como le quito los puntos a una direccion ip

Bueno, PHP tiene una función para comparar versiones de PHP, pero segun los comentarios funciona muy bien para comparar IPs:
http://www.php.net/manual/en/functio...on-compare.php
Puede sonar loco xD Pero en realidad funciona.

Cita:
Iniciado por Niraj Bhawnani
This function also works nicely when comparing IP addresses :)
  #9 (permalink)  
Antiguo 15/05/2009, 16:59
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: como le quito los puntos a una direccion ip

Cita:
divide primera parte de la cadena 0,3
puedes rellenar con esta funcion
$z = sprintf("%03d",$cadenaip);

saludines!!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #10 (permalink)  
Antiguo 15/05/2009, 17:05
 
Fecha de Ingreso: septiembre-2008
Mensajes: 29
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: como le quito los puntos a una direccion ip

porque no guardas las ip como un cadena y luego las comparas como tal...?? y dejas de preocuparte de quitar puntos y ceros!!
  #11 (permalink)  
Antiguo 15/05/2009, 19:36
Avatar de argy  
Fecha de Ingreso: octubre-2007
Ubicación: Longitud 75º Latitud 18º Sur
Mensajes: 614
Antigüedad: 16 años, 5 meses
Puntos: 18
Respuesta: como le quito los puntos a una direccion ip

si solo necesitas determinado rango, entonces no te debes de darte tanto trabajo ya que con una expresión regular lo puedes lograr y es más con pocas líneas de código.

suerte.
__________________
Software libre para un mundo libre.

Eventualmente en el foro.
  #12 (permalink)  
Antiguo 16/05/2009, 07:39
 
Fecha de Ingreso: abril-2009
Mensajes: 14
Antigüedad: 15 años
Puntos: 0
Gracias ...me han aportado resto ...

Esto es lo que qeuria hacer por si le sirve a alguno:


<?
$ip=0;
if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip = $_SERVER['REMOTE_ADDR'];

}

$ip1= str_ireplace(".","*",$ip);
$matriz= explode ("*",$ip1);
$ElementosdelaMatriz= count($matriz);
for ($contador=0; $contador < $ElementosdelaMatriz; $contador++){
$matriz[$contador]= str_pad($matriz[$contador], 3, "0", str_pad_left);
}
$cadenafinal=implode($matriz);
echo($cadenafinal);


?>

Última edición por GatorV; 16/05/2009 a las 16:49
  #13 (permalink)  
Antiguo 16/05/2009, 16:50
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: como le quito los puntos a una direccion ip

En dado caso porque no usas las funciones ip2long y long2ip para eso?

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:41.