使用AJAX从php接收数据

时间:2017-06-21 16:52:13

标签: php jquery ajax

我正在开发一个函数,如果用户从下拉列表中选择一个值,那么这会调用一个AJAX函数,然后该函数会给我一个名称及其电子邮件地址列表

$.ajax({
                type:'POST',
                url:'get_distusers.php',
                data:'dist_id='+dist_id+'&study_id='+study_id,
                success: function(data){

                    $('#dist_list2').html(data);
                    $('#dist_list').val(data);

                },
                    error : function(XMLHttpRequest, textStatus, errorThrown) {
                        alert("There was an error."+textStatus+" - " + XMLHttpRequest.status);
                    }
            });

然后另一页有此发送回姓名和电子邮件列表

unset($contact);
if ($count_du>0) {
    while($row_du = mysqli_fetch_array($result_du)) {
        if(!empty($contacts)) 
            $contacts.="<br>, ";

            $contact['name']=$row_du[0];
            $contact['email']=$row_du[1];
    }
}

$contacts[]=$contact;
//$contacts=array($contact_email,$contact_name);

//echo $sql_patrand;
echo json_encode($contacts);

然而,当我尝试检索联系人列表时,我要么得到单词对象,要么没有。

有人能告诉我我做错了吗?

1 个答案:

答案 0 :(得分:1)

你的php代码返回了echo json_encode($contacts); json格式,但你的ajax不能理解json格式,因为你没有设置dataType: 'json' param,请检查下面提到的代码,它会非常有帮助,回答中的任何查询评论......

$.ajax({
    type:'POST',
    url:'get_distusers.php',
    data:'dist_id='+dist_id+'&study_id='+study_id,
    dataType: 'json', //NOTE:Your missing point - update first
    success: function(data){
        console.log(data); //Print your data, so it will help you to how manage
        $('#dist_list2').html(data);
        $('#dist_list').val(data);

    },
        error : function(XMLHttpRequest, textStatus, errorThrown) {
            alert("There was an error."+textStatus+" - " + XMLHttpRequest.status);
        }
});