我想上传多个图像文件并通过电子邮件发送给客户。但是,将 dropzone js代码: SendMailController发送上传的图像。 图片上传控制器: 当我上传多张图片并通过电子邮件发送sendinding时,它仅发送dropzone中最后上传的文件。如何发送所有上传的文件? 答案 0 :(得分:1) 由于有多个文件,您需要遍历file变量以获取文件 答案 1 :(得分:0) 尝试一下 用于单张图片上传代码 如果要上传多个文件 call to a member function getclientoriginalname() on array
添加到dropzone时,ajax请求会收到此错误uploadMultiple: true,
。没有该选项的多张图片上传。无论如何,我想通过电子邮件发送多个文件,该怎么办?Dropzone.options.uploadimg = {
paramName: "file", // The name that will be used to transfer the file
maxFilesize: 5, //MB
acceptedFiles: ".jpeg,.jpg,.png",
uploadMultiple: true,
addRemoveLinks: true,
success: function(file, response)
{
$.notify({
message: 'Image uploaded Successfully!'
},
{
type: 'success'
});
},
error: function(file, response)
{
return false;
console.log('fail to upload');
},
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
}
public function sendNotifications(Request $request)
{
$id_int = Cookie::get('jobid');
$img_name = Cookie::get('imgName');
$data = DB::table('customers')
->join('jobs', 'jobs.id', '=', 'customers.id')
->select('firstname','email')
->where('jobs.id', '=', $id_int)
->get()->toArray();
foreach ($data as $value) {
$customer_firstname = $value->firstname;
$customer_email = $value->email;
}
$pathToFile = public_path() . "\\uploads\\" . $img_name;
//send the email to the relevant customer email
Mail::to($customer_email)->send(new SendMail($customer_firstname, $pathToFile), function($message){
$message->attach($pathToFile);
});
}
class ImageUploadController extends Controller
{
public function uploadImage(Request $request){
$img_file = $request->file('file');
$imgName = $img_file->getClientOriginalName();
Cookie::queue(cookie('imgName', $imgName, $minute = 5));
$img_file->move(public_path('uploads'), $imgName);
}
}
2 个答案:
class ImageUploadController extends Controller
{
public function uploadImage(Request $request){
$img_files = $request->file('file');
foreach($img_files as $img_file){
$imgName = $img_file->getClientOriginalName();
Cookie::queue(cookie('imgName', $imgName, $minute = 5));
$img_file->move(public_path('uploads'), $imgName);
}
}
}
class ImageUploadController extends Controller
{
public function uploadImage(Request $request){
if($request->hasFile('file')) {
$file = $request->file('file');
$fileName = $file->getClientOriginalName();
Cookie::queue(cookie('imgName', $fileName , $minute = 5));
$img_file->move(public_path('uploads'), $fileName );
}
}
}
$datas = [];
$result = [];
if ($request->hasfile('file')) {
foreach ($request->file('file') as $key => $file) {
$name = $file->getClientOriginalName();
$file->move(public_path() . '/uploads/', $name);
$datas[$key] = $name;
$file = new ModelName();
foreach ($datas as $data) {
$file->file= $data;
$file->save();
}