Как получить данные из базы данных и отобразить их с помощью AJAX в приложении - PullRequest
0 голосов
/ 21 апреля 2019

Я почти не касался PHP или AJAX примерно за 8 лет, так что моя память об этом сейчас довольно мала.

То, что я делаю, это выборка данных из моей базы данных, которая прекрасно работает. Затем я хочу использовать AJAX для получения данных из файла PHP.

Мой PHP-файл на моем сервере подключается к базе данных и выбирает таблицу «Форма». Эти данные затем будут получены другим приложением через 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 FILE:

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

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

    }
});

Файл AJAX не завершен, так как я все еще задаюсь вопросом об этих результатах PHP. Прямо сейчас они просто хранятся в переменных. Каков наилучший способ сохранить эти результаты, чтобы получить выборку для AJAX здесь?

Должен ли я поместить результаты в массив, а затем поместить этот массив в другой массив? В формах может быть много строк, и я хочу, чтобы 1 человек с данными: имя, страна и т. Д. Были в одном массиве. Или глупо иметь его в массиве?

Я надеюсь, что кто-то может дать мне небольшую подсказку и помочь мне в моем пути сюда. Давно я занимался PHP и немного не знал, как лучше подходить здесь.

Некоторое время я искал, но для меня ничего не имело особого смысла, поэтому я прихожу сюда в надежде, что кто-то может помочь.

Счастливой Пасхи.

1 Ответ

0 голосов
/ 21 апреля 2019

Создайте массив и сохраните все свои данные, затем 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);

    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...