Php 使用AJAX从表中返回所有记录

Php 使用AJAX从表中返回所有记录,php,javascript,mysql,Php,Javascript,Mysql,我有一个程序,它通过AJAX发送一个用户id,并发送到一个php程序,该程序在一个表中搜索与该用户id匹配的所有记录。问题是它只返回一行,我需要它返回所有匹配的行。有什么办法吗 php中的MySQL语句: $id=$_POST["id"]; $sql = mysql_query("SELECT * FROM crime_map WHERE user_id = '$id'"); while($row = mysql_fetch_assoc($sql)) $output[]=$row; ech

我有一个程序,它通过AJAX发送一个用户id,并发送到一个php程序,该程序在一个表中搜索与该用户id匹配的所有记录。问题是它只返回一行,我需要它返回所有匹配的行。有什么办法吗

php中的MySQL语句:

$id=$_POST["id"];

$sql = mysql_query("SELECT * FROM crime_map WHERE user_id = '$id'");
while($row = mysql_fetch_assoc($sql))

$output[]=$row;

echo json_encode($output);
JS代码:

function submitform() {

    var id = document.getElementById('id').value;
    var datastr = 'id=' + id;
    alert(datastr);
    $.ajax({    
        type: "POST",
        url: 'api.php', 
        data: datastr,      
        dataType: 'json',                   
        success: function(data){

            var user_id = data[0];
            alert(user_id);
        }                                   
    })      
}
函数submitform(){
var id=document.getElementById('id')。值;
var datastr='id='+id;
//警报(datastr);
$.ajax({
类型:“POST”,
url:'api.php',
数据:datastr,
数据类型:“json”,
成功:功能(数据){
//var user_id=数据[0];
//警报(用户标识);
如果(data.length>0)
{

对于(i=0;ivar user_id=data[0];这里取一行。data[]是行的数组。使用其他索引访问其他行,例如data[1]这段代码是将每行添加到输出还是替换第一行?$output[]=$row;您是否尝试过在现代浏览器(Firefox和Firebug控制台、Chrome甚至IE9)中使用
console.log(data)
看到它的内容了吗?很好的建议,Guillaume。我正在接收来自AJAX调用的所有记录。现在,我该怎么做才能将它们放入一个散列中,其中包含键的用户id,然后是每行的一个数组?可能是一个数组数组?我正在做的是尝试在表中找到用户,然后找到用t存储的所有GPS坐标hat用户id(将有几行)。表的设置如下:用户id、纬度、经度。我想获取位置,然后在谷歌地图上绘制一条多段线。
function submitform() {

    var id = document.getElementById('id').value;
    var datastr = 'id=' + id;
    //alert(datastr);
    $.ajax({    
        type: "POST",
        url: 'api.php', 
        data: datastr,      
        dataType: 'json',                   
        success: function(data){

            //var user_id = data[0];
            //alert(user_id);
            if(data.length > 0)
            {
                for(i=0; i<data.length; i++)
                {
                    alert("User: " + data[i].user_id);
                    // here you have the user_id and any other fields from the table e.g. lat/long
                }
            }
        }                                   
    })      
}