Не работает вывод результатов динамического поиска на laravel
Дело такое пишу вот этот код отдельно оно работает и показывает данные из базы данных без обновлении на аяксе.
Вот это я перенес в laravel проект и там оно не работает токены туда сюда добавлял эти так и по другому {'referal':$(this).val(), _token: '{{csrf_token()}}'}
Но в поиске ничего не показывает
И все это находится в одном файле пробовал в стиле laravel разделить их по контроллерам и все такое но все равно не работает в чем может быть проблема можете подсказать Заранее спасибо
$(function(){
//Живой поиск
$('.who').bind("change keyup input click", function() {
if(this.value.length >= 2){
e.preventDefault();
$.ajax({
type: 'POST',
url: "#", //Путь к обработчику
data: {'referal':this.value},
response: 'text',
success: function(data){
$(".search_result").html(data).fadeIn(); //Выводим полученые данные в списке
}
})
}
})
$(".search_result").hover(function(){
$(".who").blur(); //Убираем фокус с input
})
//При выборе результата поиска, прячем список и заносим выбранный результат в input
$(".search_result").on("click", "li", function(){
s_user = $(this).text();
//$(".who").val(s_user).attr('disabled', 'disabled'); //деактивируем input, если нужно
$(".search_result").fadeOut();
})
})
В хедере
<meta name="csrf-token" content="{!! csrf_token() !!}" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
В теле
<input type="text" name="referal" placeholder="Поиск" class="who" >
<ul class="search_result"></ul>
<?php
define("DB_HOST","localhost");
define("DB_NAME","helix02_db"); //Имя базы
define("DB_USER","root"); //Пользователь
define("DB_PASSWORD",""); //Пароль
$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
$mysqli -> query("SET NAMES 'utf8'") or die ("Ошибка соединения с базой!");
if(!empty($_POST["referal"])){ //Принимаем данные
$referal = trim(strip_tags(stripcslashes(htmlspecialchars($_POST["referal"]))));
$db_referal = $mysqli -> query("SELECT * from `services` search WHERE name LIKE '%$referal%'")
or die('Ошибка №'.__LINE__.'<br>Обратитесь к администратору сайта пожалуйста, сообщив номер ошибки.');
while ($row = $db_referal -> fetch_array()) {
echo "\n<a href='https://helix-almaty.kz/services/show/".$row["model"]."'><li class='odo'>".$row["name"]."</li></a>"; //$row["name"] - имя таблицы
}
}
?>
Ответы (1 шт):
Автор решения: Vasyl Zhuryk
→ Ссылка
Вы делаете запрос ajax, а в него не добавляете сам этот хеадер. По факту нужен такой код, перед самим $.ajax:
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
Подробней почитайте вот тут: Laravel documentation: X-CSRF-TOKEN