第一个Laravel项目。我有一个DBController,它在url之后从数据库中选择一行(例如,URL是/ product / 123,然后它搜索条形码为123的产品)。我想在下一页上创建一个关于productdetails的表格。
控制器:
class ProductDetailsController extends Controller
{
public function product($id){
$product = DB::select('select * FROM inventory WHERE barcode = ?', [$id]);;
return view('productdetails',['product'=>$product]);
}
}
print_r($ product)输出:
数组([0] => stdClass对象([ID] => 1 [条形码] => 01233 [品牌] => Ismeretlen [供应商] => 1 [type] => Építésianyag[name] => Homok [img] => homok.jpg [wholeprice] => 3000 [price] => 5500 [VAT] => 3 [whereis] => U [whereis2] => 1 [count] => 8 [dimension] => M3 [threshold] => 1 [lastsell] => [lastbuy] => [lastchange] => 2017年2月23日 20:56:46 [register] => ))
如果我尝试{{ $product->brand }}
我得到了:
20d205ed160f36c734b8252e44ac81bfa0977988.php第6行中的ErrorException: 试图获得非对象的属性(查看: /var/www/html/project/laravel/leltar/resources/views/productdetails.blade.php)
如果我尝试{{ $product['brand'] }}
我得到了:
20d205ed160f36c734b8252e44ac81bfa0977988.php第6行中的ErrorException: 未定义的指数:品牌(查看: /var/www/html/project/laravel/leltar/resources/views/productdetails.blade.php)
出了什么问题?
我从this PDF
学习Laravel答案 0 :(得分:3)
一旦检查了数组的结构,它首先有第0个索引,
你应该得到它,
{{$product[0]->brand}}
OR
$product = DB::table("inventory")->where("barcode", $id)->first();
// and get data as
echo $product->brand;
试一试,它应该有用。
答案 1 :(得分:0)
试
$product = DB::select('select * FROM inventory WHERE barcode = ?', [$id])->first();
dd($product);
答案 2 :(得分:0)
你应该用雄辩的模型来做,创建一个像这样的库存模型 $产品=库存::其中( '编号',$ ID) - >首先();
您可以获得品牌$ products->品牌。