通过url传递json数组不能在IE中工作

时间:2013-10-28 05:38:46

标签: php url joomla joomla2.5 json

尝试通过php中的url发送压缩数组时遇到问题。这是我到目前为止所尝试的。我有这样的阵列。

Array
(
    [0] => 191
    [1] => 192
    [2] => 193
    [3] => 194
)

然后我使用json_encode压缩它,如下所示:

$compress_data = json_encode($cid);

并尝试通过以下网址传递该数据:

<a href='index.php?option=com_audits&controller=audits&task=createcsv&create=success&cid=<?php echo $compress_data?>&tmpl=component' target="_blank">
                    <img src="<?php echo JURI::root().'images/csv_button.png'?>" width="18" border="0" height="18">
</a>

这一切都适用于其他浏览器但不适用于IE。当我检查它然后我意识到它在json数据中出现第一个双引号之间中断。我不知道为什么它会因为这适用于所有其他人而受到影响。有没有办法解决它。请帮助。

1 个答案:

答案 0 :(得分:2)

您需要使用urlencode($compress_data)代替$compress_data,因为网址字符串必须回复RFC:http://www.faqs.org/rfcs/rfc3986.html