Я ищу возможность восстановления пароля для веб-сайта, где пароль берется из моей пользовательской БД и отправляется в виде простого текста на электронную почту пользователя. Моя база данных пользователей содержит три столбца: идентификатор, адрес электронной почты и пароль. Вот мой database.php:
<?php
$servername='1.1.1.1';
$username='user';
$password='pass';
$dbname = "users";
$conn=mysqli_connect($servername,$username,$password,"$dbname");
if(!$conn){
die('Could not Connect My Sql:' .mysql_error());
}
?>
Кроме того, вот страница восстановления:
<?php
session_start();
include_once 'database.php';
if(isset($_POST['submit']))
{
$email = $_POST['email'];
$result = mysqli_query($conn,"SELECT * FROM users where email='" . $_POST['email'] . "'");
$row = mysqli_fetch_assoc($result);
$fetch_user_id=$row['email'];
$email_id=$row['email'];
$password=$row['password'];
if($email==$fetch_id) {
$to = $email;
$subject = "Password";
$txt = "Your password is : $password.";
$headers = "From: company" . "\r\n" .
"CC: email@gmail.com";
mail($to,$subject,$txt,$headers);
}
else{
echo 'invalid userid';
}
}
?>
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<center><p>Forgot Password</p></center>
<form action='' method='post'>
<table cellspacing='5' align='center'>
<tr><td>email:</td><td><input type='text' name='user_id'/></td></tr>
<tr><td></td><td><input type='submit' name='submit' value='Submit'/></td></tr>
</table>
</form>
</body>
</html>
Я довольно новичок в php и веб-разработке, однако я довольно легко реализовал логин / регистрацию. При этом, я полностью потерян с восстановлением электронной почты. Я ищу, чтобы клиенты могли отправлять свои электронные письма, и если они совпадают с записью в базе данных пользователей, пароль будет отправлен на отправленное электронное письмо. Я понимаю риски безопасности, связанные с отсутствием токена с истекающим сроком действия, однако для текущих нужд веб-сайта этого метода достаточно. Если бы кто-нибудь мог помочь направить меня в правильном направлении, это было бы очень признательно Кроме того, не уверен, что это полезно, но я запускаю это на Apache.