微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ajax序列化;无法在PHP中读取变量

我有以下代码

var data_string = $('form#frm').serialize();
    $.ajax({
        type:       "POST",
        url:        "/send.PHP",
        data:       data_string,
        success:    function(data) {
        alert(data);

并在PHP文件中:

$to = MysqL_real_escape_string($_POST['email']);    //email
$name = MysqL_real_escape_string($_POST['name']);   //name of tipper
$msg = MysqL_real_escape_string($_POST['msg']);     //message
echo $name; //EXAMPLE

Ajax代码中的上述警报应该警报发布的$name变量.
但是,将显示警报框,但它为空白.

我认为这与序列化部分有关.

PHP回显1或0正常,并且警告框显示1或0.

有什么想法怎么了?

谢谢

编辑:

发现在警告序列化数据时:

 alert (data_string);

我得到“未定义” …

形式如下:

<form name='frm' id='frm' action='send.PHP' method='post' onsubmit='tip_func(); return false;'>

<input type='text' name='name' id='name'>

tip_func()是上面所有ajax都为…的函数.

解决方法:

您测试过data_string了吗?尝试先对其发出警报,以检查其中是否包含数据!

var data_string = $('#frm').serialize();
alert(data_string);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐