php連線Access資料庫的三種方法
阿新 • • 發佈:2019-01-25
php.ini中加上extension=php_com_dotnet.dll
因為php5.4以後就不內嵌com了。
提供已知的幾種連線方式: 1. $conn = new com("ADODB.Connection"); $connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("test.mdb"); $conn->Open($connstr); 2. $conn=new com("ADODB.connection"); $connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=".realpath("test.mdb"); $conn->open($connstr); 3. $connection = odbc_connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=$mdbFilename", $user, $password);
在ThinkPhp的controller中由於存在名稱空間,所以要使用“$conn = new \com("ADODB.Connection");”
$rs=new com('adodb.recordset');$rs->Open('SELECT * FROM 資料表名',$conn,1,1);
$rs->PageSize=50;
$page=1;
if(!empty($_GET['page'])){
$page=$_GET['page'];
if($page<1)$page=1;
if($page>$rs->PageCount)$page=$rs->PageCount;
}
$rs->AbsolutePage=$page;
echo '<table width="100%"><tr>';
foreach( $rs->Fields as $name){
echo '<td>'.$name->Name.'</td>';
}
echo '</tr>';
for(;!$rs->EOF;$rs->MoveNext()){
echo '<tr>';
foreach( $rs->Fields as $name){
echo '<td>'.$name.'</td>';
}
echo '</tr>';
if($rs->AbsolutePosition>=$rs->AbsolutePage*$rs->PageSize)break;
}
echo '</tale>';
for($i=0;$i<$rs->PageCount;$i++){
echo '<a href="index.php?page='.($i+1).'"> '.($i+1).' </a>';
}