加载然后读取一个多维数组 - PHP / Javascript



>我有两个表 A 和 B

TableA // (People)
UserID    Name
10         Dan
20         Jane
30         Shelley
TableB // (Pics)
PicID    UserID
100      10
200      10
300      20

我想从表 A 中获取所有内容并将其加载到数组中,然后为数组中的图像添加数组,但不确定如何执行此操作:

目前对于表 A,我认为:

$query = "select * from TableA";
$result = $mysqli->query($query) or die(mysqli_error($mysqli));
while ($row = $result->fetch_array()){
    $array[] = $row;
    // do another select here to get pics and add data to array multiDimensionally
}
echo json_encode($array);

然后我读的是这样的:

$.ajax({
    url: apiURL,
    dataType: 'json',
    success: onLoadData
});
function onLoadData(data) {
// Create HTML for the images.
var html = '';
var i = 0, length = data.length, image;
for (; i < length; i++) {
    image = data[i];
    html += '<div class="holder">';
    html += '<div class="name">' + image.Name + '</div>;
    // do another loop here to show images for each person
    html += '</div>';
} 

这是最好的方法吗,如果是这样,我将如何添加到数组中,然后从中读取?

如果我没有错,那么这可以通过另一种方式完成-

Mysql :

$query = "select * from TableA join TableB on TableA.UserID=TableB.UserId order by TableA.UserID asc";

和Jquery部分:

 $.ajax({
    url: apiURL,
    dataType: 'json',
    success: function(data)
    {
       $.each( data, function( key, value ) {
           //alert( key + ": " + value ); //do what ever you want
      });
    }
});

最新更新