Php 调用未定义的方法DB::escape_string()

Php 调用未定义的方法DB::escape_string(),php,mysql,sql,mysqli,Php,Mysql,Sql,Mysqli,以下是我的代码的简化版本: $db = new mysqli('localhost', 'user', 'pass', 'database') or die(mysqli_error()); $gender = $db->escape_string($_GET['gender']); $city = $db->escape_string($_GET['city']); 以下是我得到的错误: Call to undefined method DB::escape_strin

以下是我的代码的简化版本:

$db = new mysqli('localhost', 'user', 'pass', 'database') or die(mysqli_error());    

$gender = $db->escape_string($_GET['gender']);
$city = $db->escape_string($_GET['city']);
以下是我得到的错误:

Call to undefined method DB::escape_string() in /blablabla/bla/file.php on line 2

为什么我会出错?

我想你要找的是


escape\u string
real\u escape\u string
的别名,因此它们是相同的

这里有一个文档链接:

试试这个

 $city = $mysqli->real_escape_string($_GET['city']);

已经试过了。。。调用未定义的方法DB::real\u escape\u string()。不管怎么说,他们不是一回事吗。MySQLi没有
escape\u string()
方法。另外,在mysql_*函数中,它们的工作方式非常不同。@johncode实际上我是这样做的<代码>真\u escape\u string()!=escape_string()仍然没有解决问题。如何定义real\u escape\u string()?如果您使用准备好的语句,就不需要
real\u escape\u string
是的,我将学习如何为此编写准备好的语句。如果知道是什么导致了这个错误,那就太好了。好吧,我的文件中还有另一个名为$db的变量。我现在觉得自己很愚蠢。
 $city = $mysqli->real_escape_string($_GET['city']);