我搜索了谷歌,我得到了一个明显没有工作的提示,因为我没有按照写方式进行。我使用$ dbConn作为mysqli_query期望的其他参数。但我仍然收到以下错误消息。
代码
<?php
require_once 'config.php';
$dbConn = mysqli_connect ($dbHost, $dbUser, $dbPass) or die ('MySQL connect failed. ' . mysqli_error());
mysqli_select_db($dbConn, $dbName) or die('Cannot select database. ' . mysqli_error($dbConn));
function dbQuery($sql)
{
$result = mysqli_query($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();
}
?>
错误消息
Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\bank\library\database.php on line 9
Warning: mysqli_error() expects exactly 1 parameter, 0 given in C:\xampp\htdocs\bank\library\database.php on line 9
我需要你的帮助。
答案 0 :(得分:0)
问题很简单。所有mysqli
命令都需要两个参数:数据库指针和操作。你的第一个包装函数是:
function dbQuery($sql){
$result = mysqli_query($sql) or die (mysqli_error());
return($result);
}
应该是什么:
function dbQuery($sql){
global $dbConn;
$result = mysqli_query($dbConn, $sql) or die (mysqli_error($dbConn));
return($result);
}
global
声明非常重要。它允许函数外部的变量在函数内部使用。