2014-01-22 89 views
0

聰明的查詢工作正常,我可以回顯電子郵件地址和與用戶名關聯的密碼,但是當它指出電子郵件正在發出時,我仍然不會在我的郵箱中收到它。任何想法出了什麼問題?爲什麼我的php忘記密碼不發送電子郵件

這裏是我的全碼:

<?php session_start(); 
mysql_connect("localhost","root","");//database connection 
mysql_select_db("database"); 
if (isset($_POST['username'])){ 
    $username = $_POST['username']; 
    $query="select * from dbusers where username='$username'"; 
    $result = mysql_query($query); 
    $count=mysql_num_rows($result); 
    // If the count is equal to one, we will send message other wise display an error message. 
    if($count==1) 
    { 
     $rows=mysql_fetch_array($result); 
     $pass = $rows['password'];//FETCHING PASS 
     echo "your pass is ::".($pass).""; 
     $to = $rows['email']; 
     echo "your email is ::".$to; 
     //Details for sending E-mail 
     $from = "Your Password details"; 
     $url = "http://localhost.com"; 
     $body = "Reset Password 
     ----------------------------------------------- 
     Url : $url; 
     email Details is : $to; 
     Here is your password : $pass; 
     Sincerely, 
     Coding Cyber"; 
     $from = "[email protected]"; 
     $subject = "Here's your new password"; 
     $headers1 = "From: $from\n"; 
     $sentmail = mail ($to, $subject, $body, $headers1); 
    } else { 
    if ($_POST ['username'] != "") { 
    echo "No such username found!</span>"; 
     } 
     } 
    //If the message is sent successfully, display sucess message otherwise display an error message. 
    if($sentmail==1) 
    { 
     echo "<span style='color: #ff0000;'> Your Password Has Been Sent To Your Email Address.</span>"; 
    } 
     else 
     { 
     if($_POST['username']!="") 
     echo "<span style='color: #ff0000;'> Cannot send password to your e-mail address.Problem with sending mail...</span>"; 
    } 
} 
?> 

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Home: Webpage</title> 
</head> 
<body> 
<form action="" method="post"> 
     <label> Enter your User ID : </label> 
     <input id="username" type="text" name="username" /> 
     <input id="button" type="submit" name="button" value="Submit" /> 
    </form> 
</body> 
</html> 
+4

它不起作用的事實是PHP告訴你永遠不應該存儲純文本密碼的方式。 – PeeHaa

+2

你有郵件服務器嗎? – Christian

+0

@christian我只有xampp以phpmyadmin和apache運行。 – user3015758

回答

0

如果你的文件在本地主機的文件夾,你需要安裝一個本地郵件服務器,不漂亮有用的,但它的作品。

如果你在網上(在一個主辦方)網站它應該自動工作,或去cpanel並激活郵件。

+0

你好你如何去安裝這個郵件服務器在我的htdocs文件夾? (本地主機) – user3015758

1

當您使用xampp時:在您的xampp控件中激活您的Mercury Mail Transport。 否則,你的本地郵件服務器沒有啓動,你不能發送郵件。

<?php 
$a = '[email protected]'; 
$b = ''; 
$msg = 'Hello'; 
$header = 'From: [email protected]' . "\r\n" . 
'Reply-To: [email protected]' . "\r\n" . 
'X-Mailer: PHP/' . phpversion(); 

mail($a, $b, $msg, $header); 
?> 
+0

我已經啓動了mecury郵件傳輸,試圖重新運行代碼,但仍然沒有進入郵箱。任何解決方案? – user3015758

+0

嘗試做一個新的PHP - 頁面,只有郵件(xyz)消除你的代碼中的其他錯誤,並寫如果它的工作或沒有:) 檢查你的垃圾郵件文件夾以及 – Xatenev

+0

對不起你是什麼意思,新的PHP頁面?你可以通過輸入一些代碼來啓發我嗎? – user3015758

0

如果您正在運行在本地主機你的代碼,如果你想從本地服務器發送郵件然後通過PHP使用SMTP,而不是簡單的郵件功能,將永遠爲you.It的工作做得更好。

相關問題