尝试从管理面板显示用户信息时出错

时间:2017-08-09 15:34:01

标签: php mysql mysqli

我搜索了谷歌,我得到了一个明显没有工作的提示,因为我没有按照写方式进行。我使用$ 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

我需要你的帮助。

1 个答案:

答案 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声明非常重要。它允许函数外部的变量在函数内部使用。