PHP没有从Ajax获取值

时间:2014-02-19 19:53:03

标签: php jquery ajax

我一直在搜索所有的答案,但我无法让它工作。 我想从ajax发送两个整数值到php。

这是ajax部分:

    $(document).ready(function(){

    $('input[type="radio"]').click(function(){ 
          var id_user=$(this).filter(':checked').val();
          var stringname=$(this).attr('name'); 
          var substr = stringname.split('_'); 
          var id_paper=substr[1];
            alert('User_id is: '+id_user +'. And paper_id is: '+id_paper);

          $.ajax({
            type: "POST",
            url: "ajax/expositor.php", 
            data: {ID_ponencia: id_paper, ID_Participante: id_user},
            //contentType: "application/json; charset=utf-8",//type of response
            //contentType: "application/x-www-form-urlencoded;charset=utf-8",
            //dataType: "json",
            beforeSend:function(){
                alert('This is AJAX. The following is about to be sent. paper:'+id_paper+' user: '+ id_user);
            },
            success:function(response){
                var msj='#msj_'+id_paper;
                $(msj).append(response);
            },
            error:function (xhr, ajaxOptions, thrownError){
                alert(xhr.status);
                alert(thrownError);
            }
          });
    });
});

我已尝试使用dataType和contentType的注释部分,但它也不起作用。

这是php代码。

    if(isset($_POST["ID_ponencia"]) && !empty($_POST['ID_ponencia']) && isset($_POST['ID_participante']) && !empty($_POST['ID_ponencia'])) 
{
    $ID_participante=$_POST['ID_participante'];
    $ID_ponencia=$_POST['ID_ponencia'];
    echo ('<p style="color: green;">Success! ☺</p>');
}else{
    //Output error
    echo ('<p style="color: red;">error!</p>');
    header('HTTP/1.1 500 There has been an error!');
    exit();
}

PHP工作正常,因为我已经测试了一个html表单发布到该PHP脚本,我得到了成功的消息。但是,从ajax脚本中我得到500错误。

任何帮助都将非常感激。

1 个答案:

答案 0 :(得分:2)

你的ajax正在设置ID_Participante(大写P)的参数,但是php正在检查ID_participante(小写p)。

此外,您正在检查ID_ponencia是否为空两次...认为您的意思是第二个检查ID_participante。