У меня есть файл conrete.php, в котором, в зависимости от выбранного <option>, выводятся соответствующие данные по Ajax-запросу (отдельный скрипт).
Возможно ли сделать так, чтобы concrete.php мог принимать GET-параметры и выводить соответствующие данные, не используя <form> и не перезагружая страницу?
К примеру, мой Ajax-запрос принимает один параметр - id. Как я могу сделать запрос с этим параметром, введя в адресной строке concrete.php?id=2?
Примечание: В случае, если выбрал <option>, то добавлять к текущему URL параметры.
/**
* concrete.php file
*/
<div class="col-xs-6 col-xs-offset-3 select">
<select class="form-control">'
<option selected value="default">Выберите событие</option>
<?outputEventData("event");?> // вывод <option>-ов
</select>
</div>
<div class="col-xs-10 col-xs-offset-1 danger-events"></div> // сюда выгружаются ajax-данные
<script>
$('select.form-control').on('change', function() {
var id = $('.form-control option:selected').val();
if(id !== 'default') {
$.ajax({
type: "GET",
url: "getData.php",
data: {id: id},
success: function(data) {
$('.danger-events').html(data);
}
});
}
});
</script>
/**
* getData.php file
*/
<?php
header('Content-Type: text/html; charset=utf-8');
if(isset($_GET['id'])) {
echo someData;
}
В теории должно работать как-то так:
/**
* concrete.php file
*/
...
<div class="col-xs-10 col-xs-offset-1 danger-events">
<?php
if(isset($_GET['id'])) {
include('getData.php?inline=1&id='.$_GET['id']);
}
?>
</div>
<script>
$('select.form-control').on('change', function() {
var id = $('.form-control option:selected').val();
history.pushState({id: id}, "", "concrete.php?id=" + id);
...
/**
* getData.php file
*/
<?php
if(!isset($_GET['inline'])) {
header('Content-Type: text/html; charset=utf-8');
}
if(isset($_GET['id'])) {
echo someData;
}
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости