php与access
首先下载 php-5.1.1-installer.exe
才2M多,刷的就下来了,okok,然后运行,转到D盘吧,一路顺风,点击next。然后建一个目录php,新建文件info.php输入代码:
<html>
<body>
<? phpinfo(); ?>
</body>
<html>
在iis里数据http://localhost/php/info.php
如果出现一长串的PHP Version 5.1.1等样子的话,恭喜,配置好了。
如图:新建php/data/db.mdb,建表szd_t,输入点数据吧,如图:建立文件default.php;输入:
<?
$conn = new com("ADODB.Connection");
$connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=". realpath("data/db.mdb");
$conn->Open($connstr);
$rs = new com("ADODB.RecordSet");
$rs->Open("select * from szd_t",$conn,1,1);
while(! $rs->eof) {
$f = $rs->Fields(1);
echo $f->value;
$rs->MoveNext();
}
?>
浏览,还打印你刚在数据库的记录,成功成功,哈哈哈,完毕。
❷ PHP读取Access数据库 出乱码
access的中文版默认是GBK格式的,是无法改变字符类型的,所以用php读取的时候会乱码。
解决方法是:使用iconv转换
一、使用 iconv函数制作一个转码的自定义从GBK转到UTF-8的函数,如以下代码:
function enc($c){return iconv('gbk','utf-8',$c);}
二、为了写入数据库的编码是符合数据库需要的,所以我们还要制作一个从UTF-8转向GBK的函数:
function dec($c){return iconv('utf-8','gb2312',$c);}
制作好了转码函数,接下就是正常使用了。在从数据库里面调数据显示在页面的时候使用enc()函数,从页面提交数据到数据库时使用dec()函数,这样就可以很好的解决PHP使用UTF-8编码,ACCESS使用系统默认编码的问题了。
❸ 铏氭嫙涓绘満閲屼负浠涔坧hp杩炰笉浜哸ccess瑙e喅鏂规
锛1锛夊垱寤虹郴缁熸暟鎹婧愶纴鐢≒HP鎻愪緵镄凮DBC鍑芥暟銆傦纸2锛変娇鐢≒HP镄凮DBC鍑芥暟锛屼絾涓嶅垱寤烘暟鎹婧愩侾HP浣跨敤ODBC杩炴帴Access鏁版嵁搴撶殑鏂规硶銆傜敤$connstr="DRIVER=MicrosoftAccessDriver(*.mdb)𨱒ヨ剧疆鏁版嵁椹卞姩锛屽嚱鏁皉ealpath()鐢ㄦ潵鍙栧缑鏁版嵁搴撶殑鐩稿硅矾寰勚傚埄鐢ㄨユ柟娉曡繛鎺Access鏁版嵁搴扑富瑕佸簲鐢ㄥ埌PHP镄刼dbc_connect()鍑芥暟锛岃ュ嚱鏁板0鏄庡备笅锛氢互涓嬩负寮旷敤镄勫唴瀹癸细resourseodbc_connect(stringdsn,stringuser,stringpassword[,intcursor_type])dsn锛氱郴缁焏sn钖岖Оuser锛氭暟鎹搴撴湇锷″櫒镆愮敤鎴峰悕銆俻assword锛氭暟鎹搴撴湇锷″櫒镆愮敤鎴峰瘑镰併俢ursor_type锛氭父镙囩被鍨嬨备唬镰佸备笅锛氢互涓嬩负寮旷敤镄勫唴瀹癸细$connstr="DRIVER=MicrosoftAccessDriver(*.mdb);DBQ=".realpath("bookinfo.mdb");$connid=odbc_connect($connstr,"","",SQL_CUR_USE_ODBC);锛3锛変娇鐢ㄥ井杞镄𪞝DODB鏁版嵁搴挞┍锷ㄣ傚畾涔夌被COM𨱒ヤ娇鐢ˋDO鏂规硶镎岖旱Access鏁版嵁搴撶殑銆傝ョ被璇︾粏璇存槑濡备笅锛氢互涓嬩负寮旷敤镄勫唴瀹癸细stringcom::com(stringmole_name[,stringserver_name[,intcodepage]])mole_name锛氲璇锋眰缁勪欢镄勫悕瀛楁垨class-id銆俿erver_name锛欴COM链嶅姟鍣ㄧ殑钖嶅瓧銆侰odepage锛氭寚瀹氱敤浜庡皢PHP瀛楃︿覆杞鎹㈡垚UNICODE瀛楃︿覆镄勪唬镰侀〉锛屽弽涔嬩害铹躲傝ュ弬鏁扮殑鍙栧兼湁CP_ACP銆丆P_MACCP銆丆P_OEMCP銆丆P_SYMBOL銆丆P_THREAD_ACP銆丆P_UTF7鍜孋P_UTF8銆侾HP鍒╃敤com绫诲苟浣跨敤ADO鏂规硶璁块梾鏁版嵁搴撶殑浠g爜濡备笅锛氢互涓嬩负寮旷敤镄勫唴瀹癸细$conn=newcom("ADODB.Connection");$connstr="DRIVER={MicrosoftAccessDriver(*.mdb)};DBQ=".realpath("bookinfo.mdb");$conn->Open($connstr);