在PHP中使用GET方法检索数据时出错



我尝试通过URL发送数据,这些数据包含特殊字符,例如:mustafa+hamid
当我尝试检索这些数据时,结果将是"mustafa hamid";这意味着+自动被空格取代
如何检索原始文本
谢谢

以下字符

# $ & + ,  / : ; = ? @ [ ]

保留。如果你想通过GET在变量中发送它们,你必须首先";url编码";他们首先。您必须发送";mustafa%2Hamid";而不是";mustafa+hamid";在URL中。

您可以使用urlencode((PHP函数来查看如何对上面的每个字符进行编码。

您可以使用javascript函数

var encodedURL= "http://www.example.com/test.php?d=" + encodeURIComponent('mustafa+hamid');
//output :http://www.example.com/test.php?d=mustafa%2Bhamid

或者你可以简单地用%2B替换+,这是+的编码代码

我不能发表评论,否则我会发表评论。菲利普·彼得罗夫给出的答案在技术上是正确的。

这里有一个的例子

$data = "mustafa+hamid";
$urlEncoded = urlencode( $data );
// To get the data back to its original value
$originalValue = urldecode( $urlEncoded );

PHP-url编码器((

PHP-url解码((

最新更新