在laravel 5.1中从数据库中获取上传的图像

时间:2016-09-07 20:54:33

标签: php html database laravel

我有这样的上传功能。我可以上传图片,但我无法将其视为刀片。

控制器

public function addProduct()
{

    return view('product.add_product');
}

public function saveProduct(Request $request)
{

    $details = Input::all();

    $product_validation = new Product;
        $validation = Validator::make($details,$product_validation->setRules());


        $destinationPath = '';
        $filename        = '';

        if (Input::hasFile('image')) {
            $file            = Input::file('image');
            $destinationPath = public_path().'/img/';
            $filename        = str_random(6) . '_' . $file->getClientOriginalName();
            $uploadSuccess   = $file->move($destinationPath, $filename);
        }

        if($validation->fails())
            return Redirect::to('/add_product')->withInput()->withErrors($validation);

        else
        {
            $product = new Product;
            $product->product_name                  = $details['product_name'];
            $product->product_description           = $details['product_description'];
            $product->price                         = $details['price'];
            $product->image                         = $destinationPath . $filename;
            $product->date_uploaded                 = $details['date_uploaded'];
            $product->save();

        }
        return view('product.add_product');
  }

这是我的视图

<img src="{{ asset('img/$details->image') }}" alt="{{ $details->product_name }}">
<a href="">{!! $details->product_name !!}</a></h2>
{!! $details->price !!}

我知道我的图片提取不起作用,但我怎么能做正确的代码?希望你能帮助我们。先感谢您。 ^ _ ^

1 个答案:

答案 0 :(得分:0)

如果您将图像存储在$product->image目录中并且只想在视图中返回它们,我建议使用$product->image = '/path/to/folder' . $filename;来存储文件的相对路径。

即。 $product

然后,您可以通过将return view('product.add_product', [ 'product' => $product, ]); 传递到视图

,在刀片模板中执行此操作

控制器

<img src="{{ $product->image }}">

Blade View

$("#foo2").css("background-color")