您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

CI框架下用存储过程后不能再进展其他查询

2024/10/13 6:51:52发布22次查看
ci框架下用存储过程后不能再进行其他查询
ci下调用mysql存储过程,连接必须释放才能再次执行其他查询,但是我这里释放连接后出错了,代码如下:
//获取节点信息
               //执行存储过程
$query = $this->db->query(call ws_node_one($id));
$data['node'] = $query->result_array()[0];
$this->db->close();//关闭连接
$this->load->database();//可有可无,ci下调用$this->db时自动连接
                //下面的是新查询
$result = $this->db->get_where(ws_node,array(id=>$pid));//就是这句查询报错了
#######################################
错误如下:
a php error was encountered
severity: 8192
message: mysql_escape_string(): this function is deprecated; use mysql_real_escape_string() instead.
filename: mysqli/mysqli_driver.php
line number: 320
#############################################
后面的查询是有结果的,但是这个mysql_escape_string()的字符转义函数调用失败了,不知道为什么,根据要求去 mysqli/mysqli_driver.php里把mysql_escape_string改成mysql_real_escape_string,也是一样,报mysql_real_escape_string错误。
##############################################
大神求解!!!
ci小白
------解决思路----------------------
mysql 扩展必须在执行存储过程之后断开数据库连接,重新连接后才可以
所以 mysql 是落后的,要被淘汰的
你可改用 mysqli 或 pdo 扩展
------解决思路----------------------
自5.5.0起mysql 扩展函数废弃了,用mysqli 和 pdo代替吧。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product