繁体   English   中英

通过mysql_连接使用mysqli_函数吗?

[英]Using mysqli_ functions with mysql_ connection?

我已经写了一些使用mysqli_的代码。 问题是我现在需要将此代码与使用mysql_代码集成,并负责连接,身份验证等。我不想创建第二个连接,但是mysql_缺少一些功能,例如,准备好的查询。 因此,我想以某种方式神奇地将连接“导入”到mysqli 这有可能吗? 如果是这样,那该怎么办?

不,那是不可能的。

顺便说一句,准备好的语句并不是使查询安全的唯一方法。
每个人都应该使用占位符 ,并且不一定必须使用准备好的语句来实现它们。
尽管也可以使用mysql_ *函数轻松实现占位符

mysql_connect创建的连接资源不能与MySQLi扩展一起重用。 您将不得不处理当前代码中的连接或重构旧代码。

这并不像听起来那样难。 MySQLi还有一个过程接口,您可以像使用旧的MySQL扩展一样使用该扩展。 MySQLi的最大好处是面向对象的接口,它将使重构变得更加复杂。 MySQLi本身还支持(包装到方法/函数中)MySQL功能,如预备语句,事务和连接字符集,但这并不意味着您不能像使用mysql_query一样提交START TRANSACTIONSET CHARSET utf8

希望这可以帮助。 如果您有关于重构的更多具体问题,请随时提出:)

作为F4R-20所指出的,你可以只改变你连接到数据库的方式,取代mysql_与功能msqli_的!

在开始一个项目之前,而不是在中间,尝试决定要使用什么。 准备可以节省大量时间和诸如此类的问题。


PS。 下次我会使用PDO 它简单,快速,面向对象,并且支持多种数据库类型!


编辑:由于您无权访问凭据或连接数据库的方式,因此您将不得不使用mysql_ ,将连接更改为mysqli_或进行新的连接...对不起:(

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM