用urlencode搜索mysql数据库

时间:2014-01-05 21:04:27

标签: php mysql

我只是想在开始编码之前先问这个问题,因为我知道它会给我带来麻烦。假设我有以下网址:

www.mysite.com/script.php?id=12345&email=email%40email.com

现在假设我想使用$ _GET变量搜索数据库。我的问题是,$ _GET ['email']变量中的%符号是否会导致PHP中的MySQL查询出现问题,因为%符号在MySQL中意味着什么?或者我可以继续使用该输入搜索数据库而没有任何问题吗?

1 个答案:

答案 0 :(得分:1)

www.mysite.com/script.php?id=12345&email=email%40email.com

将在$ _GET中给出以下值:email@email.com(因此,已经解码)

当然,在任何查询中使用此值之前,您应该使用类似mysql_real_escape_string的函数,但不需要使用url decode或其他内容。

mysql_real_escape_string - 转义字符串中的特殊字符以用于SQL语句 http://php.net/mysql_real_escape_string