2010-09-03 88 views
2

就在最近我偶然发现了一个奇怪的url编码问题。双重网址编码问题php

我试图编码(使用PHP进行urlencode)这个测试题:

提问:是否The'se的COM !!发言:抗体_ + = &了2001年的iPod或iPad的2010?

,然后提交使用以下网址(用户点击“共享此内容”在我的网站的链接)叽叽喳喳:

http://www.twitter.com/home/?status=http://tinyurl.com/2eag89r+Quiz%3A+Are+The%27se+Com%21%21ments+Ab_%2B%3D%26out+the+2001+iPod+or+2010+iPad%3F

但是,如果你将遵循该网址 - 你会看到,网址是双重编码(也许通过浏览器?)由于某种原因,一些字符(如'!?+ _)保持编码。

我该如何解决这个编码问题?

+0

这很伤心。我有这个问题,以及没有解决方案 – 2011-02-09 09:11:34

回答

0

看起来好像你的“分享这个”代码可能会对它自己的标题进行编码,然后再次进行编码。

你没有试过这个没有你的urlencode?

+0

是的,不工作+可能有一个符号像&将被视为单独的查询字符串属性的开始,如果你不编码ID(所以其余的网址之后&将会丢失)。 有线的东西.. – gansbrest 2010-09-03 18:57:18

+0

+,你可以在我的第一篇文章中看到 - 该字符串只编码一次。但是当你点击它时,%字符被再次编码,所以初始编码的字符被保存。 – gansbrest 2010-09-03 19:00:35