【发布时间】:2015-06-23 02:20:34
【问题描述】:
我不确定这里出了什么问题。我只是在网上学习一个教程,然后弹出这些错误。
我收到以下错误
错误
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变量位于函数内部,因此超出了定义它的代码的范围。声明它是全局的,或者更好的是,将它作为参数传递给你的函数。请参阅scope上的 PHP 手册 -
我更改了变量,第一个错误已修复,但我仍然收到:致命错误:调用未定义函数 mysqli_result()
-
我认为这是因为您在第一部分使用 OOP,而对结果使用程序。
-
我是 php 新手,如何解决这个问题?
-
我认为这是因为
mysqli_result()不是函数。我真的不清楚那段代码试图做什么,但mysqli_result()在 PHP 中不存在。
标签: php mysql sql database-connection