0

如果计划创建数据库类以在任何 php 项目中使用它,所以我用下面的少量代码编写了基本类,但是当测试它时我收到错误消息 警告:mysqli_query() 期望参数 1 为 mysqli, C 中给出的 null: \AppServ\www\cms\includes\cmsDatabase.php 在第 38 行 虽然我在分配给本地 var 的类构造函数中创建连接。

我的代码:

<?php
class cmsDatabase {


//Database Info 
var $db_host = "localhost";
var $db_username = "root";
var $db_password="root";
var $db_database= "mydb";

//Database Parameters 
var $database_connection ;
var     $database_db ;
var   $error_Message ;   

public function __construct(){
    $database_connection = mysqli_connect($this->db_host,$this->db_username,$this->db_password,$this->db_database) or die("can't connect to server") ;

}// end __construct  

public function __destruct(){
    mysqli_close($this->database_connection);
}// end __destruct   


function getLastError(){
    return $this->error_Message  ;
    }


//==================== DATABASE OPERATIONS ======================
function getConnection(){
        return $this->database_connection ;
}

function selectQuery ($sql){

    $result = mysqli_query($this->database_connection,$sql); //>> ERROR HERE
    return $result ;

}




}//Class 



?>
4

1 回答 1

3

你必须使用:

$this->database_connection在您的构造函数中,否则它只是一个局部变量并且超出您的查询范围。

更新:哦,不要使用 var,它在 PHP 5 中已被弃用:PHP 关键字 'var' 有什么作用?

于 2013-10-28T13:50:20.137 回答