[英]Strange php $_GET parameter error
我正在開發一個通過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 ['json']為空,即使我可以以網址格式查看它們
有人可以告訴我我做錯了什么嗎?
編輯:
觸發var_dump($ _ GET): array(1) { ["route"]=> string(17) "home/debts/insert" }
您可以按以下方式更新位置變量(我在插入后插入了/)並嘗試嗎?
location ='?route = home / debts / insert /&json ='+ base64;
我遇到了類似的問題,在本地計算機上使用Apache,在服務器上使用IIS。 IIS出現配置問題,如果沒有/,則無法處理URL。
您應該對所有參數進行URL編碼。 您可以通過添加以下內容將URL編碼添加到base64數據: base64 = encodeURIComponent(base64);
您還應該考慮將URL編碼route=home/debts/insert
route=home%2Fdebts%2Finsert
route=home/debts/insert
為route=home%2Fdebts%2Finsert
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.