【发布时间】:2017-10-14 06:50:31
【问题描述】:
这是每次我收到此错误时的database.php 代码:
注意:未定义变量:dbConn in C:\xampp\htdocs\couriermanagement\database.php 第 15 行
警告:mysqli_query() 期望参数 1 为 mysqli,给定 null 在第 15 行的 C:\xampp\htdocs\couriermanagement\database.php 中
警告:mysqli_error() 只需要 1 个参数,0 给出 C:\xampp\htdocs\couriermanagement\database.php 第 15 行
<?php
// database connection config
$dbHost = 'localhost';
$dbUser = 'root';
$dbPass = '';
$dbName = 'courier_db';
$dbConn = mysqli_connect($dbHost, $dbUser, $dbPass, $dbName) or die ('MySQL
connect failed. ' . mysqli_error($dbConn));
//mysqli_select_db($dbConn ,$dbName) or die('Cannot select database. ' .
mysqli_error($dbConn));//
function dbQuery($sql)
{
$result = mysqli_query($dbConn,$sql) or die(mysqli_error());
return $result;
}
function dbAffectedRows()
{
global $dbConn;
return mysqli_affected_rows($dbConn);
}
function dbFetchArray($result, $resultType = MYSQL_NUM) {
return mysqli_fetch_array($result, $resultType);
}
function dbFetchAssoc($result)
{
return mysqli_fetch_assoc($result);
}
function dbFetchRow($result)
{
return mysqli_fetch_row($result);
}
function dbFreeResult($result)
{
return mysqli_free_result($result);
}
function dbNumRows($result)
{
return mysqli_num_rows($result);
}
function dbSelect($dbName)
{
return mysqli_select_db($dbName);
}
function dbInsertId()
{
return mysqli_insert_id();
}
?>
【问题讨论】:
-
你必须提供两个参数,一个用于查询,另一个用于连接 mysqli_query($query,$conn)
-
无论哪种方式都可以调用查询 $result = mysqli_query($dbConn, $sql) 添加连接到查询或 $result = $dbConn->query($sql); Check the doc
-
$result = $dbConn->query($sql);使用了这个但仍然出现错误注意:未定义的变量:第 15 行 C:\xampp\htdocs\couriermanagement\database.php 中的 dbConn 致命错误:未捕获的错误:调用 C:\xampp 中的成员函数 mysqli_query() on null \htdocs\couriermanagement\database.php:15 堆栈跟踪:#0 C:\xampp\htdocs\couriermanagement\login.php(13): dbQuery('SELECT DISTINCT...') #1 {main} 在 C 中抛出: \xampp\htdocs\couriermanagement\database.php 第 15 行