복붙노트

[SQL] 치명적인 오류 : 널 (null)의 멤버 함수 쿼리에 전화 ()

SQL

치명적인 오류 : 널 (null)의 멤버 함수 쿼리에 전화 ()

나는 확실히 무슨 일이 잘못려고하고 있지 않다. 난 그냥 온라인 자습서를 다음되었고, 이러한 오류는 팝업.

나는 다음과 같은 오류가 받고 있어요

오류

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.';
    }
}

?>

해결법

  1. ==============================

    1.첫째, 당신은 함수 외부 $ DB를 선언했다. 당신은 함수 내에서 그것을 사용하려는 경우, 당신은 당신의 기능 코드의 시작에서이 문제를 놓아야합니다 :

    첫째, 당신은 함수 외부 $ DB를 선언했다. 당신은 함수 내에서 그것을 사용하려는 경우, 당신은 당신의 기능 코드의 시작에서이 문제를 놓아야합니다 :

    global $db;
    

    당신이 쓴 때 나는 추측 :

    if($result->num_rows){
            return (mysqli_result($query, 0) == 1) ? true : false;
    

    당신이 정말 원한했다 :

    if ($result->num_rows==1) { return true; } else { return false; }
    
  2. ==============================

    2.부모 구조에서이 줄을 넣어 : $ this->로드 -> 데이터베이스를 ();

    부모 구조에서이 줄을 넣어 : $ this->로드 -> 데이터베이스를 ();

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

    이런 식으로 .. 그것을 작동합니다 ..

  3. from https://stackoverflow.com/questions/30992830/fatal-error-call-to-a-member-function-query-on-null by cc-by-sa and MIT license