У меня есть логин, где мне нужно получить данные, указанные в письме, я делаю это с помощью select и pdo.Но это не работает.
Я получаю пароль и адрес электронной почты, данные из формы.Затем я проверяю, не пусто ли там, затем я хочу получить пароль из базы данных, чтобы проверить его с заданным паролем.Если это хорошо, тогда я даю идентификатор учетной записи и имя пользователя в сеансе.Если это не хорошо, я устанавливаю заголовок и выдаю сообщение об ошибке
try {
$connect = new PDO("mysql:host=$hostnaam; dbname=$databasenaam", $gebruikersnaam, $wachtwoord);
$connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e)
{
echo "Connectie mislukt: " . $e->getMessage();
}
<?php
ini_set('display_errors', 1); ini_set('log_errors',1); error_reporting(E_ALL); mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
ob_start();
if(isset($_REQUEST['password']))
{
require 'connect.php';
$password = $_REQUEST['password'];
$mail = $_REQUEST['email'];
if(empty($mail) || empty($password)){
header('location: ../login.php?error=empty');
exit();
}
else{
$sql = "SELECT * FROM account WHERE email = $mail";
$result = $connect->prepare($sql);
$result->execute();
$row = $result->fetchAll(PDO::FETCH_ASSOC);
$passwordCheck = password_verify($password_hashed, $pdo['wachtwoord']);
if($passwordCheck == false ){
header("Location: ../login.php?error=passwordWrong");
exit();
}
else if($passwordCheck == true){
session_start();
$_SESSION['userId'] = $row['account_id'];
$_SESSION['username'] = $row['gebruikersnaam'];
header("Location: ../index.php?login=succes");
exit();
}
else{
header("Location: login.php?error=noUser");
exit();
}
}
}
else{
header("Location: ../login.php?error=fail");
exit();
}