php mysql函数未定义,关于php:Wierd和Annoying错误:调用未定义的函数mysql_query()...

php mysql函数未定义,关于php:Wierd和Annoying错误:调用未定义的函数mysql_query()...本问题已经有**答案 请猛点这里访问 我已经在这里一个多小时了 我可以连接到我的数据库和所有 不给出任何错误 但当我尝试使用 mysql query query Call to undefined function mysql query 我已经尝试启用

大家好,我是讯享网,很高兴认识大家。

本问题已经有**答案,请猛点这里访问。

我已经在这里一个多小时了,我可以连接到我的数据库和所有(不给出任何错误),但当我尝试使用"mysql_query($query);"

Call to undefined function mysql_query()

我已经尝试启用:

extension=php_mysql.dll

extension=php_mysqli.dll

我补充说:

extension_dir ="ext"

extension=php_mysql.dll

在导入列表的末尾。

在我所做的每一个更改之间,我重新启动exampp中的所有进程,并且在我单独尝试的每一个解决方案之后,它仍然会产生这个恼人的错误。

我试过在网上查找,但唯一与我类似的错误是:

Call to undefined function mysql_connect()

我从来没有遇到过什么问题,从来没有见过。

我之所以在这里问这个问题,是因为我在谷歌搜索结果中遇到了上述问题,而不是我遇到的问题。

如果有人能帮助我,我会很高兴的。我在网上找到的教程显示了与我写的代码完全相同的代码。

fea9382beccefdafee568f068ceda30f.png
讯享网

13c540ef99e49f41f56489e673137be8.png

过时的mysql扩展在php7中正式失效。

实际上,您应该将pdo或mysqli与准备好的语句一起使用。

php 7已经摆脱了mysql_query(),因为它在很多方面都有问题!API不鼓励良好的实践,官方的说法是它是未维护的,没有准备好的声明!?!从本质上讲,这是PHP中最大的问题,它鼓励了导致SQL注入的坏做法,这是一个严重的坏情况。

但是,我确实使用遗留代码库,因此在某些情况下,我必须处理与您相同的情况。如果你有一个小的代码库,只需更新你的数据库连接方法。如果您有一个大的代码库,下面是我的建议:

将这个代码库的PHP版本回滚到php 5.6,在2016年它将得到更多的支持。

花点时间更新到PDO(您可以创建一个将PDO包装起来,使其不那么冗长,并且仍然允许准备查询)。

忽略mysqli。如果从MySQL_u*升级需要5分钟,那么您可能做错了,并将自己留给了SQL注入。只需进行PDO并开始使用准备好的查询,这样您就可以在晚上睡觉了。

如果您仍然想在更现代的项目中使用PHP7,请使用旧的PHP5.6遗留代码构建一个容器实例。

答案很简单,这个信息早在PHP7发布之前就已经存在了。它已经被移除,他们建议转移到mysqli或pdo。有关迁移所需了解的更改的完整列表,请参阅本指南。你的选择:

将代码调整为mysqli,这是完全相同的,只是有点不同。这不会花很长时间将代码调整为。

切换到PDO,完全不同,但更灵活,有我的偏好。

mysql_*已经被删除,这意味着它们可以被重新定义。您可以创建引用mysqli或pdo的包装函数。

切换回PHP版本6。

为什么要移除?

它没有在开发中。

mysql_*函数只提供了MySQL真正提供的一部分功能。(考虑事务、准备好的语句、异步查询等)

人们仍然在用这些函数编写(甚至今天)不安全的代码。

我不是说使用mysql i或pdo可以神奇地防止mysql注入,但至少它们提供了针对这些攻击的本地支持。剩下的由你自己决定;程序员,以确保把数据指向它需要去的地方。

小讯
上一篇 2025-01-19 10:28
下一篇 2025-01-17 07:01

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/38302.html