天天看點

PHP使用PDO連接配接帶密碼Access資料庫(簡單版)

<?php
//連接配接類
class AccessPDO {

	public function AccessPDOConn(){
		$DataBasePath = 'test.mdb';//mdb資料位址
		$PassWord = '123456';//資料庫密碼,沒有則設定為空
		$Driver   = 'Microsoft Access Driver (*.mdb)';//驅動名稱,需和電腦上裝的驅動名稱一緻
		try {
			$PDOConn = new PDO('odbc:Driver={'.$Driver.'};dbq='.realpath($DataBasePath).';pwd='.$PassWord);
			$PDOConn->query('SET NAMES UTF8');
			return $PDOConn;
		}
		catch(PDOException $err){
			echo $err->getMessage();
		}

	}
	public function QueryData($SqlStr){//查詢資料SELECT
			$result = array();
			if( !$SqlStr ){
				return $result;
			}

			$pdo = $this->AccessPDOConn();
			if( !$pdo ){
				return $result;
			}
			try{
				$sth = $pdo->query($SqlStr);
				$result = $sth->fetchAll();
				unset($sth);
			}catch(PDOException $err){
				echo $err->getMessage();
			}
			return $result;	
	}
	public function EditData($SqlStr){//編輯資料(INSERT, UPDATE)
			$result = array();
			if( !$SqlStr ){
				return $result;
			}

			$pdo = $this->AccessPDOConn();
			if( !$pdo ){
				return $result;
			}
			try{
				$result = $pdo->exec($SqlStr);
			}catch(PDOException $err){
				echo $err->getMessage();
			}
			return $result;	
	}
}

//使用方法

    $AccessDB = new AccessPDO();

    //查詢
    $Sql = "SELECT * FROM testform WHERE id = 1";
    $QueryResult= $AccessDB ->QueryData($Sql);
    print_r($QueryResult);//列印結果

    //修改或插入
    $Sql = "INSERT INTO testtable(feild1,feild2) VALUES('Test','Test2')";
    $EditResult= $AccessDB ->EditData($Sql);
    print_r($EditResult);//列印結果
?>