Php 如何在mysqli\u real\u escape\u字符串之间设置值

Php 如何在mysqli\u real\u escape\u字符串之间设置值,php,mysqli,Php,Mysqli,我想用下载文件的名称在数据库中存储一些下载计数。 这很好: $filename = $_GET['file']; // in combination with mysqli_query($link, "INSERT INTO download_manager (filename,downloads) VALUES ('$filename',1) ON DUPLICATE KEY UPDATE downloads = downloads+ 1;"

我想用下载文件的名称在数据库中存储一些下载计数。 这很好:

$filename = $_GET['file'];
// in combination with
mysqli_query($link, "INSERT INTO download_manager (filename,downloads) 
                         VALUES ('$filename',1) ON DUPLICATE KEY UPDATE downloads = downloads+ 1;");
现在我想用mysqli\u real\u escape\u字符串来转义$u GET

当我这样做时,脚本不再工作:

$filename = mysqli_real_escape_string($_GET['file']);
// in combination with
mysqli_query($link, "INSERT INTO download_manager (filename,downloads) 
                         VALUES ('$filename',1) ON DUPLICATE KEY UPDATE downloads = downloads+ 1;");

如何正确使用本例中的
mysqli\u real\u escape\u字符串

来自php文档mysqli\u real\u escape\u字符串过程样式

string mysqli\u real\u escape\u string(mysqli$link,string$escapestr)

所以你的代码应该是

$filename=mysqli\u real\u escape\u string($link,$\u GET['file']);