Я хочу сделать запрос INSERT
в моем php-файле для пользователей, которые были помещены в группу №3. Я знаю с PHP, вы можете проверить, была ли нажата кнопка или что-то isset, но как вы можете проверить значение, которое было отправлено и передано с помощью AJAX?Как проверить значение, которое было отправлено в форме и отправлено по вызову AJAX, в файле PHP
Итак, допустим, я изменил уровень группы на 3 (уровни группы определяются через опцию значения в форме). Как я могу выполнить проверку запроса, которая была выбрана в качестве опции?
Форма
<div class="change_group_button">
<a class="change_group" href="javascript:void(0)">Change User
Permission</a>
</div><br>
<div id="light" class="change_group_popup">
<a class="close" href="javascript:void(0)">Close</a>
<div class="group_success" style="color: red;"></div><br>
<form id="update_group" action="" method="POST" accept-charset="utf-8">
<div class="field">
<label for="group">Group</label>
<input type="hidden" value="<?php echo $approved_id; ?>" id="approved_id" name="id" />
<input type="hidden" value="<?php echo $approved_firstname; ?>" id="approved_firstname" name="firstname" />
<input type="hidden" value="<?php echo $approved_lastname; ?>" id="approved_lastname" name="lastname" />
<input type="hidden" value="<?php echo $approved_username; ?>" id="approved_username" name="username" />
<input type="hidden" value="<?php echo $approved_email; ?>" id="approved_email" name="email" />
<select id='group_id' name='group' required>
<option value=''><?php echo htmlentities($group); ?></option>
<option value="1">Bench</option>
<option value="2">Spectator</option>
<option value="3">Team Member</option>
<option value="4">Commissioner</option>
</select>
</div>
<input type="submit" value="submit" name="group">
</form>
AJAX вызов
$('#update_group').on('submit', function (event) {
event.preventDefault();
$.ajax({
url: 'user_group_update.php',
type: 'POST',
data: {
id: $("#approved_id").val(), //id
firstname: $("#approved_firstname").val(), //firstname
lastname: $("#approved_lastname").val(), //lastname
username: $("#approved_username").val(), //username
email: $("#approved_email").val(), //email
// update_group: $("#group_id").val() //group level
update_group: $(this).find("#group_id option:selected").val()
},
success: function (data) {
//do something with the data that got returned
$(".group_success").fadeIn();
$(".group_success").show();
$('.group_success').html('User Permission Level Changed!');
$('.group_success').delay(5000).fadeOut(400);
alert(data);
},
error: function(jqXHR, textStatus,errorThrown)
{
// alert on an http error
alert(textStatus + errorThrown);
}
});
return false;
});
В моем PHP файл я получаю эти поля из формы ..
$approved_id = $_POST['id'];
//test - delete if it doesn't work
$approved_firstname = $_POST['firstname'];
$approved_lastname = $_POST['lastname'];
$approved_username = $_POST['username'];
$approved_email = $_POST['email'];
$change_group = $_POST['update_group'];
ajax не является магическим. это просто обычный простой HTTP-запрос, как и любой другой HTTP-запрос, который просто выполняется в «фоновом режиме» браузера, а не «на вашем лице», как в большинстве форм. –
Я не уверен, что вы просите ... Значение, которое вы ищете, находится в переменной '$ change_group', не так ли? Что именно здесь не работает? – David
Ничего. Просто проверьте значения в '$ _POST'. – Jigar