2015-01-01 2 views
1

Я пытаюсь сделать систему входа в систему с подтверждением электронной почты, поэтому, когда пользователь подтвердит адрес электронной почты, значение хэша в базе данных изменится с значения MD5 на «подтверждено», а затем в файле logon.php Я использовал:

if (isset($_POST['submit'])) 
{ 
    $confirmed = 'confirmed'; 
    $username = $_POST['username']; 
    $password = $_POST['password']; 

    $query = "SELECT id, username FROM users WHERE username = ? AND hash = ? AND password = SHA(?) LIMIT 1"; 
    $statement = $databaseConnection->prepare($query); 
    $statement->bind_param('sss', $username, $password, $confirmed); 

    $statement->execute(); 
    $statement->store_result(); 

    if ($statement->num_rows == 1) 
    { 
     $statement->bind_result($_SESSION['userid'], $_SESSION['username']); 
     $statement->fetch(); 
     header ("Location: index.php"); 
    } 
    else 
    { 
     echo "Username/password combination is incorrect."; 
    } 
} 

Я уже попробовал все, но $statement->num_rows всегда возвращает 0, кто-нибудь может мне помочь? Пожалуйста

+0

В стороне нет, положи в 'exit' после' header' Перенаправление линии –

ответ

-1

Я думаю, что вы ищете

$statement->rowCount() 

Я надеюсь, что помог