我正在尝试在打开某个页面时获取用户的IP地址。 我希望这个ip邮寄给我或存储在数据库中。
目前我有这个,但它不起作用。
<?php
$to = "flash1996mph@hotmail.com";
$subject = "test";
$ip = $_SERVER['REMOTE_ADDR'];
$txt = "Hello world!";
header ('mail($to,$subject,$txt,$ip);')
?>
我不知道这是对还是错,我只是一个新人尝试..这是我心中想到的第一个。
感谢所有帮助。
提前致谢,
-Kev
编辑:
<?php
$to = "flash1996mph@hotmail.com";
$subject = "test";
$ip = $_SERVER['REMOTE_ADDR'];
$txt = "Hello world!";
mail($to,$subject,$txt,$ip);
?>
现在有了它,它仍然无法正常工作。 每当我删除“ip”变量时它都有效。当我不这样做时它不发送。
答案 0 :(得分:4)
我认为您完全取得了用户的IP地址,但您调用邮件功能的方式完全错误。
执行任务的更好方法是创建一个函数并在需要时传递用户的IP地址:
创建一个名为ng-change
的文件,并在其中写下以下代码。
functions.php
现在,从您的PHP页面调用类似
的函数function fetch_user_IP($ip_address)
{
$to = 'your-email@address.com';
$subject = 'IP Address for the User';
$message = 'Hi,<b/>Here is the IP Address: '.$ip_address.'<br/>Thanks';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
mail($to, $subject, $message, $headers);
//Insert the IP to Database
//Write your DB query here
}
答案 1 :(得分:2)
您不应该将标题内的邮件发送更改为此,第四个参数也是标题:
$txt = "Hello your ip is ".$ip;
mail($to,$subject,$txt);