jquery $ .ajax php side POST序列化表单

时间:2012-11-09 03:27:36

标签: jquery

提前抱歉,我知道有一些关于这个主题的讨论,我只是刚接触到这个并且已经筋疲力尽我自己试图学习它,所以我必须要问。

问题:我想将表单中的数据发送到php文件,这就是我在js端的内容

表单验证后..

else {      
    $.ajax({
        type: 'POST',
        url: 'entry.php',
        cache: false,
        data: $(".contact_form").serializeArray(),
        success: function (data) {
            if (data == "error") {
                $('.success_box').hide();
                $('.error_box').show();
            }
            else {
                $('#sname').val('');
                $('#email').val('');
                $('#title').val('');
                $('#message').val('');
                $('#photo1').val('');
                $('#photo2').val('');
                $('.error_box').hide();
                $('.success_box').show();
            }
        }
    });
}

我的html表单有名称和id's = sname电子邮件标题消息

我不知道我的javascript当前是否正在将数据发送到我的php文件,因为我不知道如何在php页面上访问这些值?也因为它的js / ajax请求我相信我不需要html表单的动作,就像我不在html上调用我的php文件,只是在js上,如果这是错误的话请纠正我。

感谢

2 个答案:

答案 0 :(得分:1)

你的PHP页面会有这样的效果......我实际上并不知道你的形式是什么,所以我只是假设。

$sname=$_REQUEST['sname'];
$email=$_REQUEST['email'];
$title=$_REQUEST['title'];
$message=$_REQUEST['message'];
$photo1=$_REQUEST['photo1'];
$photo2=$_REQUEST['photo2'];

然后我不知道你想用它做什么,但如果你把它发送到数据库,你会用SQL语句传递它。

答案 1 :(得分:0)

$_POST superglobal中应该提供POST到PHP的值。小心处理那里的信息,因为讨厌的人可以发送恶意字段/值。

您的浏览器应该有一个开发人员控制台,您可以使用它来检查发送到PHP脚本的请求,以防您在PHP端遇到问题。在Firefox中,安装Firebug扩展。在Chrome中,只需点击 F12 ,然后查看“网络”标签。

有关于在此处处理用户提供的数据的StackOverflow讨论:what is a good method to sanitize the whole $_POST array in php?