我有以下代码。它在本地生成OTP password
并在屏幕上显示。我希望将密码发送到已登录用户的电子邮件地址。
代码如下
$query = mysql_query('SELECT username, password FROM user WHERE username = "'.$_POST['username'].'" AND password = "'.$_POST['password'].'" LIMIT 1', $connection);
if (mysql_num_rows($query) > 0)
{
$rand= rand(00000000,99999999);
mysql_query('UPDATE user SET otp="'.$rand.'" WHERE username = "'.$_POST['username'].'" LIMIT 1', $connection);
print '<script type="text/javascript">';
print 'alert("The OTP is '.$rand.' . Please remember otp for second level of authentication.")';
print '</script>';
}
else
{
mysql_query('UPDATE user SET loginfails= loginfails + 1 WHERE username = "'.$_POST['username'].'" LIMIT 1', $connection);
// header("Location: loginerror.php");
答案 0 :(得分:0)
在表格中更新OTP后使用以下代码。
我正在使用邮件功能向用户发送邮件。
请使用$ _SESSION ['email']更新登录用户的电子邮件ID;
$msg = "The OTP is '.$rand.';
$to = $_SESSION['email'];
// send email
mail($to,"Your OTP is",$msg);
答案 1 :(得分:-1)
您需要一台SMTP服务器才能开始用PHP发送邮件。不幸的是,实施相同的(个人观点)太令人头疼。我建议使用gmail smtp,或者你可以使用像sendgrid这样的服务,让你通过http api发送邮件。