@kaliboba

Почему поиск не работает?

Делаю поиск на сайте, но он не работает, в чём ошибка?
web.php
<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\MainController;
use App\Http\Controllers\StorageController;

Route::post('/', [MainController::class, 'form']);
Route::get('/search', [MainController::class, 'search'])->name('search');
Route::get('/', [MainController::class, 'home']);
Route::get('category/{c}',[MainController::class,'home'])->name('category');
Route::get('/{id}',[MainController::class,'prod'])->name('prod');
Route::get('cabinet/',[StorageController::class,'index'])->name('cabinet');
?>

Форма поиска
<form method="get" action="{{ route('search') }}">
      <input type="text" name="w" id="w" placeholder="Я ищу..." />
      <input type="submit">
    </form>

MainController(search)
public function search(Request $request){
        $w = $request->w;
        $r = Products::where('name', 'LIKE', '%{ $w }%')->orderBy('name');
        $c = Category::children(null);
        return view('f',['r' => $r,'c' => $c]);
    }

f.blade.php
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
@extends('base');
</head>
<body>
<br>
<br>
<br>
<br>
<br>
<h1 style="font-weight:bold; font-family:serif;">ТОВАРЫ</h1>
@foreach($r as $i)
<h3 style="font-weight:200;"> Товар: {{$i->name}}</h3>
<br>
<h2 style="font-weight:200;"> Цена: {{$i->price}}</h2>
<a class="black" href="{{route('prod',$i->id)}}"><button class="button">ПОДРОБНЕЕ</button></a>
<a class="black" href=""><button class="button">КУПИТЬ</button></a>
<hr>
@endforeach
</body>
</html>

Суть в том, что оно должно фильтровать имеющийся товар на главной странице, до этого делал так, чтобы пересылало всё на другую страницу, но и там, и там не работает
  • Вопрос задан
  • 109 просмотров
Решения вопроса 1
@kaliboba Автор вопроса
Отвечаю на свой вопрос сам, во1 - переменные в одинарные кавычки не ставятся, во2 - ->get(), благодарю за игнор!)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы