php post不使用header和ajax

时间:2013-11-14 05:33:37

标签: javascript php jquery ajax

我正在使用jquery $.post向其他域发送帖子请求。一切正常,但我没有在请求的页面中获取发布的数据,请检查我的代码

jquery代码

    var data = {mydata: 'testing'};
      $.post("http://anyurl/file.php",data,function(info){
        alert(info);
    });

这里是php代码

<?php

header('Access-Control-Allow-Origin: *'); // this is to allow another domain

$data = $_POST[“mydata”]; // assigning data to variable
echo $data; // sending back to jquery

?>

它不会返回数据,请检查任何人。

提前致谢

3 个答案:

答案 0 :(得分:3)

使用proper quotes并使用isset()检查data设置与否,

<?php
    header('Access-Control-Allow-Origin: *'); // this is to allow another domain    
    print_r($_POST);// to check the post data
    $data = isset($_POST['mydata']) ? $_POST['mydata'] : "No Data";
    echo $data; // sending back to jquery
?>

答案 1 :(得分:1)

尝试使用single quotes更好获取POST变量,以便在回显后将exit 设置为

$data = $_POST['mydata'];
echo $data; 
exit;

并确保通过console发布到指定的网址。

答案 2 :(得分:0)

好吧,当我测试它时它走得很好。为了重新出现你已经得到的错误,我正在尝试将file.php设置为BOM-UTF8文件,最后它得到了错误。{{ 1}}

另一个建议,您可以使用firebug来测试您的ajax后期进程。控制台中的链接将显示ajax进程,例如您发布的内容和反馈内容。只需使用console.log()而不是警报()。