我该如何解决这个错误?不推荐使用:mysql_escape_string():不推荐使用此函数;请改用mysql_real_escape_string()

时间:2014-05-18 17:48:49

标签: php mysql sql string escaping

我被困在以下方面:

不推荐使用:mysql_escape_string():不推荐使用此函数;请改用mysql_real_escape_string()。在第116行的/home/xtremeso/public_html/mp3/includes/class/_class_mysql.php

        function safesql( $source )
        {
            if ($this->db_id) return mysqli_real_escape_string ($this->db_id, $source);
            else return mysql_escape_string($source);
        }

我已经尝试过mysql_escape_real_string,但这并没有解决问题。 并通过.htacces文件忽略php错误消息也不起作用

2 个答案:

答案 0 :(得分:5)

错误信息清楚地说明了它。

更改此

 else return mysql_escape_string($source); // you are using mysql here

 else return mysqli_real_escape_string($source); //will be mysqli

OBS:您应该切换到PDO或MYSQLI,因为MYSQL mysql_real_escape_string 也将被弃用:)

你在mysqli和mysql之间混合。

编辑:从你的第二个错误。

  mysqli_real_escape_string ($link ,$source )  // $link is your connection variable

ref

答案 1 :(得分:1)

在使用mysql_real_escape_string之前需要将mysql连接到数据库,如果没有mysql连接到数据库,此函数将无法正常工作。