2010-04-03 82 views
1

也许,这个问题之前已经被问过了,但我会再问一次。PHP:简单的表格编码/解码

目前,我遇到了表单编码问题。发布我的表单时,所有空格均由“+”字符替换。我想用真实空间替换这个“+”字符。

有人对此有PHP解决方案吗?

在此先感谢。

干杯,伦纳特

回答

0

无法重现

<form> 
<input type=text name="a" value="text with spaces"> 
<input type=submit> 
</form> 
<?php if (isset($_GET['a'])) echo $_GET['a'] ?> 

没有空间可言。我做错了什么?

0

如果浏览器的行为正确,这应该不会发生。我的假设是,JavaScript会搞乱你的数据。使用加号代替空格是在编码url时完成的,也许这会有所帮助。

您可以使用firebug检查是否有任何js干扰。

0

我使用AJAX(X =在这种情况下JSON),用于处理表单发送等

然后让我们来看看代码。

可能您正在尝试在另一个组件也对其进行表单编码之前手动对数据进行表单编码。用+代替空格是相当标准的,并且对于表单编码来说是预期的,但是如果你不小心做了两次,那么你会在编码结尾留下编码的+

如果您使用JavaScript escape函数:不要。 (当您需要对表单值进行URL编码以包含在参数中时,正确的方法是encodeURIComponentescape是一种非水果的非标准编码,您应该几乎从不需要使用它。)