1.咕~~(╯﹏╰)b 各种乱码。

2.本来是MFC+Access 用msado15.dll写的系统,闲的想用php改改。

Demo.php

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
结果:<br>
<?php
require_once 'ADOConn.php';
$ADOConnObj = new ADOConn();
//$ADOConnObj->OnInitADOConn(); $sql="select id,sccoun,cpname,cpip,dwname,[memo] from z_sc where id=3 or id=4 or id=5";
$ADOConnObj->GetRecordSet($sql);
$sql="select id,sccoun,cpname,cpip,dwname,[memo] from z_sc where sccoun='成都'";
$ADOConnObj->GetRecordSet($sql);
/*
"update z_sc set cpname='%s',[memo]='%s' ,cpip='%s',dwname='%s',cpmodel='%s',cpno='%s',snno='%s', sperson='%s',sphone='%s',azdate='%s' where ID=%d ",
"insert into z_sc(sccoun,cpname,dwname,[memo],cpip,cpmodel,cpno,snno,sperson,sphone,azdate)
"delete from z_sc where ID=%d "
*/
$sql="update z_sc set [memo]='已修改' where id=3 " ;
$ADOConnObj->ExecuteSQL($sql);
echo "</br>"."over...."; ?>

  

*ADOConn.php

<?php
class ADOConn
{
public function OnInitADOConn()
{
//读取mdb数据库例程1.连接数据库 --完全没用到这个函数
$conn = new com("ADODB.Connection") or die ("创建数据库连接失败!");
$connstr = "DRIVER={Microsoft Access Driver (*.mdb)};pwd=**; DBQ=". realpath("D:/AppServ/www/php_access/PhoSys.mdb"); $conn->Open($connstr);
/*方法二 D:\AppServ\Apache2.2\PhoSys.mdb
$connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=PhoSys.mdb;Persist Security Info=False;Jet OLEDB:Database Password=hzcjy"; */
/*方法三 解决乱码
require_once 'adodb/adodb.inc.php';
$conn = new COM ( "ADODB.Connection", NULL, 65001) or die ( "ADO connect failed!" );
$connstr = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" . realpath ( "database/testDB.mdb" ) . ";Uid=;Pwd=;"; //$conn = new com("ADODB.Connection") or die ("创建数据库连接失败!");
//乱码这个不管用,下边管用 $conn->exec("set names utf8");
*/
} //函数主要用于打开并获得记录集
public function GetRecordSet($query)
{
$conn = new COM ( "ADODB.Connection", NULL, 65001) or die ( "ADO connect failed!" );
$connstr = "DRIVER={Microsoft Access Driver (*.mdb)};pwd=hzcjy; DBQ=". realpath("D:/AppServ/www/php_access/PhoSys.mdb");
$conn->Open($connstr); $rs=$conn->Execute($query);
$row="0";
if($rs){
while(!$rs->EOF)
{
$string ="";
for ($i=0;$i<$rs->Fields->count;$i++)
{
if ($i==0)
{
$string.=$rs->Fields($i)->Value;
continue;
}
$string.='|'.$rs->Fields($i)->Value;
}
$string.="\n"."<br>";
if ($row==300)
{
break;
}
$row++;
echo "
";
echo $string;
$rs->MoveNext();
}
}//end if
else
{ print $conn->ErrorMsg ();} $rs = null;
$conn->close ();
$conn = null;
} public function ExecuteSQL($query)
{//执行数据库语句 delete,update,
//--OnInitADOConn();
$conn = new COM ( "ADODB.Connection", NULL, 65001) or die ( "ADO connect failed!" );
$connstr = "DRIVER={Microsoft Access Driver (*.mdb)};pwd=hzcjy; DBQ=". realpath("D:/AppServ/www/php_access/PhoSys.mdb");
$conn->Open($connstr); $result =$conn->Execute($query); if($result)
echo "successful";
else
{ $conn->ErrorMsg();echo "failed"; } $rs = null;
$conn->close ();
$conn = null;
}
}
?>

 

结果

资料:

3.http://www.cnblogs.com/jukan/p/5633705.html
php连接Access数据库的三种方法

(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);

4.https://sjolzy.cn/Operation-of-a-simple-PHP-class-Access.html
一个简洁的PHP操作Access类

5.【非常棒】PHP通过ADODB操作ACCESS数据库,中文乱码的解决办法
http://blog.csdn.net/dengwei4378/article/details/7103377?locationNum=1&fps=1

 

厄 先备注着,有空的时候过来写写总结和经验。over

php_access_ADOConn 备忘的更多相关文章

  1. GIS部分理论知识备忘随笔

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.高斯克吕格投影带换算 某坐标的经度为112度,其投影的6度带和3度带 ...

  2. python序列,字典备忘

    初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...

  3. Vi命令备忘

    备忘 Ctrl+u:向文件首翻半屏: Ctrl+d:向文件尾翻半屏: Ctrl+f:向文件尾翻一屏: Ctrl+b:向文件首翻一屏: Esc:从编辑模式切换到命令模式: ZZ:命令模式下保存当前文件所 ...

  4. ExtJs4常用配置方法备忘

    viewport布局常用属性 new Ext.Viewport({ layout: "border", renderTo: Ext.getBody(), defaults: { b ...

  5. [备忘] Automatically reset Windows Update components

    这两天遇到Windows 10的更新问题,官方有一个小工具,可以用来修复Windows Update的问题,备忘如下 https://support.microsoft.com/en-us/kb/97 ...

  6. ECMAScript 5(ES5)中bind方法简介备忘

    一直以来对和this有关的东西模糊不清,譬如call.apply等等.这次看到一个和bind有关的笔试题,故记此文以备忘. bind和call以及apply一样,都是可以改变上下文的this指向的.不 ...

  7. MFC通过txt查找文件并进行复制-备忘

    MFC基于对话框的Demo txt中每行一个23位的卡号. 文件夹中包含以卡号命名的图像文件.(fpt或者bmp文件) 要求遍历文件夹,找到txt中卡号所对应的图像文件,并复制出来. VC6.0写的. ...

  8. php 相关模块备忘

    在安装php的时候,不管是编译安装: ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc -- ...

  9. 『备忘』HttpWebRequest 在 POST 提交时, 标头(Headers)丢失原因

    近来研究 HttpWebRequest —— 辅助类完成时,POST JSON数据 总会 丢失标头(Headers). HttpWebRequest POST JSON数据,分如下几步: > 将 ...

随机推荐

  1. 关于JavaScript lastIndexOf() 方法 w3school.com.cn写的不一定全对

    关于JavaScript lastIndexOf() 方法 w3school.com.cn的表述是 定义和用法 lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的 ...

  2. python中x,y交换值的问题

    今天碰到了python和其他语言不同的问题:赋值语句 x,y,z=1,2,3,执行 z,x,y=y,z,x 后,x.y.z 中分别含有什么值? 我想的是 x=2  y=2  z=2 可调试后应该是:x ...

  3. linux网络学习

    ipv4报文处理流程 1.物理层网卡收到报文,产生中断进入中断处理程序:net_interrupt,判断中断是由接收到分组引发后,控制权转移到net_rx: 2.net_rx函数分配一个新的sk_bu ...

  4. rabbitMQ学习(五)

    topic匹配模式,topic能满足匹配结果就行. 发送端: public class EmitLogTopic { private static final String EXCHANGE_NAME ...

  5. Runtime Reconfiguration

    https://coreos.com/etcd/docs/latest/runtime-configuration.html Runtime Reconfiguration  运行时重新配置 etcd ...

  6. Nodejs学习(三)-安装nodejs supervisor,提高点效率吧。

    安装好了express准备写项目,可是发现随便改一下js都要使用npm start重新启动才能生效,这个很不好,搜索一下发现有这么一个模块supervisor.那就安装一下吧. 1.安装,这个必须是全 ...

  7. javascript对象引用与赋值

    avascript对象引用与赋值 <script type="text/javascript"> //例子一: 引用 var myArrayRef = new Arra ...

  8. 第五章 征服数据库(Spring对DB的使用)——开发持久层

    本章内容: 定义Spring对数据库访问的支持 配置数据库资源 使用Spring的JDBC模板 在几乎所有的企业级应用中,都需要构建数据持久层.现在意义上的数据持久层是指把对象或者数据保存到数据库中, ...

  9. webstorm 2016 激活(转)

    2016.2.2 版本的破解方式: 安装以后,打开软件会弹出一个对话框:选择"license server" 输入:http://114.215.133.70:41017 2016 ...

  10. IOS系列swift语言之课时三

    今天需要掌握的内容就是:闭包.类.结构体.属性(计算属性和延迟属性) 同样里面有一些题目,有兴趣的可以做一下. 首先我们需要知道什么是闭包?所谓的闭包就是一个代码块(一般是指函数以及被它捕获的成员变量 ...