如何从数据库中获取数据并在应用程序中使用AJAX显示数据

时间:2019-04-21 19:32:56

标签: javascript php ajax

在大约8年的时间里,我还没有碰过PHP或AJAX,所以目前我对此的记忆力还很低。

我正在做的是从数据库中获取数据,效果很好。 然后,我想使用AJAX从PHP文件中获取数据。

我服务器上的PHP文件正在连接到数据库并获取表“ Form”。 然后将通过另一个应用程序通过AJAX检索这些数据。

我有一个正常工作的PHP文件,但是我应该如何订购AJAX以便很好地获取它。

我目前所拥有的是:

PHP文件:

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}


$sql = "SELECT * FROM form";
$result = $conn->query($sql);

if($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        $name       = $row['name'];
        $country    = $row['country'];
        $email      = $row['email'];
        $need       = $row['need'];
        $available  = $row['available'];

        echo "name: " . $name . "<br> Country: " . $country . " <br> Email: " . $email . "<br> Need: " . $need . "<br> Available: " . $available;

        $form_data = array();
        array_push($form_data)
    }
} else {
    echo "Null results";
}

$conn->close();


?>

AJAX文件:

$.ajax({
    url: 'url',
    data: "",

    dataType: 'json',
    success: function(data) {

    }
});

AJAX文件不完整,因为我仍然想知道这些PHP结果。 现在,它们只是存储在变量中。 在这里存储这些结果以获取AJAX的最佳方法是什么?

我应该将结果放入一个数组中,然后将其推入另一个数组中吗? 表单中可以有很多行,我希望有1个人的数据:姓名,国家等在一个数组中。还是把它放在一个数组中是愚蠢的?

我希望有人能提供一些线索,并在我到这里的路上帮助我。自从我开始使用PHP已有很长时间了,这里还不清楚最佳方法。

搜索了一段时间,但对我来说没有什么意义,所以我来这里是希望有人能提供指导。

复活节快乐。

1 个答案:

答案 0 :(得分:0)

创建一个数组并保存所有数据,然后json_encode将数据发送到JavaScript。

<?php

$servername = "localhost";
$username = "root";
$password = "";
$dbname = "db_julekgwa";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}


$sql = "SELECT * FROM form";
$result = $conn->query($sql);

$rows = array();

if($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        $name       = $row['name'];
        $country    = $row['country'];
        $email      = $row['email'];
        $need       = $row['need'];
        $available  = $row['available'];

        $rows[] = "{ name: " . $name . ", Country: " . $country . ", Email: " . $email . ", Need: " . $need . ", Available: " . $available . "}";

    }
    echo json_encode($rows);
} else {
    echo json_encode([ "error" => "Null results"]);
}

$conn->close();


?>

在您的ajax中执行以下操作

$.ajax({
    url: 'file.php',
    type: "GET",
    dataType: 'json',
    success: function(data) {
      data.forEach(item => {
        console.log(item);
      });
    },
    error: function(data) {
      console.log(data);

    }
});