帝国cms7.5使用php7.4版本登陆后台报错(Function get_magic_quotes_gpc() is deprecated)解决方法

   2024-04-01 02:35:03  
今天客户在使用帝国cms7.5登陆后台时报了一个错误,提示:PHP:Depecaed:Fuciose_magic_quoes_uime()isdepecaed错误。客户用的是PHP7.4版本。PHP7.

今天客户在使用帝国cms7.5登陆后台时报了一个错误,提示:PHP:Deprecated: Function set_magic_quotes_runtime() is deprecated 错误。客户用的是PHP7.4版本。

PHP 7.4不推荐使用get_magic_quotes_gpc函数替代(PHP 7.4 deprecated get_magic_quotes_gpc function alternative)。

下面我们来看下解决方法。

在/e/class/connect.php 中添加如下代码:

define('MAGIC_QUOTES_GPC',ini_set("magic_quotes_runtime",0)?True:False);

如图所示:

帝国cms7.5使用php7.4版本登陆后台报错(Function get_magic_quotes_gpc() is deprecated)解决方法 - 我爱模板网

拓展:

magic_quotes_gpc函数在php中的作用是判断解析用户提示的数据,如包括有:post、get、cookie过来的数据增加转义字符“ ”,以确保这些数据不会引起程序,特别是数据库语句因为特殊字符引起的污染而出现致命的错误。5.4.0    始终返回 FALSE,因为这个魔术引号功能已经从 PHP 中移除了。

下面给出一个兼容各个php版本的示例:

<?php// 如果启用了魔术引号echo $_POST['lastname'];             // O/'reillyecho addslashes($_POST['lastname']); // O///'reilly// 适用各个 PHP 版本的用法if (get_magic_quotes_gpc()) {    $lastname = stripslashes($_POST['lastname']);}else {    $lastname = $_POST['lastname'];}// 如果使用 MySQL$lastname = mysql_real_escape_string($lastname);echo $lastname; // O/'reilly$sql = "INSERT INTO lastnames (lastname) VALUES ('$lastname')";?>


声明:本文系互联网搜索百度而收集整理,不以盈利性为目的,文字、图文资料源于互联网且共享于互联网。
如有侵权,请联系 hzy98999#qq.com (#改@) 删除。