Я пытаюсь получить значение из выбранного варианта и опубликовать на Php. Но у меня также есть форма для публикации данных. Я пытаюсь объединить два, но теперь, когда я пытаюсь запустить код, я получаю пустую страницу запроса.
message.php
<form id="messageEmployeeForm" class="form table-striped" method="POST" action="core/query.php">
<select id='toEmployee' class='form-control formBlock' name='toEmployee_id' value='' type='text' class='form-control formBlock'>
<option value="">To...</option>
<?php
$employeesQuery = $db->query("SELECT * FROM employees");
while ($employee = mysqli_fetch_assoc( $employeesQuery)) {
?>
<option id='toEmployees_id' name='toEmployees_id' value="<?php echo $employee['employee_id'] ;?>">
<?php echo $employee['first_name'] ;?> <?php echo $employee['last_name'] ;?></option>
<?php } ;?>
</select>//other inputs here...
<input name="sendMessage" id="submit" type="submit" class="formBlock btn btn-success" value="Send Message"/>
</form>
JQuery
<script>
$(document).ready(function () {
$("#toEmployee").bind("change", function (e) {
$.ajax({
type: "POST",
data: { data: $("#toEmployee").val() }
});
});
});
</script>
query.php
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['sendMessage']) && isset($_POST['data'])){
$var = $_POST['data'];
//other data to be posted and bind here using prepared statements...
]
Ваш query.php Файл ожидает, что во время запроса будут присутствовать два почтовых ключа, без них он не будет запускать внутренний код.
isset($_POST['sendMessage']) && isset($_POST['data'])
Поэтому внутри вашего jQuery вам необходимо дополнительно отправить sendMessage
ключ вроде так:
$.ajax({
type: "POST",
data: {
data: $("#toEmployee").val(),
sendMessage: 'your value'
},
success: function(data) {
// do something with output (data)
}
});
Других решений пока нет …