我有一些腳本from the internet允許客戶重置他們的密碼,如果他們需要但我似乎無法得到它的工作。忘記密碼不工作
這是多麼我已經實現了它:
<?php
error_reporting(0);
$EmailAddress=$_POST['EmailAddress'];
if($_POST['submit']=='Send')
{
require "db.inc";
$query="SELECT * from members WHERE EmailAddress='$EmailAddress'";
$result=mysql_query($query) or die(error);
if(mysql_num_rows($result))
{
echo "User exist";
}
else
{
echo "No user exist with this email id1";
}
}
if(mysql_num_rows($result))
{
$code=rand(100,999);
$message="You activation link is: http://yourwebsitename.com/forgot.php? EmailAddress=$EmailAddress&code=$code";
mail($EmailAddress, "Subject Goes Here", $message);
echo "Email sent";
}
else
{
echo "No user exist with this email id2";
}
?>
這是一個重定向到該網頁的形式
<form method="POST" action="EmailPassword.php">
<div class="Row">
<div class="Lable">Email Address:</div> <!--End of Lable-->
<div class="input">
<input type="email" id="EmailAddress" class="detail" name="EmailAddress" placeholder="Email Address" required />
</div> <!--End input-->
</div> <!--End row-->
<br />
<div class="submit">
<input type="submit" id="Reset" Name="submit" value="Send Password" />
</div><!--End of .submit-->
</form>
我得到的錯誤是
無用戶存在這個電子郵件id2。
** **危險:您正在使用[**的**過時的數據庫API(http://stackoverflow.com/q/12859942/19068),並應使用[現代更換] (http://php.net/manual/en/mysqlinfo.api.choosing.php)。你也**易受[SQL注入攻擊](http://bobby-tables.com/)**,現代的API會使[防禦]更容易(http://stackoverflow.com/questions/60174/best-way-to-prevent-sql-injection-in-php)自己從。 – Quentin
您錯過了所有嘗試從您在電子郵件中發送的URL中讀取數據的代碼 – Quentin
是的,@Quentin說過,必須有更多的代碼,可能在兩個相同的if語句(id1和id2)之間, 。 – Shomz