0

私は自分の Web サイトでログインを作成していますが、ユーザー名またはパスワードが入力されたかどうかを確認し、有効なユーザー名またはパスワードであるかどうかを確認しようとしています。だから私はこれらを持っています: users.php:

<?php

       function user_exists($username) {

     $username = sanitize($username);
     return (mysql_result(mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `username` = '$username'"), 0) ==1) ? true : false;
}

         function user_active($username) {

     $username = sanitize($username);

              return (mysql_result(mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE`username` = '$username' AND `active` = 1"), 0) == 1) ? true : false;
}
?>

そして私はlogin.phpを持っています:

<?php
require('core/functions/users.php');


if (empty($_POST) === false){
    $username = $_POST['username'];
    $password = $_POST['password'];

    if (empty($username) || empty($password)){
        $errors[] = 'You need to enter a valid username or password';
    } else if (user_exists($username) === false) {
        $errors[] = 'We cant find that username. Have you registered?';
    } else if (user_active($username) === false) {
        $errors[] = 'You haven\'t activated your account!';
    } else {
        // here
    }

    print_r($errors);
}



?> 

私の問題は、正しいユーザー名とパスワードを入力すると、登録済みのエラーを出力する代わりに空白になることです。また、ランダムなユーザー名とパスワードを入力すると、空白になります。have you registered エラーが返されませんか? どうしたの?

4

0 に答える 0