#javascript #php #html
#javascript #php #HTML
Вопрос:
У меня есть эта функция jquery, которая отправляет POST-запрос на сервер
function loadInfo() {
jQuery(function($) {
$.ajax({
method: "POST",
url: "/admin.php",
dataType: "json",
success: function(data) {
console.log(data);
for (var i = 0; i < data.length; i ) {
setMarker(data, i, "red");
printInfo(data, i);
}
}
})
});
}
Вот как обрабатывается запрос
if($_SERVER['REQUEST_METHOD'] === 'POST'){
header('Content-Type: application/json');
require 'private/database.php';
$sql = "SELECT * FROM form";
$result = mysqli_query($conn, $sql);
$data = array();
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$data[] = $row;
}
}
die(json_encode($data));
}
Код работает, но что, если я отправлю несколько POST-запросов на один и тот же сервер? Есть ли способ различать их, как при обработке HTML-форм?
например, если кнопка, которая отправляет форму, является «submit_button»…
if (isset($_POST['submit_button'])) {
...
}
Комментарии:
1. Так почему бы вам не создавать разные конечные точки для попадания, если важно, что его отправляет….
Ответ №1:
Существует несколько способов отправки post с помощью AJAX с данными (несколько элементов данных). Одним из способов является:
$.ajax({
url: 'process.php',
type: 'POST',
data: {status: "ok", name: "Richard"},
success: function (result) {
alert('success');
}
})
В приведенном выше случае вы отправили данные о статусе и имени в php-скрипт методом POST. Надеюсь, что это может ответить на ваш вопрос.
Комментарии:
1. При получении формы, буду ли я использовать «if (isset($_POST[‘Richard’])) {}»?
2. должно быть if (isset($_POST[‘name’])) { }
Ответ №2:
Вы должны отправить некоторый параметр, чтобы дифференцировать запрос.
eg: $.post( "test.php", { name: "John", time: "2pm", method:"formSubmit" } );