jQuery
Dropzone.options.sliderDropzone = {
autoProcessQueue: true,
parallelUploads: 1,
acceptedFiles : 'image/*',
paramName : "resim",
init: function () {
this.on("complete", function (file) {
if (this.getUploadingFiles().length === 0 && this.getQueuedFiles().length === 0) {
setTimeout(function(){ location.reload(true); }, 2000);
}
})
}
};
html
<form action="/upload" class="dropzone dropzone-file-area " id="sliderDropzone" method="POST" >
{{ csrf_field() }}
<div class="dz-default dz-message"><span><i class="icon-cloud-download" style="font-size:50px;display:block"></i><br/> Resmi sürükleyip bırakın veya buraya tıklayın.</span></div>
</form>
服务器端 Laravel
public function resim_upload(Request $request,$proje_id)
{
if($resim = $request->file("resim"))
{
$time = time();
$resim_isim = $time.".jpg";
$resim_isim_thumb = "galeri_thumb_".$time.".jpg";
$resim_isim_large = "galeri_large_".$time.".jpg";
Image::make($resim->getRealPath())->fit(600,400)->save(public_path("uploads/".$resim_isim_thumb));
Image::make($resim->getRealPath())->resize(null, 720, function ($constraint) {
$constraint->aspectRatio();
})->save(public_path("uploads/".$resim_isim_large));
$input = [];
$input["isim"] = $resim_isim;
$input["imageable_id"] = $proje_id;
$input["imageable_type"] ="App\Proje";
$input["sira"] = 0;
Resim::create($input);
Session::flash("b_durum",0);
Session::flash("bilgilendirme","Resim başarıyla yüklendi");
}
}
上传多个文件时会出现问题。例如,我想上传 5 个图像文件。在数据库端添加了 5 条记录,但一些图像名称相同。当我控制上传文件夹 3 图像上传但数据库上的图像记录是 5。
上传文件夹中的图像名称是
galeri_large_1479329550.jpg
galeri_large_1479345567.jpg
galeri_large_1479374665.jpg
数据库记录
image name column
---------------------------
galeri_large_1479329550.jpg
galeri_large_1479329550.jpg
galeri_large_1479345567.jpg
galeri_large_1479345567.jpg
galeri_large_1479374665.jpg
有时上传多个文件时没有问题,但通常会出现此问题。所以我不明白为什么会出现问题。