【发布时间】:2019-11-05 11:38:41
【问题描述】:
我无法使用 laravel 显示搜索结果。下面是路由、控制器和视图的代码:
路线:
Route::resource('search', 'SearchController');
控制器:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Order;
use Redirect;
use Auth;
use DB;
class SearchController extends Controller
{
public function index(Request $request)
{
$order = Order::all();
return view(search.index', compact(search));
}
public function search(Request $request)
{
$search = $request->search;
$order = DB::table('order')
->where('custName','like',"%".$search."%");
return view('search.index',compact('search'));
}
}
查看
<form action="search" method="GET">
<input type="text" name="custName" class="form-control" <br>
<button type="submit" class="btn btn-primary">SEARCH</button>
</div>
</div>
<table class="table table-bordered" width="500">
<tr>
<td><font color="white">RESULT :</font></td>
</tr>
@foreach($order as $order)
<tr>
<td>{{ $order->custName }}</td>
<td>{{ $order->orderStatus }}</td>
</tr>
@endforeach
</table>
目录位置
c:/xampp/htdocs/web/resources/views/search/index.blade.php
显示错误
Undefined variable: order (View: c:\xampp\htdocs\web\resources\views\search\index.blade.php)
以上是我在数据库中搜索记录的代码。但结果总是未定义的变量。
如何使用上面的代码显示搜索结果。谢谢
【问题讨论】:
-
将
$order传递给view,将这一行return view(search.index', compact(search));改为return view(search.index', compact('order'));
标签: laravel