致命的なエラー:nullのメンバー関数query()の呼び出し
ここで何が間違っているのか分かりません。私はオンラインのチュートリアルをたどっていましたが、これらのエラーがポップアップしました。
次のエラーが表示されます
エラー
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.';
}
}
?>
最初に、関数の外部で$ 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; }
この行を親構造に入れます:$ this-> load-> database();
function __construct() {
parent::__construct();
$this->load->library('lib_name');
$model=array('model_name');
$this->load->model($model);
$this->load->database();
}
このように..それは動作するはずです..