私は今、登録スクリプトでかなり進んでいます。これは私にとって驚くべき学習曲線でした。今のところ、ユーザー認識と登録メールの送信に関するいくつかのバグを修正しました。ただし、パスワードの回復に問題があります。現時点では、メールを認識させようとしています。これが私の HTML と PHP です。
HTML
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<?php include "header.php" ?>
<div id="wrapper">
<form method="post" action="">
<h2>Recover Password</h2>
<div id="underline"></div>
<ul>
<li>
<label for="usn">Email : </label>
<input type="text" maxlength="30" required autofocus name="reset" />
</li>
<li class="buttons">
<input type="submit" name="reset" value="Reset Pass" class="xbutton" />
</li>
</ul>
</form>
</div>
</body>
</html>
<?php include "prec.php" ?>
PHP
<?php
if($_POST)
{
if(empty($_POST['reset']))
{
echo 'Please enter all fields';
}
else
{
$email = $_POST['reset'];
$password = $_POST['password'];
$db_name =
$db_user =
$db_pass =
$conn = new PDO('mysql:host=localhost;dbname=tweezy_php', 'tweezy_php', 'XXXXXX',
array( PDO::ATTR_PERSISTENT => true ));
$stmt = $conn->prepare("SELECT email FROM users WHERE email = ? ");
$stmt->execute(array($email));
if($stmt->rowCount() === 1 )
{
echo "That email exists";
}
else
{
echo "Sorry, that email doesn't exsist.";
}
}
}
?>
なんらかの理由で、提供されたメールが何を入力しても認識されません。私のコードを見てみると、その理由はよくわかりません。いくつかのバリエーションを試しましたが、同じ結果が得られるようです。SQLクエリと関係があると思いますが、よくわかりません。
どんな洞察も素晴らしいでしょう!