0
我做了一个函数,它必须过滤数据传递给$_GET
变量。它最近工作,但我开始与mysqli一起工作,现在它不再。每次通过PHP函数回应我的$data
都会导致mysqli_real_escape_string
导致变量$data
返回空。但是我在这里做错了什么。mysqli_real_escape_string返回空函数
我的函数应该自己过滤$_GET
变数,但mysqli_real_escape_string
返回一个空的变量...
function filter($data) {
global $link;
$data = trim(htmlentities(strip_tags($data)));
if (get_magic_quotes_gpc())
$data = stripslashes($data);
$data = mysqli_real_escape_string($link, $data);
return $data;
}
为了运行所有$_GET
变量槽过滤器上的循环。
foreach($_GET as $key => $value) {
$get[$key] = filter($value);
}
与数据库的连接(连接不工作):($link
)
$link=mysqli_connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);
由于[PHP中的变量作用域](http://php.net/manual/en/language.variables.scope.php),函数内部没有'$ link' – kero
我使用'global $ link;'和STI我不工作。也试过'$ GLOBALS ['link'];'但是说索引链接是未知的... –
在这里使用'globals'是什么原因?你跟随什么?请解释这种方法。 – voodoo417