网址和内容中的PHP%20问题

时间:2012-10-07 10:49:22

标签: php url

我正在使用一个小脚本,在生成的内容中,我获得的是%20而不是空格。

这是我正在使用的脚本:

index.php

what is your name?

<FORM METHOD="LINK" ACTION="temp.php?name=">
<input type="text" value="" name="name"  ></input>
<input type="submit" value="Submit" ></input>
</form>

和temp.php

<?php
$name = rawurlencode( $_GET['name'] );
echo "<h1>" . $name . "</h1>";
?>

Hello <?php print $name ?> how are you?

如果我输入Mr Example,则会将其呈现为%20Example先生。对于网址temp.php?name=Mr%20Example

,它也是如此

2 个答案:

答案 0 :(得分:2)

使用此代替

<?php
$name =     urldecode($_GET['name'])
echo "<h1>" . $name . "</h1>";
?>

答案 1 :(得分:0)

%20来了,因为您使用了rawurlencode

$name = rawurlencode( $_GET['name'] );

你必须使用rawurldecode,它会将所有这些字符替换为原始字符。

$name = rawurldecode( $_GET['name'] );