不久前,有人建议我将代码更改为使用PDO,以便参数化查询并将HTML安全地保存在数据库中。
好吧,这里是主要的问题:
我看了一下http://php.net/manual/en/ref.pdo-mysql.php,我真的不知道应该把$ ./configure --with-pdo-mysql
字符串放在哪里…,,
mysql_*
处理程序吗?有问题的服务器运行的是PHP版本5.4.6-1ubuntu1和Apache/2.2.22 (Ubuntu)。如果重要的话,我还在运行一个phpMyAdmin数据库。
发布于 2012-11-14 16:14:48
在Ubuntu上,您应该能够使用sudo apt-get install php5-mysql
从apt安装必要的PDO部件
同时使用PDO和mysql_之间没有限制。但是,您需要创建两个到数据库的连接,一个使用mysql_,另一个使用PDO。
发布于 2012-11-14 16:19:50
这是一个很好的问题,但我认为你只是误解了你读到的东西。
安装PDO
如果你编译你自己的./config --with-pdo-mysql
代码,你只能把它放在的上。如果你用包管理器安装它,你只需要使用Jany Hartikainen给出的命令行:sudo apt-get install php5-mysql
和sudo apt-get install pdo-mysql
与mysql_的兼容性
除了mysql_真的不被鼓励之外,他们都是独立的。如果您使用PDO,则不涉及mysql_;如果您使用mysql_,则不需要PDO。
如果在不更改代码中任何行的情况下关闭PDO,就不会有问题。但是,由于您开始使用PDO连接和编写查询,您必须保留它并放弃mysql_。
几年前,MySQL团队向migrate to MySQLi发布了一个脚本。我不知道它是否可以定制,但它是官方的。
发布于 2015-12-14 17:46:52
基本上,Jani Hartikainen的答案是正确的!我赞成他的回答。我的系统(基于Ubuntu15.04)缺少的是在我的php.ini中启用PDO扩展
extension=pdo.so
extension=pdo_mysql.so
重新启动with服务器(例如,使用"sudo -> apache2 restart") -> fine :-)
要查找当前active php.ini文件的位置,可以使用phpinfo()或此处提供的一些其他提示:https://www.ostraining.com/blog/coding/phpini-file/
https://stackoverflow.com/questions/13375061
复制相似问题