警告:mysqli_query()期望参数1为mysqli,给定为null

时间:2013-09-21 13:21:40

标签: php function mysqli

我确定这是重复的,但我找不到答案。无论出于何种原因,我都无法查询我的数据库。

我只是想调用一个函数,但是我收到了错误......

Warning: mysqli_query() expects parameter 1 to be mysqli, null given in ... on line 12

我的dbConnect.php文件有

$adConn = mysqli_connect("myHost","myUser","myPword","myDB");

我的functions.php文件有

require "dbConnect.php";

// Check connection
if (mysqli_connect_errno($adConn))
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

//-------------------------------------------------//
//   Gets total number of games for a given week   //
//-------------------------------------------------//
function GetGamesCount($wID){
    $sql = "SELECT * FROM schedule WHERE weekID=$wID";

    $gamesRS = mysqli_query($adConn, $sql);
    $games = mysqli_fetch_array($gamesRS);


}

我没有从连接检查中得到任何错误,我也试过把它放在功能中。我知道我可以使用mysqli_num_rows函数,我会这样做。我只需要找出为什么它不会查询数据库。我试过用其他函数查询同样的问题。但是,如果我在页面内查询或使用单独文件中的ajax,我没有问题。

我只是看不到我错过的东西。非常感谢任何帮助。

2 个答案:

答案 0 :(得分:5)

因为在函数之外声明$adConn不在范围内。这意味着您无法在函数内访问它。要访问它,您需要将其作为函数的参数传递。

 function GetGamesCount($wID, $adConn){

答案 1 :(得分:2)

$adConn位于全局范围内,如果您将$adConn更改为$GLOBALS['adConn'],则无法从该功能访问它。