WordPress默认数据库连接允许在过去的几年中使用mysql_query()吗?如果是,这是在什么时候结束的?我是否正确地假设它与WordPress数据库对象有关?
背景:许多年前,我为一个WordPress客户机编写了一个自定义模板,该模板涉及将XML导入数据库并在WordPress页面上显示。我做了大量的笔记,但只是在麻烦的地方,而数据库连接不是其中之一。客户端继续前进,但现在返回时出现了旧代码中的错误。我可以修复它,但我的客户是奇怪的类型,可能需要具体的变化。
错误是警告: mysql_query():拒绝用户'root'@'localhost‘的访问(使用密码: NO),在第38行的/Address到WordPressTemplate.php中。没有可以找到的连接字符串,因此我假设该查询使用的是默认的WordPress数据库连接。
发布于 2018-02-27 19:30:44
WordPress的代码库 (截至2018年2月27日)仍有mysql_query()。
mysql_*()在PHP5.5.0中被废弃,在PHP7.0.0中被删除。由于WordPress仍然支持PHP5.2(出于无法理解的原因),它需要同时支持mysql_*()和mysqli_*(),因此WordPress将在可用时使用mysqli_query() (PHP5.3.0),并回退到mysql_query()。
如果使用的是WordPress $wpdb对象,则意味着您正在PHP5.2.x上运行,您确实应该对其进行升级。如果您确定您使用的是PHP5.3或更高版本,那么还有其他一些使用旧mysql_query()的代码。
尽管基于错误,但它似乎与SQL数据库中的权限有关。
https://wordpress.stackexchange.com/questions/295358
复制相似问题