上传图片并以不同的名称存储
upload image and store with different name
这里应该是三个进程;
- 将图像移动到 public 路径中的文件夹:
/charts/
- 存储不应该相同的不同名称(图像自动编号)
- 将图像的名称存储到
charts
的列名称为 file
Table结构:charts
<div class="form-group col-lg-10">
{!! Form::label('file', 'Chart upload:') !!}
{!! Form::file('file', null,['class'=>'form-control'])!!}
</div>
我在这里做了很多:
public function store(Request $request)
{
$input = $request->all();
if($file = $request->file('file'))
{
$name = time() . $file->getClientOriginalName();
$file->move('charts', $name);
charts::create(['file'=>$name]);
}
}
型号:
class charts extends Model
{
//
protected $uploads = '/upload/';
protected $fillable = ['file', 'trade_id'];
public function getFileAttribute($photo)
{
return $this->uploads . $photo;
}
}
你可以用这个,
if($file = $request->file('file'))
{
$name = time() . $file->getClientOriginalName();
$request->file('file')->storeAs(
'charts', newName
);
charts::create(['file'=>$name]);
}
希望对您有所帮助。
{{ Form::file('file', ['class' => 'form-control']) }}
- 第二个参数必须是数组(默认函数原型)
请检查您在 charts
文件夹中的写入权限
例如,在 Linux 控制台中,使用:sudo chmod 755 charts
此外,您可以将文件夹的所有者更改为 www-data
,以便 Web 服务器进程可以访问该文件夹。在 Linux 控制台中:sudo chown www-data charts
要重命名文件,您可以在 $file->move('charts', $name);
之后使用 php rename( string $oldname, string $newname)
函数
$newname = 'cool-name' . $file->getClientOriginalExtension();
rename($name , $newname);
重命名后您可以将信息保存到数据库中
要在数据库中保存数据:
DB::table('charts')->insert(
[ 'trade_id' => 12345, // 12345 Trader id example
'file' => $newname, // new filename
'created_at' => time(), // current timestamp
'updated_ad' => time()] // current timestamp
);
这里应该是三个进程;
- 将图像移动到 public 路径中的文件夹:
/charts/
- 存储不应该相同的不同名称(图像自动编号)
- 将图像的名称存储到
charts
的列名称为file
Table结构:charts
<div class="form-group col-lg-10">
{!! Form::label('file', 'Chart upload:') !!}
{!! Form::file('file', null,['class'=>'form-control'])!!}
</div>
我在这里做了很多:
public function store(Request $request)
{
$input = $request->all();
if($file = $request->file('file'))
{
$name = time() . $file->getClientOriginalName();
$file->move('charts', $name);
charts::create(['file'=>$name]);
}
}
型号:
class charts extends Model
{
//
protected $uploads = '/upload/';
protected $fillable = ['file', 'trade_id'];
public function getFileAttribute($photo)
{
return $this->uploads . $photo;
}
}
你可以用这个,
if($file = $request->file('file'))
{
$name = time() . $file->getClientOriginalName();
$request->file('file')->storeAs(
'charts', newName
);
charts::create(['file'=>$name]);
}
希望对您有所帮助。
{{ Form::file('file', ['class' => 'form-control']) }}
- 第二个参数必须是数组(默认函数原型)
请检查您在 charts
文件夹中的写入权限
例如,在 Linux 控制台中,使用:sudo chmod 755 charts
此外,您可以将文件夹的所有者更改为 www-data
,以便 Web 服务器进程可以访问该文件夹。在 Linux 控制台中:sudo chown www-data charts
要重命名文件,您可以在 $file->move('charts', $name);
rename( string $oldname, string $newname)
函数
$newname = 'cool-name' . $file->getClientOriginalExtension();
rename($name , $newname);
重命名后您可以将信息保存到数据库中 要在数据库中保存数据:
DB::table('charts')->insert(
[ 'trade_id' => 12345, // 12345 Trader id example
'file' => $newname, // new filename
'created_at' => time(), // current timestamp
'updated_ad' => time()] // current timestamp
);