【发布时间】:2017-09-28 05:49:38
【问题描述】:
当用户在表单中填写他们的电子邮件地址时,我会检查该电子邮件地址是否存在于数据库中。
为什么代码不起作用?
这是我的代码:
php
<?php
session_start();
require 'database.php';
if(!empty($_POST['email'])):
$records = $conn->prepare('SELECT id,email,password FROM users WHERE email = :email');
$records->bindParam(':email', $_POST['email']);
$records->execute();
$results = $records->fetch(PDO::FETCH_ASSOC);
echo 'Working';
if(isset($_REQUEST['email'])){
$email_to = $_REQUEST['email'];
$email_subject = "Forgotten password";
$email_from = "password@scoreplay.net";
$email_message = $results['password'];
$headers = 'From: ' .$email_from . "\r\n";
@mail($email_to, $email_subject, $email_message, $headers);
#header("Location: /success.php");
exit();
}
endif;
?>
【问题讨论】:
-
如何处理什么?
-
$email = "???"; -
您是在登录用户还是只是检查电子邮件是否存在?
-
@chris85 我只是在检查邮件是否存在。
-
所以不需要
password_verify($_POST['password'], $results['password'])。只需检查您是否收到退货,php.net/manual/en/pdostatement.rowcount.php。