首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Laravel将图片存储到mysql

使用Laravel将图片存储到mysql
EN

Stack Overflow用户
提问于 2018-11-03 17:19:27
回答 3查看 41关注 0票数 0

我正试着用laravel存储一些上传到我数据库的图片。一切都进行得很顺利,所有的东西都被存储了,但是对于这个文件,他们一直在存储一个38B的bin文件,我试着把它读到.Txt文件中,它有到/Applications/MAMP/tmp/php/phpUzMXbn的路径。这是我的函数代码:

代码语言:javascript
复制
Route::post('/FruitCreate',function(Request $request){
$fruit = new fruit;
$fruit->name = $request->name;
$fruit->price = $request->price;
$fruit->picture = $request->image;
$fruit->save();
return redirect('FruitsChangingPricePanel');

我的刀刃:

代码语言:javascript
复制
<form enctype="multipart/form-data" method="POST" action="{{ url('FruitCreate') }}" >
{{ csrf_field() }}
<input type="text" name='name'>
<input type="text" name='price'>
<input type="hidden" name="MAX_FILE_SIZE" value="30000000" />
<input type="file" name='image'>
<button type='submit'> submit </button>

谢谢你的帮助!!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-11-03 17:27:24

你可以这样做:

$file = $request->file('image'); $imageContent = $file->openFile()->fread($file->getSize())$fruit = new fruit; $fruit>picture = $imageContent; $fruit>save();

注意:您的列类型必须是Blob。

票数 0
EN

Stack Overflow用户

发布于 2018-11-03 17:28:30

因为你想直接存钱。试试这个

代码语言:javascript
复制
         $file = Input::file('file');

        $destinationPath = public_path(). '/uploads/';
        $filename = $file->getClientOriginalName();

        $file->move($destinationPath, $filename);

        echo  $filename;
        //echo '<img src="uploads/'. $filename . '"/>';

        $user = ImageTest::create([
            'filename' => $filename,
        ]);
票数 0
EN

Stack Overflow用户

发布于 2018-11-03 17:32:15

首先,您应该获取您的图像,然后将其存储到public/uploads/fruits folder.And,然后将图片路径保存到DB。

代码语言:javascript
复制
$fruit = new fruit;
$fruit->name = $request->name;
$fruit->price = $request->price;

if ($request->has('image')) {
   if (!file_exists(public_path('uploads/fruits/'))) {
       mkdir(public_path('uploads/fruits/'));
   }
   if (!file_exists(public_path('uploads/fruits/' . date('FY') . '/'))) {
       mkdir(public_path('uploads/fruits/' . date('FY') . '/'));
   }
    $image = $request->file('image');
    $filename = public_path('uploads').'/fruits/' . date('FY') . '/' . str_random() . '.' . $image->guessExtension();
    \Image::make($image->getRealPath())->encode('jpg')->resize(220, 220)->put($filename);

    $fruit->picture = $filename;
}

$fruit->save();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53133711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档