0
我正在使用類來完成所有與數據庫相關的工作。在配置文件中包含一個具有「連接」功能的類,以建立與數據庫的連接。我創建了一個連接文件,其中包含連接到數據庫的信息。現在爲了從特定表中檢索數據,我調用了相同的類和'查詢'功能。但是在Query函數中,我需要Connect函數的$ conn。面向對象方面我有點虛弱。任何人都可以指導我如何做這項工作。我在下面包含了我的文件config.php,connection.php和index.php文件。如何使用類中的PDO連接工作
config.php page
<?php
class DBConnection{
public function __construct(){
}
public function Connect(){
try {
$conn = new PDO('mysql:host='.$this->server_name.';dbname='.$this->db,$this->user, $this->pass);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$conn->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
} catch (Exception $e) {
echo 'ERROR: ' . $e->getMessage();
}
}
static public function Query($sql){
return $conn->prepare($sql);
}
}
connection.php page
<?php
require_once('config');
$default=array(
'DB_SERVER'=>'Localhost',
'DB_USER'=>'root',
'DB_PASS'=>'',
'DB_NAME'=>'hqe'
);
$m_db = new DBConnection();
$m_db->server_name=$default['DB_SERVER'];
$m_db->user=$default['DB_USER'];
$m_db->pass=$default['DB_PASS'];
$m_db->db=$default['DB_NAME'];
$m_db->Connect();
index.php page
<?php
include("connection.php");
$usr = DBConnection::Query("Select id, first_name, last_name from tbl_user");
我試過定義私人$ conn。但它沒有工作。 – sanin
我再次將連接文件中的數據庫名稱,用戶名和密碼傳遞給config.php – sanin
:您將$ conn聲明爲局部變量,這就是爲什麼它不能在其他方法中訪問。 –