2017-10-16 84 views
0

我有一個AJAX調用,它發送數據是這樣的:parse_str添加下劃線到索引和追加值

$.ajax({ 

    type:'POST', 
    url:URL 
    data:{'fexx': $('#form').serialize()}, 
    .... 

而解析在PHP控制器,其數據(我使用笨)我收到這樣的:

parse_str($this->input->post('fexx'), $arr); 

當我打印的$內容改編它帶來這樣的信息:

Array 
(
    [message_hello] => 
    [hel] => 
) 

代替顯示它是這樣的:

Array 
(
    [message] => hello 
    [help] => 0 
) 

你知道這種行爲的原因嗎?提前致謝!

回答

1

你在這裏混合的方法。如果您序列化表單數據,那麼您不提供鍵值對。 Serialize爲你做到這一點。

data:{'fexx': $('#form').serialize()}, 

試試這個,修改你的PHP,以適應或刪除連載,並指定每個鍵=>值分別

data: $('#form').serialize(), 
+0

謝謝您的回答。我知道我可以做到這一點,但我也想添加其他值,因爲該「fexx」索引讓我直接保存一些信息。 –

+0

如果您只序列化並提交所有沒有fexx的表單數據,那麼它將作爲鍵值對在$ _POST數組中可用 – miknik