0
我正在爲一個簡單的留言框工作一個腳本。我以前使用$ .get()沒有任何問題。然後我切換到$ .post(),所以我可以將西里爾字符傳遞給php。Jquery.post()發送變量,但PHP顯示它們爲空?
我將所有內容都切換到javascript和php文件中。 Firebug顯示變量不是空的並被髮送,它們是來自php腳本的標準響應,但不是正確的。我試着打印整個$ _POST變量作用域,但只是給出一個空數組。我究竟做錯了什麼?
$.post('file.php', { sc_com:'submit', name:userboxVal, color:swatch, msg:escape(msgboxVal) }, function(data) {
if(data.error) {
msgbox.focus();
shoutError(data.error);
} else if(data.status=='posted') {
msgbox.val('').focus();
refreshShouts(opts,'ajax');
}
}, 'json');
PHP
$sc_com = strip_tags($_POST['sc_com']); // Empty
print_r($_POST); // returns Array()
不知道你爲什麼會需要的PHP代碼呢?整個事情超過500線,但這是最重要的部分...
發佈相關的PHP代碼。 – 2010-09-18 22:30:12
當您僅發送非西里爾字符時,問題是否也會發生?你還可以發佈你在Firebug中發送的數據嗎? – Archimedix 2010-09-18 22:32:17
同意馬修:這並沒有告訴我們整個故事。如果你的PHP代碼超過'print_r($ _ POST)',那麼問題就出現在那裏,因爲jQuery看起來沒問題。 – JAL 2010-09-18 22:32:34