4 E-Commerce-Website
ich meine Daten versuche zu filtern, sondern etwas, was ich falsch mache
Jeder Filter funktioniert gut wie Farben Marken Preis, aber wenn ich Geschlecht filtern seine Rückkehr Daten, wenn ich dd($products)
auf nach dem, wenn gender Abschnitt
Aber wenn ich dd($products)
vor Rückkehr hier seine Rückkehr 0 Daten bedeuten nichts betrachtet sind meine form
, was ich auf Laravel Filter Anfrage falsch mache
{!! Form::open(['url' => 'category/' . $tag . '/filter', 'files'=>false, 'id' => 'color_form']) !!}
Price Filter
<input name="price" id="ex2" type="text" class="span2" value="" data-slider-min="10" data-slider-max="2000" data-slider-step="5" data-slider-value="[250,450]" onchange="checkBoxHandler()"/>
<li class="">
<input type="checkbox" name="gender[]" id="men" value="male" onchange="checkBoxHandler()"> Men's
</li>
<li class="">
<input type="checkbox" name="gender[]" id="woman" value="female" onchange="checkBoxHandler()"> Woman's
</li>
@foreach($colors as $color)
<input type="checkbox" name="color[]" id="color{{ $color->name }}" value="{{ $color->name }}" onchange="checkBoxHandler()">
<div style="width:25px; height:25px; background:{{ $color->name }}; border:1px solid black; margin:0px 3px 0px 3px; display:inline-block;"></div>   {{ $color->name }}
@endforeach
@foreach($brands as $brand)
<input type="checkbox" name="brand[]" id="brand{{ $brand->name }}" value="{{ $brand->name }}" onchange="checkBoxHandler()">
{{ $brand->name }}<br>
@endforeach
@foreach($sizes as $size)
<input type="checkbox" name="size[]" id="size{{ $size->name }}" value="{{ $size->name }}" onchange="checkBoxHandler()">
{{ $size->name }}<br>
@endforeach
{!! Form::close() !!}
sie e ist mein controller
public function newinindex(Request $request){
if(request()->has('gender')||request()->has('price')||request()->has('color')||request()->has('brand')){
if (request()->has('gender')) {
$products = Product::orderBy('created_at', 'desc')->where('gender', request('gender'))->newin()->paginate(20);
}
if (request()->has('price')) {
$products = Product::orderBy('created_at', 'desc')->newin()->whereBetween('price', explode(',', $request->price))->paginate(20);
}
if (request()->has('color')) {
$products = Product::orderBy('created_at', 'desc')->newin()->whereHas('colors', function ($query) {
$query->where('name', request('color'));
})->paginate(20);
}
if (request()->has('brand')) {
$products = Product::orderBy('created_at', 'desc')->newin()->whereHas('brands', function ($query) {
$query->where('name', request('brand'));
})->paginate(20);
}
}
else {
$products = product::orderBy('created_at', 'desc')->newin()->paginate(20);
}
$sizes = size::orderBy('created_at', 'desc')->paginate(20);
$colors = color::orderBy('created_at', 'desc')->paginate(20);
$brands = brand::orderBy('created_at', 'desc')->paginate(20);
return view('newin.index' ,compact('products', 'brands', 'colors', 'sizes'));
}