php - 如何使用 Ajax 从 MySQL 获取信息?

标签 php jquery mysql ajax

所以我正在尝试使用 jQuery 学习 Ajax,以检索一些信息。目前,我无法获取信息。目前我的代码非常简单,只是因为我想了解它是如何工作的。这是我的 HTML 代码。

<h2>Hello world</h2>
<p id="response"></p>

我的 jQuery 代码:

$(function(){
 $('h2').on('click', function() {
   $.ajax({
    url: "ajax.php",
    type: "get",
    datatype: "json",
    success: function(data){
     $.each(data, function(i, key){
      $("#response").html(key['name']) 
     });
    },
    error: function(data){
     console.log("tjohejsan");
   }
   })
 });
}); 

所以当我点击 h2 时它应该检索数据。我想要的是从我的数据库中调用以获取有关用户的信息。
所以我的 PHP 代码看起来像这样:

$sql = "SELECT * FROM moment2";
$result = mysqli_query($db,$sql) or die("Fel vid SQL-fråga");

$array = array();
while($row = $result->fetch_assoc())
{
    $array[] = $row;
}
echo json_encode($array);

在这一点上,这是它失败的地方。我真的不知道问题出在哪里。因为我想要一个关联数组。
如果您能帮助我,我将不胜感激,因为正如我提到的,我真的不知道如何从这里解决它。

提前致谢!

编辑:我意识到我在写这篇文章时有错别字。将 data['name'] 更改为 key['name']

最佳答案

您在 jquery each 函数中有问题。将成功函数替换为

success: function(data){
     $.each(data, function(i, key){
      $("#response").html(key['name']) 
     });
    },

这是因为 jquery 每个函数都有 key 和 value 作为参数,所以在你的这一行中只用 "key"替换 "data": $("#response").html(data['name'] )

关于php - 如何使用 Ajax 从 MySQL 获取信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42374225/

相关文章:

javascript - 从生成的表中获取值

jquery - 如何去除隐藏div占用的空间

php - SQL Select -- 检查值是否在逗号分隔列表中 -- PHP

php - 在 PHP 的全局命名空间上下文中运行函数 block

php - 单击链接时使用 Jquery 更新 PHP session 变量

php - laravel 拆分数据 5.6

mysql - 使用 Class::DBI 和带连字符的表名

mysql - 一对一加入MySQL

php - 这个Mysql查询计数怎么写?

php - MySql:查找 table2.name WHERE table1.lat = table2.lat AND table1.lng = table2.lng;