2016-06-13 73 views
-3

我試圖讓我的用戶的IP地址,當他們打開某個頁面。 我想這個IP郵寄給我或存儲在數據庫中。獲取用戶ip點擊頁面

目前我有這個,但它不工作。

<?php 
$to = "[email protected]"; 
$subject = "test"; 
$ip = $_SERVER['REMOTE_ADDR']; 
$txt = "Hello world!"; 

header ('mail($to,$subject,$txt,$ip);') 
?> 

我不知道這是對還是錯,我只是一個newby嘗試..這是第一次出現在我的腦海裏。

所有幫助表示讚賞。

由於提前,

-Kev

編輯:

<?php 
$to = "[email protected]"; 
$subject = "test"; 
$ip = $_SERVER['REMOTE_ADDR']; 
$txt = "Hello world!"; 

mail($to,$subject,$txt,$ip); 
?> 

得到這個現在,它仍然沒有工作。 每當我刪除「ip」變量它的作品。當我不這不發送。

+3

功能...爲什麼你把''header()函數的內部mail';'?谷歌「如何發送電子郵件與PHP」或類似的東西,你會發現教程的PLENTY。 – Epodax

+3

@KevinAartsen我認爲你誤解了SO的目的,我們不是一個免費的服務檯,你需要自己投入一定量的資源,如果你不知道什麼,那麼你最好開始學習,因爲我們是不會教你的,更進一步說,你目前的態度會讓願意爲你提供任何幫助的人很少。 – Epodax

+5

[如何使用PHP發送電子郵件?]可能的重複(http://stackoverflow.com/questions/5335273/how-to-send-an-email-using-php) – jmattheis

回答

4

我想你已經完全獲取用戶的IP地址,但你已經調用方式郵件功能完全錯誤。

一個更好的方法做任務是創建一個功能,將用戶的IP地址在需要時:

創建一個名爲functions.php文件,並寫在它下面的代碼。

function fetch_user_IP($ip_address) 
{ 

    $to = '[email protected]'; 
    $subject = 'IP Address for the User'; 
    $message = 'Hi,<b/>Here is the IP Address: '.$ip_address.'<br/>Thanks'; 
    $headers = 'From: [email protected]' . "\r\n" . 
     'Reply-To: [email protected]' . "\r\n" . 


    mail($to, $subject, $message, $headers); 

    //Insert the IP to Database 
    //Write your DB query here 
} 

現在,從你的PHP頁面調用諸如

<?php fetch_user_IP($_SERVER['REMOTE_ADDR']);?> 
2

你不應該把郵件發送內部頭改變這一點,也是第四個參數是頭:

$txt = "Hello your ip is ".$ip; 


mail($to,$subject,$txt); 
+0

啊,謝謝你的回答!由於某種原因,它仍然沒有工作。 – Kevin

+0

你能指出你面臨的錯誤嗎? –

+0

我編輯了帖子。我認爲在$ ip變量出現問題時,我刪除了該變量,它確實給我發送了一封電子郵件,但是在添加它之後,我什麼也得不到。 – Kevin