Отображение базы данных с помощью Java Script (Ajax)

132
15 января 2020, 18:10

Требуется помощь в решении вопроса, касающегося запросов в базу данных и их отображения на html странице. Есть запрос с двумя параметрами :p1 и :p2, эти параметры собираю с 2 value в 2 раскрывающихся html списках. Нужно, что бы при выборе 2 нужных позиций и нажатии на кнопку происходил запрос в БД и сразу же вывод оттуда данных в html форму. Каким способом это лучше сделать?

Пока что удалось только возвращать собранные данные с этих 2-х списков.

$(function () { 
  $("form").bind('submit', function (e) { 
    e.preventDefault(); 
    var form = $("form").serialize(); 
    $("#results").text(form); 
    var form = $(this), 
      serialize = form.serialize(); 
  }); 
});

Никак не могу разобраться с тем, как передать данные из JS в PHP скрипт и каким образом их там подставлять в в значения :p1 и :p2, да ещё и так, что бы всё это работало асинхронно.

Answer 1

Посмотрите в сторону моего ответа, ajax запрос по ссылке .

Вам в data: необходимо будет отправлять ваши данные с формы:

data: { 
   'form_data': form
}

В php: ловить по ключу form_data.

Answer 2

Бро, крч тебе надо создать файл .php в котором будет запрос в бд с нужным query. 2 значения ты возьмешь из $_POST запроса jquery, назначишь в .php файле

if($_POST){ 
$table = $_POST['значение_1'];
$mailVariable = $_POST['значение_2'];
а ниже любой запрос в бд с использованием переменных.

Также в файле где берешь ети перменные (в .js) пишешь
$.post( "test.php", { name: "переменная_1", time: "переменная_2" },function(){//выполнить в случае успеха} ); Понятно? Вроде все так... И еще тебе надо будет работать c JSON файлами и фетчить в том php файле то шо тебе вернется из запроса в бд а потом возвращать в .js файл/html файл где ajax post запрос. Крч много объяснять - погугли Ajax php mysql

Answer 3

Всем большое спасибо за помощь, удалось решить проблему немного по другому. Если кому то пригодится:

JS: Здесь я собираю значения с 2-х селектов в html

$('#button').click(function() { 
  var name1 = $('#name1').val(); 
  var name2 = $('#name2').val(); 
 
  $.ajax({ 
    url: 'config.php', 
    data: { 
      'name1': +name1, 
      'name2': +name2 
    }, 
    error: function(jqXHR, textStatus, errorThrown) { 
      alert('Не удалось выполнить запрос'); 
      //$("#results").text(textStatus); 
    }, 
    success: function(data, textStatus) { 
      //$("#results1").text(textStatus); 
      $('#content').text(data); 
    } 
  }); 
});

php: Тут просто возвращаю обратно

if(isset($_GET['name1'])) {
    echo $name = $_GET['name1'];
}
if(isset($_GET['name2'])) {
    echo $name = $_GET['name2'];
    exit();
}
READ ALSO
Laravel обрезание текса в php с сохранением слов

Laravel обрезание текса в php с сохранением слов

как вывести из базы с обрезанием по символам, желательно слова не отрезать

102
Подключение двух таблиц к одному .php

Подключение двух таблиц к одному .php

Проблема в том что у меня в БД mysql имеется 2 таблицы,и мне надо как-то одновременно из этих таблиц выводить значения

109
Помогите разобраться с ошибкой Call to a member function getActiveSheet() on null

Помогите разобраться с ошибкой Call to a member function getActiveSheet() on null

Возможно вопрос глупый, но, видимо глаз уже замылился и не вижу очевидногоПри работе с классом возникла такая ошибка: Uncaught Error: Call to a member function...

121
Как записать данные в определенный блок в другом файле?

Как записать данные в определенный блок в другом файле?

Для записи данных в другой файл использую следующий код:

140