سلام
من برای ثبت تصاویر در پروژه لاراولم از dropzone و کدهای زیر استفاده کردم
مشکل اینجاست که کاربر هر بار یک تصویری رو انتخاب میکنه در دیتابیس و فولدر مربوطش ثبت میشه و این میتونه یه بار اضافی برای سایت به حساب بیاد...
سوالی که از دوستان داشتم اینه که چه تغییراتی باید در کدهای زیر بدم تا کاربر تا زمانیکه دکمه تایید رو کلیک نکرده تصاویر ثبت نشن ؟
کد js :
Dropzone.options.addiamage=
{
maxFiles: 1,
renameFile: function(file) {
var dt = new Date();
var time = dt.getTime();
return time+file.name;
},
acceptedFiles: ".jpeg,.jpg,.png",
addRemoveLinks: true,
timeout: 50000,
removedfile: function(file)
{
var name = file.upload.filename;
$.ajax({
headers: {
'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
},
type: 'POST',
url: '{{ url("deleteimage") }}',
data: {filename: name},
success: function (data){
console.log("File has been successfully removed!!");
},
error: function(e) {
console.log(e);
}});
var fileRef;
return (fileRef = file.previewElement) != null ?
fileRef.parentNode.removeChild(file.previewElement) : void 0;
},
success: function(file, response)
{
console.log(response);
},
error: function(file, response)
{
return false;
},
};
html مربوطه :
<div class="col-lg-12">
<form method="post" id="addiamage" action="{{ url('image?id='.$userimage->id)}}" class="dropzone my-3">
{{ csrf_field() }}
</form>
</div>
کدهای داخل کنترلر :
public function image(Request $request){
$mobile=Auth::user()->mobile;
$image = $request->file('file');
$imageName = $image->getClientOriginalName();
$image->move(public_path('img'),$imageName);
$imagenew=Image::where('mobile',$mobile)->update(['image_url'=>$imageName]);
return response()->json($imageName);
}
ممنون میشم راهنمایی کنید ....
اساتید راهنمایی کنید ممنون میشم :/
@hesammousavi
@ali.bayat
@endworld
@mohsenbostan
@mhyeganeh
@hossein.r.۱۴۴۲
و....
به دکمه ی سابمیت یه onclick=myFunc() بده و کد js را بزار توی یه function myFunc
روش من این است که ابتدا فایل ها رو داخل یک فولدر اپلود کنه اما نامه این فولدر رو یک تایم استمپ بزارین که تایم الان باشه به علاوه مثلا ده دیقه دیگ بعد اگه تا ده دیقه دیگه کاربر ادرس رو در دیتابیس نفرستاد اون فولدر رو پاک کنین
توی داکیومنت خود دراپ زون یه قسمت هست برای حذف فایل البته دیر زمانیه باهاش کارنکردم ولی قبلا فک کنم یه همچین چیزی بود، من قبلا از یه لایبرری دیگه استفاده میکردم خیلی چیز سبک و عالی بود، تقریبا مثل وردپرس بود، به راحتی هم کاستم میشد.
فک کنم همین بود
https://github.com/JeremyFagis/dropify
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟