2013-08-07 1 views
4

Я получаю это предупреждение:mysqli_query() параметр предупреждения 1 для mysqli, null задан. запрос к базе данных не удалось

(!) Warning: mysqli_query() expects parameter 1 to be mysqli, null given in C:\wamp\www\inc\functions.php on line 73 
Call Stack 
# Time Memory Function Location 
1 0.0003 251048 {main}() ..\manage_user.php:0 
2 0.0012 295000 find_all_users() ..\manage_user.php:8 
3 0.0012 295376 mysqli_query () ..\functions.php:73 
Database query failed. 

Я прочитал несколько постов на нем и от того, что понимать ошибка в первой строке в моей mysqli_query ($ дб, $ запроса).

Это будет $ db, это то, что я нахожу странным. mysqli_query ($ db, $ query) отлично работает для всех остальных функций. но когда я вызываю функцию find_all_users(), я получаю предупреждение.

dbcon:

define("DB_SERVER", "localhost"); 
    define("DB_USER", "*******"); 
    define("DB_PASS", "*******"); 
    define("DB_NAME", "*******"); 

    // 1. Create a database connection 
    $db = mysqli_connect(DB_SERVER, DB_USER, DB_PASS, DB_NAME); 
    // Test if connection succeeded 
    if(mysqli_connect_errno()) { 
    die("Database connection failed: " . 
     mysqli_connect_error() . 
     " (" . mysqli_connect_errno() . ")" 
    ); 
    } 

функции:

function find_all_users() { 
    global $db; 
$query = "SELECT * "; 
$query .= "FROM user "; 
$query .= "ORDER BY username ASC"; 
$user_set = mysqli_query($db, $query); 
    confirm_query($user_set); 
    return $user_set; 
} 

function confirm_query($result_set) { 
    if (!$result_set) { 
     die("Database query failed."); 
    } 
} 

страницы я получаю предупреждение о:

<?php 
    require_once($_SERVER['DOCUMENT_ROOT'].'/session/session.php'); 
    require_once($_SERVER['DOCUMENT_ROOT'].'/inc/functions.php'); 
    include($_SERVER['DOCUMENT_ROOT'].'/inc/header.php'); 
    include($_SERVER['DOCUMENT_ROOT'].'/inc/nav_ribbon.php'); 
    $user_set = find_all_users(); 
?> 

<body> 
    <div id="p2dbg"> 
    <div id="p2dcontent"> 
<?php include($_SERVER['DOCUMENT_ROOT'].'/inc/left_container.php'); ?> 
     <div id="page"> 
     <?php echo message(); ?> 
     </div> 
    </div> 
<?php include($_SERVER['DOCUMENT_ROOT'].'/inc/footer.php'); ?> 
    </div> 
</body> 
</html> 
+8

Где вы впишите 'dbcon'? – andrewsi

+0

Вам нужно включить/потребовать 'dbcon', прежде чем вы сможете сделать вызов' find_all_users' –

+0

Вы устанавливаете '$ db' как глобальный в' dbcon'? –

ответ

2

$db был null, потому что dbcon файл не включаются:

include('dbcon.php'); 
session_start(); 
Смежные вопросы