<?
$dbc=new com("adodb.connection");
$dbc->open("driver=microsoft access driver (*.mdb);dbq=c:\1.mdb");
$rs=$dbc->execute("select * from jbqk");
$i=0;
while (!$rs->eof){
$i+=1
$fld0=$rs->fields["Zsbh"];
$fld1=$rs->fields["Xm"];
echo "$fld0->value $fld1->value";
$rs->movenext();
}
$rs->close();
?>
以上是网上常见的php代码,我试了一下,没反应,不知道为什么.
$dbc=new com("adodb.connection");
$dbc->open("driver=microsoft access driver (*.mdb);dbq=c:\1.mdb");
$rs=$dbc->execute("select * from jbqk");
$i=0;
while (!$rs->eof){
$i+=1
$fld0=$rs->fields["Zsbh"];
$fld1=$rs->fields["Xm"];
echo "$fld0->value $fld1->value";
$rs->movenext();
}
$rs->close();
?>
以上是网上常见的php代码,我试了一下,没反应,不知道为什么.
http://www.phpe.net/
eg:<?php
include('adodb/tohtml.inc.php'); // rs2html()要用的,可以不包含
include('adodb/adodb.inc.php'); // load ADODB
$db= &ADONewConnection("ado_access"); //表示Access数据库
$access=realpath('test1.mdb');$myDSN='PROVIDER=Microsoft.Jet.OLEDB.4.0;'.'DATA SOURCE='.$access.';'.'USER ID=;PASSWORD=;';if (@$db->PConnect($myDSN,"","",""))
{ $sql= 'select * from artC order by cat_id asc';
$rs=$db->Execute($sql);
rs2html($rs,'border=2 cellpadding=3',array('Customer Name','Customer ID'));
//显示数据用其它方法也行}
else print "ERROR: Access test requires a Access database $access".'<BR>'.$db->ErrorMsg();?>
我还想问多几个问题:就是把语句$sql= 'select * from artC order by cat_id asc';换成$sql= 'select * from artC where aaa="7777"';为什么不能运行成功?系统没提示。
把语句写成$sql= 'select * from artC where aaa=$num';以查询符合$num变量的值,这样写对吗?
还有,如何得到查询结果的各个字段的值?
谢谢!
取那个数组的下标的值就可以了吧
比如:
$rs=$db->Execute($sql);
echo $rs['id'];
echo $rs['username'];等等这样应该是可以了的
where语句,如果字段为int, 不用加单引号 where aaa=$num
否则,要加单引号 where aaa='$num'
//$sql="select * from artC where aaa='".$num."'";$rs=$db->Execute($sql); //执行查询 //或者
//$rs=$db->SelectLimit($SQL,10); //执行查询,得到10条记录 while(!$rs->EOF)
{
echo $rs->fields['字段名']);
$rs->MoveNext();
}
执行$sql="select * from artC where aaa=".$num." LIMIT 偏移量,记录个数";//$sql="select * from artC where aaa=".$num." LIMIT 记录个数";$rs=$db->Execute($sql);
一样