Я пытаюсь создать форму, в которой пользователь заполняет информацию и нажимает отправить. После нажатия страница никогда не будет обновляться. Обработка формы и обработка данных будут выполняться после щелчка пользователя.Ajax Почтовый запрос не работает?
Я пытаюсь использовать JQuery и Ajax для достижения этой цели, до сих пор это то, что у меня есть:
HTML
<form class="article_information_form" action="" method="POST">
<label>Title </label>
<input type="text" name="articleTitle"> <br>
<label>Article URL: </label>
<input type="text" name="articleUrl"> <br>
<p>Number of pages</p>
<select name="numPages">
<option value="" selected></option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
</select>
<br>
<?php echo $message;?> //For Debugging
<input type="submit" name="article_info_btn" value="Submit">
</form>
PHP
if (isset($_POST["articleTitle"], $_POST["articleUrl"], $_POST["numPages"])) {
$message = "Success!"; //For debugging
}
Ajax
$(document).on('submit', '.article_information_form', function(e) {
e.preventDefault();
$.ajax({
type : 'POST',
url : '',
success : function(data) {
alert("Success!");
}
})
})
После нажатия кнопки submit
отображается всплывающее предупреждение окна успеха. Хотя, переменная $message
никогда не распечатывает «успех!». Это означает, что он не обрабатывает PHP $_POST
.
Как сделать так, чтобы Ajax отправил информацию на PHP $_POST
?
Это запрос AJAX, и они используются для извлечения данных в функции успеха, и он создаст новый HTTP-запрос. Он не будет делать запрос на ту же страницу и влияет на эту страницу. Я думаю, вам нужно больше узнать о звонках AJAX. – GillesC