gpt4 book ai didi

javascript - 在 Laravel 中使用 Dropzone 上传后的成功消息

转载 作者:行者123 更新时间:2023-12-03 11:26:48 25 4
gpt4 key购买 nike

我在 Laravel 4.2 中使用 Dropzone 上传文件,下面是我在上传后处理文件的函数。

public function postDropFiles()
{
$file = Input::file('file');

$destinationPath = 'uploads/'.Auth::user()->username.'/files/'.date('Y-m-d');

$extension = File::extension($file->getClientOriginalName());
$filename = time().str_random(12).'.'.$extension;

$upload_success = Input::file('file')->move($destinationPath, $filename);


if( $upload_success ) {
return Response::json('success', 200);//->with('uploaded','Succesiful uploaded');
} else {
return Response::json('error', 400);
}

}

代码工作正常,正如您所看到的,当响应为 200(成功)时,我尝试传递名为“uploaded”(已注释)的变量名称,以便我可以向用户显示文件已成功上传的消息。

在我看来,我有这样的事情:

@if(Session::has('uploaded'))
<div class="notice-box"><strong>{{Session::get('uploaded')}}</strong></div>
@endif

我的目标是在上传后创建一个 session 变量,然后用它在 View 中显示消息。我将不胜感激任何帮助。顺便说一句,我是 Laravel 新手。

最佳答案

如果使用非 AJAX 请求

使用 session 外观添加它;

Session::flash('uploaded', 'Successfully uploaded.');

这会将其放入下一个请求的 session 中,然后将其删除。

如果 AJAX 请求

通过您传回ajax请求的JSON数据传递消息值,例如;

Response::json(array('success' => true, 'message' => 'Successfully uploaded file.'), 200);

编辑:按照itachi的建议,出现错误时,将调用ajax中的错误方法。

Response::make(array('success' => false, 'message' => 'Error while uploading file.'), 400);

然后您可以检查成功标志,然后通过 jQuery 将后续消息显示在您希望显示的位置。

关于javascript - 在 Laravel 中使用 Dropzone 上传后的成功消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26886411/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com