大部分代码为可修改。不必与拘泥于以下形式。
首先是html代码
<input type="file" name="file" id="upload" placeholder="请选择导入文件" >
注:js代码需要引用jquery
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
js代码如下
$("#upload").change(function () {
var files = $('#upload').prop('files');
var data = new FormData();
data.append('file', files[0]);
console.log(data)
$.ajax({
type: 'post',
//在headers头中加入token,防止csrf
headers: { 'X-CSRF-TOKEN' : '{{ csrf_token() }}' },
//请求的地址(laravel 里的路由名称)
url: "import",
data: data,
cache: false,
processData: false,
contentType: false,
}).success(function (data) {
alert(data);
}).error(function () {
alert("上传失败");
});
});
因为这篇文章主要用于excel文件导入,所以代码块中也是文件导入的代码。有需要可以自行修改。
/**
* @return \Illuminate\Support\Collection
*/
public function import(Request $request)
{
//文件名称
//\request()->file('file')
//导入方法
Excel::import(new FilesImport,\request()->file('file'));
if(back()){
return '成功';
}
return '失败';
}