使用JQuery、Ajax和PHP将数据填充到表中

Populating data into table using JQuery, Ajax and PHP

本文关键字:填充 数据 PHP JQuery Ajax 使用      更新时间:2023-09-26

我想在一个HTML表中填充一个数据库结果。当单击<a class="editUsers">时,应该弹出一个框,显示来自Ajax调用的数据。

应该显示:

<table id="userInfo">
    <tr>
        <thead>
            <td>User</td>
            <td>Mail</td>
            <td>Admin Access</td>
        </thead>
    </tr>
    <tr>
        <td>Jane Doe</td>
        <td>janedoe@islost.com</td>
        <td>Yes</td>
    </tr>
</table>        

$(".editUsers").click(function(){
    $("#userInfo").fadeIn(1000);
    $(".exitUsrMgmt").fadeIn(1000); //This is the close button for that popup
    $.ajax({    //create an ajax request to load_page.php
        type: "GET",
        url: "includes/getUserData.php",             
        dataType: "html",   //expect html to be returned                
        success: function(response){                   
            ("#userInfo").html(response);
        },
        error:function (xhr, ajaxOptions, thrownError){
            alert(thrownError);
        }
    });
}); 

<?php
  include_once('config.php');
  //Create PDO Object
  $con = new PDO( DB_DSN, DB_USERNAME, DB_PASSWORD );
  //Set Error Handling for PDO
  $con->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
  //Query
  $sql = "SELECT name, email, admin FROM user_admin";
  //Prepare Statement
  $stmt = $con->prepare($sql);
  $stmt->execute();
  while ($row = $stmt->fetch()){
    echo '<tr>';
    echo    '<td>'.$row[0].'</td>';
    echo    '<td>'.$row[1].'</td>';
    echo    '<td>'.$row[2].'</td>';
    echo '</tr>';
  }
?>

问题已修复。我犯了一个愚蠢的错误,忘记包括一个$。感谢Paul Roub的回答,我引用他的话:

首先,("#userInfo").html(response);缺少一个$。应该是$("#userInfo").html(response); - Paul Roub 8分钟前