获得之后的价值? URL中的运算符

时间:2012-06-16 14:12:15

标签: php

我想获得'?'之后的价值运算符,例如:

www.blabla.com/any.php?h r u 

我希望获得此值“h r u”,并在我的数据库中搜索此键。我已经尝试过了:

$_SERVER["QUERY_STRING"]

这个功能运行正常但是当我搜索这些值时,它会在我的数据库中打印出来自此查询的“h%20r%20u”:

$query="SELECT * FROM databasename WHERE colum LIKE'%$link%'";

它会打印链接这个“h%20r%20u没有找到记录”,我的数据库找不到 这个价值。我怎样才能解决我的问题?

2 个答案:

答案 0 :(得分:3)

查看urldecode功能。

答案 1 :(得分:0)

如上所述,您应该使用urldecode($string)。 对于SQL注入,只需转义查询中的值:

$link = mysql_real_escape_string(urldecode($_SERVER["QUERY_STRING"]));
$query="SELECT * FROM databasename WHERE colum LIKE'%$link%'";

如果您使用 mysql mysqli 进行查询。 如果您使用PDO,请使用PDO::quote来转义。