PHP使用ajax的post方式下載excel文件簡單示例
本文實(shí)例講述了PHP使用ajax的post方式下載excel文件。分享給大家供大家參考,具體如下:
項(xiàng)目需求,前端發(fā)起ajax請求,后端生成excel并下載,同時(shí)需要在header頭中,帶上token驗(yàn)證信息,參考了很多文章,最終實(shí)現(xiàn)如下:
PHP后端使用base64:
$filename = 'demo.xlsx'; $objWriter = \PHPExcel_IOFactory::createWriter($objectPHPExcel, 'Excel2007'); ob_start(); $objWriter->save("php://output"); $xlsData = ob_get_contents(); ob_end_clean(); return Api::success(['filename' => $filename, 'file' => "data:application/vnd.ms-excel;base64," . base64_encode($xlsData)]);
JS前端:
$('.download').click(function(){ var url = "http://xxxx.com/group/bi/export"; var params = { from_date: '2017-09-01', to_date: '2017-09-08', group_id: 1 }; $.ajax({ type:'POST', url: url, data: params, beforeSend: function(request) { request.setRequestHeader("Authorization", "token信息,驗(yàn)證身份"); }, success: function(redata) { // 創(chuàng)建a標(biāo)簽,設(shè)置屬性,并觸發(fā)點(diǎn)擊下載 var $a = $("<a>"); $a.attr("href", redata.data.file); $a.attr("download", redata.data.filename); $("body").append($a); $a[0].click(); $a.remove(); } }); });
更多關(guān)于PHP相關(guān)內(nèi)容可查看本站專題:《PHP+ajax技巧與應(yīng)用小結(jié)》、《php操作office文檔技巧總結(jié)(包括word,excel,access,ppt)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
- JQuery的AJAX實(shí)現(xiàn)文件下載的小例子
- Ajax請求二進(jìn)制流進(jìn)行處理(ajax異步下載文件)的簡單方法
- Ajax實(shí)現(xiàn)文件下載
- Jquery Ajax請求文件下載操作失敗的原因分析及解決辦法
- Ajax 生成流文件下載(實(shí)現(xiàn)代碼)
- jQuery的ajax下載blob文件
- 使用Ajax生成的Excel文件并下載的實(shí)例
- jQuery使用動態(tài)渲染表單功能完成ajax文件下載
- SpringMVC+Ajax實(shí)現(xiàn)文件批量上傳和下載功能實(shí)例代碼
- ztree+ajax實(shí)現(xiàn)文件樹下載功能
相關(guān)文章
PHP實(shí)現(xiàn)給定一列字符,生成指定長度的所有可能組合示例
這篇文章主要介紹了PHP實(shí)現(xiàn)給定一列字符,生成指定長度的所有可能組合,涉及PHP數(shù)組遍歷、數(shù)值運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2019-06-06php中debug_backtrace、debug_print_backtrace和匿名函數(shù)用法實(shí)例
這篇文章主要介紹了php中debug_backtrace、debug_print_backtrace和匿名函數(shù)用法,以實(shí)例形式分析了debug_backtrace和debug_print_backtrace函數(shù)在調(diào)試過程中的作用,并分析了PHP5.3新增匿名函數(shù)的用法,需要的朋友可以參考下2014-12-12php提示W(wǎng)arning:mysql_fetch_array() expects的解決方法
這篇文章主要介紹了php提示W(wǎng)arning:mysql_fetch_array() expects的解決方法,是一個(gè)比較典型的php程序錯(cuò)誤排查案例,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2014-12-12