致命错误:在 null 上调用成员函数 query()

问题描述 投票:0回答:2

我不确定这里出了什么问题。我只是按照在线教程进行操作,然后就出现了这些错误。

我收到以下错误

错误

Notice: Undefined variable: db in C:\xampp\htdocs\wisconsindairyfarmers\admin\login.php on line 7

Fatal error: Call to a member function query() on null in C:\xampp\htdocs\wisconsindairyfarmers\admin\login.php on line 7

代码

<?php
$db = new mysqli('127.0.0.1', 'root', '', 'wisconsindairyfarmers');
?>

<?php
require '../db/connect.php';
require '../functions/general.php';

    function user_exists($username){
        //$username = sanitize($username);
        $result = $db->query("SELECT COUNT(UserId) FROM users WHERE UserName = '$username'");
        if($result->num_rows){
        return (mysqli_result($query, 0) == 1) ? true : false;
    }}

if(empty($_POST) === false){

    $username = $_POST['username'];
    $password = $_POST['password'];

    if(empty($username) === true || empty($password) === true){ 
        echo 'You need to enter a username and password';
    }
    else if(user_exists($username) === false) {
        echo 'We can\'t find that username.';
    }
}

?>
php mysql sql database-connection
2个回答
24
投票

首先,您在函数外部声明了 $db。如果你想在函数内部使用它,你应该将它添加为另一个参数:

function user_exists($db, $username){
   ...

而不是这样称呼它:

user_exists($db, $username)

0
投票

将此行放入父构造中:$this->load->database();

function  __construct() {
    parent::__construct();
    $this->load->library('lib_name');
    $model=array('model_name');
    $this->load->model($model);
    $this->load->database();
}

这样..应该可以工作..

© www.soinside.com 2019 - 2024. All rights reserved.