如果计划创建数据库类以在任何php项目中使用它,所以我用下面的代码编写基本类,但是在测试时我得到了错误消息 警告:mysqli_query()要求参数1为mysqli,在第38行的C:\ AppServ \ www \ cms \ includes \ cmsDatabase.php中 null 虽然我在分配给本地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
?>
答案 0 :(得分:3)
你必须使用:
构造函数中的 $this->database_connection
,否则它只是一个局部变量,超出了查询的范围。
更新:哦,不要使用var,它已在PHP 5中弃用:What does PHP keyword 'var' do?