我正在开发一个应用程序,它通过URL发送jquery参数,如下所示:
json = JSON.stringify(chk);
base64 = Base64.encode(json);
location = '?route=home/debts/insert&json='+base64;
其中chk是类型数组。
然后在目标页面中我用PHP解码它:
$chk = json_decode(base64_decode($_REQUEST['json']));
在本地服务器上这可以实现奇迹,但是当进入实时系统时,在服务器上,我无法获取URL参数,实际上是$ _GET [' json']或$ _REQUEST [& #39; json']是空白的,即使我能以URL格式看到它们
有人能给我一个暗示我错了的提示吗?
编辑:
启动了var_dump($ _ GET):array(1) { ["route"]=> string(17) "home/debts/insert" }
答案 0 :(得分:0)
您可以更新位置变量,如下所示(我插入了/插入后)并尝试?
location ='?route = home / debts / insert /& amp; json ='+ base64;
我遇到过类似的问题,我在本地计算机上使用Apache,在服务器上使用IIS。 IIS有配置问题,如果没有/,它无法处理URL。
答案 1 :(得分:0)
您应该对所有参数进行URL编码。您可以通过添加以下内容将URL编码添加到base64数据:
base64 = encodeURIComponent(base64);
您还应该将URL编码route=home/debts/insert
视为route=home%2Fdebts%2Finsert