Witam,
Korzystając z ui-autocomplete napisałem sobie wyszukiwarkę z podpowiadaniem, problem w tym, że na localhost działa, ale na serwerze produkcyjnym już nie(zero błędów w konsoli, request do php się wykonuje jednak response jest pusty, natomiast gdy tam print_r przed return w php zwraca poprawną tablicę wyników).
var cache = {};
var search = $("#search");
search.autocomplete({
minLength: 1,
autoFocus: true,
source: function(request,response){
var term = request.term;
if(term in cache){
response(cache[term]);
return;
}
$.getJSON("/pl/search/search",request,function(data){
cache[term] = data;
response(data);
});
},
select: function( event, ui ) {
if(ui.item.value!='Brak rezultatów' && ui.item.value!='Keine Ergebnisse gefunden' && ui.item.value!='No result' && ui.item.value!='Найденные'){
$('#search').val(ui.item.value);
$("input.buttonS").trigger("click");
}
}
});
public function searchAction(){
$this->view->disable();
$lang = parent::getTranslation();
$data = $this->request->get();
$req = $data['term'];
$item = new \Models\Item\Item();
$items = $item->getItemByNameAndLang($req, $_SESSION['lang']);
foreach($items as $it){
$ret[] = $it->getName($_SESSION['lang']);
}
$ret[] = $lang->_("nosearch");
}
return json_encode($ret);
}
Co robię nie tak?