如何在php中循环数据时分割数据并传递给具有不同id的ajax html

时间:2017-01-31 16:44:41

标签: php jquery ajax performance

我有医生的db表,其中有近100多名医生列表,这是我的医生的PHP代码 dc.php:

    $conn= mysqli_connect('localhost', 'root', '', 'test');
    $query = mysqli_query($conn, "select * from doctors");
    while($result=mysqli_fetch_array($query)){
    $dc_name = $result['name'];
    $dc_img = $result['image'];
    $dc_email = $result['email'];


    echo $dc_name."||".$dc_img."||".$dc_email;
    }

    I want echo all doctors another main page index which already fixed large layout with bootstrap,html,css by using ajax calling on click

    Here is my code for ajax

    $(function(){
    $(".divscrolla").on("click", function(){
    $.ajax({
     url:'db.php',
    type:'POST',
    data:{"data":$(this).val()},
    success:function(data){
    var splitted = data.split("||");
    $("#result_name").html.splitted[0];
    $("#result_img").html.splitted[1];
    $("#result_email").html.splitted[2];
    }
    });
    });

这里我希望通过AJAX显示所有100条记录

但在这里我只获得第一个元素,但我在数据库中有更多的100个记录。

如何通过简化来解决这个问题?

1 个答案:

答案 0 :(得分:0)

你试过吗

$resultArray = $result->fetch_all(MYSQLI_ASSOC);
$jsonstring = json_encode($resultArray);
echo $jsonstring;

然后在AJAX代码中不要拆分,让json格式帮助你。通过将数据类型设置为json dataType: "json",

$(function(){
    $(".divscrolla").on("click", function(){
        $.ajax({
            dataType : "json",
            url:'db.php',
            type:'POST',
            data:{"data":$(this).val()},
            success:function(data){
                //consume the data in a assoc array manner
                //data[0]['name'] for first entry's name
            }
        });
    });
 }