$sql="select count(*) as ct from xxx "; //查询tb_bookinfo表中的所有商品
//echo$rs=new com("adodb.recordset"); //用com类声明一个记录集对象$rs->open($sql,$conn,1); $allcount=$rs->fields["ct"];
$rs->Close();
$sql=" select count(*) as ct from xxx1";$rs->open($sql,$conn,1); $newcount=$rs->fields["ct"];
echo $allcount;//出错echo $newcount;
//echo$rs=new com("adodb.recordset"); //用com类声明一个记录集对象$rs->open($sql,$conn,1); $allcount=$rs->fields["ct"];
$rs->Close();
$sql=" select count(*) as ct from xxx1";$rs->open($sql,$conn,1); $newcount=$rs->fields["ct"];
echo $allcount;//出错echo $newcount;
还有你的 $conn 在哪里赋值?
fields["ct"] ct是字段吗?如果是的话,你没读取ct这个字段
//echo$rs=new com("adodb.recordset"); //用com类声明一个记录集对象$rs->open($sql,$conn,1); $allcount=$rs->fields["ct"];echo $allcount;$rs->Close();
$sql=" select count(*) as ct from xxx1";$rs->open($sql,$conn,1); $newcount=$rs->fields["ct"];echo $newcount;
问题出在$newcount和$allcount的值是一样的,但是事实是不一样的
当你 $rs->Close() 时,这个 variant 对象的值域就不存在了
所以当 echo $allcount; 时就会报错正确的写法是
$allcount = $rs->fields["ct"]->value;这样就能把值保留下来