Foros del Web » Programando para Internet » PHP »

Recibir IP usuario con Mail()

Estas en el tema de Recibir IP usuario con Mail() en el foro de PHP en Foros del Web. La idea es que en una web modular cuando un usuario intenete entrar en una página inexistente se dispare un envio a mi correo con ...
  #1 (permalink)  
Antiguo 21/05/2007, 05:02
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
Recibir IP usuario con Mail()

La idea es que en una web modular cuando un usuario intenete entrar en una página inexistente se dispare un envio a mi correo con la ip del usuario que intenta acceder. Si sólo se recibe uno no pasa nada es un simple error del usuario, si se reciben muchisimos es que están intentando hackear la web.
Lo de mandar el correo es facil con la función mail().
Código:
mail($destinatario,$asunto,$cuerpo,$headers)
Saber la ip del usuario también (mientras no pase por proxy). Si no voy mal seria...
Código:
<? $ip = $_SERVER["REMOTE_ADDR"]; ?>
El problema es incluir la variable $ip en el cuerpo del mensaje de correo. Como se puede hacer?

Un saludo.
  #2 (permalink)  
Antiguo 21/05/2007, 05:11
Avatar de vb2005  
Fecha de Ingreso: noviembre-2005
Ubicación: Paderborn - Alemania
Mensajes: 566
Antigüedad: 18 años, 5 meses
Puntos: 24
Re: Recibir IP usuario con Mail()

a la variable cuerpo le agregas el IP

se tiene que haber predefinido el cuerpo como tu lo quieras y tambien la variable $ip tiene que contener al mismo

Código PHP:
$cuerpo="Ip: ".$ip." <br>Cuerpo: ".$cuerpo
  #3 (permalink)  
Antiguo 21/05/2007, 05:53
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
Re: Recibir IP usuario con Mail()

Gracias por la solución.
Yo creia que dentro del $cuerpo (con etiquetas html) se tenian que usar las etiquetas php.
Codigo erroneo:
Código:
$cuerpo = '
<html>
<head>
   <title>Prueba de correo</title>
</head>
<body>
<h1>ERROR</h1>
<p>
<b>Posible ataque</b>. A mira que está pasando.
</p>
<? echo "Ip:". $ip ."<br>";
echo "ISP:". $isp ."<br>";
?>
</body>
</html>
';
En realidad el código tendria que ser este:

Código:
$cuerpo = "
<html>
<head>
   <title>Prueba de correo</title>
</head>
<body>
<h1>ERROR</h1>
<p>
<b>Posible ataque</b>. A mira que está pasando.
</p>
Ip: $ip <br>
ISP: $isp <br>

</body>
</html>
";
Pero no entiendo porque no se usan etiquetas PHP
  #4 (permalink)  
Antiguo 21/05/2007, 08:36
Avatar de vb2005  
Fecha de Ingreso: noviembre-2005
Ubicación: Paderborn - Alemania
Mensajes: 566
Antigüedad: 18 años, 5 meses
Puntos: 24
Re: Recibir IP usuario con Mail()

porque adentro de una variable no puedes poner un echo

dentro de todo siempre las variales las pongo fuera de las mismas, para diferenciarlas facilmente asi:
Código PHP:
$cuerpo "<html>
<head>
   <title>Prueba de correo</title>
</head>
<body>
<h1>ERROR</h1>
<p>
<b>Posible ataque</b>. A mira que está pasando.
</p>
Ip: "
.$ip." <br>
ISP: "
.$isp." <br>

</body>
</html>"

  #5 (permalink)  
Antiguo 21/05/2007, 09:16
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
Re: Recibir IP usuario con Mail()

Gracias por la explicación.
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 21:18.