Я пытаюсь создать веб-приложение, используя PHP и AJAX. Он должен получать данные из Elasticsearch без обновления страницы (поиск в реальном времени). Можно ли реализовать такой поиск по индексу elasticsearch?
Для этого я создал эти два файла:
index2.php
Ajax-Trials
Ajax Live Data Search using Jquery, PHP, Elasticsearch
Search
$(document).ready(function(){
load_data();
function load_data(query)
{
$.ajax({
url:"fetch2.php",
method:"POST",
data:{query:query},
success:function(data)
{
$('#result').html(data);
}
});
}
$('#search_text').keyup(function(){
var search = $(this).val();
if(search != '')
{
load_data(search);
}
else
{
load_data();
}
});
});
а вот fetch2.php
Когда я ищу любую строку, она успешно печатает заголовки таблицы, но не печатает данные. В чем здесь проблема?
Индекс имеет следующий формат JSON:
{
"_index": "cities",
"_type": "city",
"_id": "35",
"_version": 1,
"_score": 0,
"_source": {
"id": 35,
"@timestamp": "2020-03-10T18:24:46.963Z",
"@version": "1",
"population": 2168000,
"district": "Alger",
"countrycode": "DZA",
"name": "Alger"
},
"fields": {
"@timestamp": [
"2020-03-10T18:24:46.963Z"
]
}
}
Подробнее здесь: https://stackoverflow.com/questions/606 ... ax-and-php