热搜:NVER node 开发 php

php如何解析jquery serialize 提交后的数据

2024-09-12 12:30:01
php如何解析jquery serialize 提交后的数据

客户端通过jquery  serialize 提交表单数据

$("#submit_survey").click(function(){    	 $.post(SITE_URL+'activity/survey/savesurvey', {data:$('#survey_form').serialize()}, function(response){            if (response.error_code) {                infotips(response.msg, $('.submit_tips'));            } else {                infotips('保存成功', $('.submit_tips'), 'right');            }         }, 'json');     	return false;    });


在php端post到的数据为:
title=%E6%82%A8%E5%8F%AF%E4%BB%A5%E5%9C%A8%E8%BF%99%E9%87%8C%E5%88%9B%E5%BB%BA%E6%82%A8%E7%9A%84%E9%97%AE%E7%AD%94%E9%A2%98%E7%9B%AE%EF%BC%8C%E5%90%8C%E6%97%B6%E5%AF%B9%E9%97%AE%E7%AD%94%E6%B4%BB%E5%8A%A8%E5%8A%A0%E4%BB%A5%E8%AF%B4%E6%98%8E&cover_image=&file_name=&file_partpath=&description=&isgender=0&isarea=0&isage=0&question%5B1%5D=ghk&option%5B1%5D%5B0%5D=hgkhk&option%5B1%5D%5B1%5D=hkhj&option%5B1%5D%5B2%5D=khgkhk&option%5B1%5D%5B3%5D=&question%5B2%5D=hgkh&option%5B2%5D%5B0%5D=hkhjk&option%5B2%5D%5B1%5D=hjkhjl&option%5B2%5D%5B2%5D=

如何替换为正确的格式:
Array
(
    [title] => dsgd
    [cover_image] => hdsgdsg
    [file_name] => 219_20130514170542.jpg
    [file_partpath] => 
    [description] => 
    [isgender] => 0
    [isarea] => 0
    [isage] => 0
    [question] => Array
        (
            [1] => dgdg
        )

    [option] => Array
        (
            [1] => Array
                (
                    [0] => aa
                    [1] => bb
                    [2] => cc
                )

        )

)



回复讨论(解决方案)

不会吧?jq 这么弱智?!
按正常的标版提交处理就可以了

如果真的如你所说,那么 parse_str 就是为这准备的,当然你还需要先用 urldecode 解一下码

用$.post时不需要{data:$(form).serialize()}而是直接$(form).serialize()就行

也许因为这个,本来是分别独立的input值被变成了了data的string类型的值了啊

用$.post时不需要{data:$(form).serialize()}而是直接$(form).serialize()就行

也许因为这个,本来是分别独立的input值被变成了了data的string类型的值了啊

的确如此,多谢

不会吧?jq 这么弱智?!
按正常的标版提交处理就可以了

如果真的如你所说,那么 parse_str 就是为这准备的,当然你还需要先用 urldecode 解一下码

的确是我用错了