|
定义一个私有函数_read_article,用来调用一个存储过程,这个存储过程就是一条select语句, 从表中读取数据
调用一次的话,正常;但是如果连续调用两次的话,就会出错, 不知道怎么解决
如:
$this->_read_article($data);
$this->_read_article($data);
就会报:
A Database Error Occurred Error Number: 2014
Commands out of sync; you can't run this command now
call edit_article_proc_read_aritcle(2)
Filename: G:\SS_dreamweaver\page\system\database\DB_driver.php
Line Number: 334
private function _read_article(&$data)
{
$sql="call edit_article_proc_read_aritcle(?)";
$this->db->trans_start();
$row=$this->db->query($sql,array($this->doc_id));
$this->db->trans_complete();
if (empty($row))
{
//查询失败
}
else
{
switch ($row->num_rows())
{
case 0:
//没有查询到
break;
case 1:
$result=$row->row_array();
$data['article_title']=$result['doc_title'];
$data['article_summary']=$result['doc_summary'];
$data['article_content']=$result['doc_content'];
$row->free_result();
break;
case 2:
//多于一个记录
break;
}
}
}
|
|