ログインフォームを作成し、送信ボタンを押した後、ユーザーがデータベースに存在するかどうかを確認したいと思います。
if(isset($_POST['submitBtn'])){
if($_POST['senderLogin'] == 'customer'){
$checkIfExists = new CustomersDAO();
$stam = $checkIfExists->isExist($_POST["name"], $_POST["password"]);
var_dump($stam);
}
}
そして、私が好きなチェック:
public function isExist($name, $password) {
$this->connect();
if($this->con){
$sql = "SELECT * FROM customers WHERE name=? AND password=?";
$stmt = $this->db->prepare($sql);
$password = md5($password);
$stmt->bindParam(1, $name);
$stmt->bindParam(2, $password);
$stmt->execute();
$fetched = $stmt->fetchColumn();
$this->disconnect();
if($fetched > 0) {
return true;
} else {
return FALSE;}
}
}
データベースのパスワードは md5 で暗号化されています。
customers テーブルに存在するユーザーを入力しようとしましたが、うまくいきませんでした。
私は名前だけを照合しようとしましたが、うまくいきました。問題は、送信されたパスワードとデータベースのパスワードの比較にあります。