Maison > développement back-end > tutoriel php > CI框架下用存储过程后不能再进展其他查询

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

WBOY
Libérer: 2016-06-13 12:07:47
original
824 Les gens l'ont consulté

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代替吧。

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal