使用AJAX返回表中的所有记录

时间:2012-03-08 07:07:14

标签: php javascript mysql

我有一个程序通过AJAX和php程序发送用户ID,该程序在表中搜索与该用户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);
        }                                   
    })      
}

1 个答案:

答案 0 :(得分:1)

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
                }
            }
        }                                   
    })      
}

查看Google Maps Polyline参考资料,了解如何绘制积分: http://code.google.com/apis/maps/documentation/javascript/reference.html#Polyline