将保留字符更改为其Percent-Encodings

时间:2014-04-01 03:59:03

标签: php html

我有一个用于搜索的文本输入字段。当用户的搜索包含限制性字符[在维基百科here中解释]时,如#符号或!符号,网站给出错误,因为网址具有这样的字符。

示例:代码将搜索查询附加到网址

    <head>
    <?php <meta name="http-equiv" content="0; url=http://www.mysite.com/search.php?query=.$_GET['query']" ?>
   </head>

变量&#34;查询&#34;是搜索查询。

如果用户搜索#,结果网页将为http://www.mysite.com/search.php?query=&#34;#&#34;,显然会产生错误。

1 个答案:

答案 0 :(得分:0)

您可以使用urlencode

执行此操作

我只发布这个作为答案,因为你的代码有一些语法错误我也修复了。

<head>
<meta name="http-equiv" content="0; url=http://www.mysite.com/search.php?query=<?php echo urlencode($_GET['query']); ?>">
</head>