mysqli_query () ожидает, что параметр 1 будет mysqli, значение null, указанное в mysqli_fetch_array (), ожидает, что параметр 1 будет mysqli_result, значение null указано в - PullRequest
0 голосов
/ 01 июля 2018

пожалуйста, помогите спасибо

мое сообщение об ошибке здесь

mysqli_query () ожидает, что параметр 1 будет mysqli, ноль указан в строке 28 и mysqli_fetch_array () ожидает, что параметр 1 будет mysqli_result, нулевым в строке 29

мой код

    <?php

    class Database{
    public $con;
    public $error;

    public function _construct(){
        $this->con=mysqli_connect("localhost","root","","db");
        if(!$this->con)
        {
            echo "Database Connection Error" .mysqli_connect_error($this->con);
        }

    }
    public function login($data)
    {
        $username =$data['username'];
        $password =$data['password'];

        if($username=="" || $password=="")
        {
            $msg="Field must not be empty";
            return $msg;
        }
        else
        {
            $query="SELECT * FROM tbl_table where username = '$username' AND 
            password = '$password'";
            $result=mysqli_query($this->con,$query);
            $row=mysqli_fetch_array($result);
            $user = $row['username'];
            $pass = $row['password'];

            if($username==$user && $password==$pass)
            {
                header("Location: dashboard.php");
            }
            else
            {
                $msg="Username and Password not match";
                return $msg;
            }               
        }
    }
}
    ?>

Ответы [ 2 ]

0 голосов
/ 01 июля 2018

У вас есть опечатка. Это должно быть __construct() обратите внимание на дополнительные _

0 голосов
/ 01 июля 2018

Передайте другой аргумент внутри mysqli_fetch_array (), второй аргумент - это тип массива, который вы хотите получить (MYSQLI_ASSOC). Так что сделайте его

mysqli_fetch_array($result,MYSQLI_ASSOC);

Или, возможно, по другой причине, что ваш mysqli_query ничего не возвращает. Это может быть из-за какой-то ошибки в вашем коде запроса. Попробуйте сделать этот запрос в базе данных MySQL и посмотрите, работает ли он.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...