hen*_*spt 2 php pdf file-upload laravel laravel-5
我正在使用 Laravel 5.0。我有一个文件上传功能。进行得顺利。但我想让用户只上传 pdf 文件。我想在浏览文件时,存储只显示只有 .pdf 文件的文件。我想对要上传的文件进行大小限制。
这是视图
<div class="form-group">
<label for="upload_file" class="control-label col-sm-2">Upload File</label>
<div class="col-sm-9">
<input class="form-control" type="file" name="upload_file" id="upload_file" required>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这是控制器
$destination = 'files';
if($request->hasFile('upload_file')) {
$file = $request->file('upload_file');
$extension = $file->getClientOriginalExtension();
$file_name = str_replace('/','_',$request['nomor_surat']) . '-' . $kode_divisi[0]->kode_divisi . '.' . $extension;
$file->move($destination, $file_name );
}
$upload_file = $file_name;
$surat = new Surat();
$surat->upload_file = $upload_file;
$surat->save();
Run Code Online (Sandbox Code Playgroud)
我接下来该怎么做?我应该在我的控制器和路由和视图中添加什么?
您可以限制用户仅使用 HTML 文件输入accept属性浏览 PDF 文件:
<input type="file" accept="application/pdf" />
Run Code Online (Sandbox Code Playgroud)
要限制大小,您可以在服务器端进行:
$file = $request->file('upload_file');
//no files larger than 700kb
if ($file->getSize() > 700000)
{
//respond not validated, file too big.
}
Run Code Online (Sandbox Code Playgroud)
您还可以验证服务器上的文件类型:
if ($file->getClientMimeType() !== 'application/pdf')
{
//respond not validated, invalid file type.
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4285 次 |
| 最近记录: |