ajax request()->file,javascript - download file using an ajax request - Stack Overflow

该博客介绍了一种方法,通过Ajax先进行页面计算,然后下载处理后的结果。首先在Ajax调用中执行计算,然后在响应中下载依赖于这些计算的页面。例如,在'CalculusPage.php'中进行计算并更新数据库,接着在'DownloadPage.php'中根据ID获取计算结果并生成Excel文件下载。
摘要由CSDN通过智能技术生成

there is another solution to download a web page in ajax. But I am referring to a page that must first be processed and then downloaded.

First you need to separate the page processing from the results download.

1) Only the page calculations are made in the ajax call.

$.post("CalculusPage.php", { calculusFunction: true, ID: 29, data1: "a", data2: "b" },

function(data, status)

{

if (status == "success")

{

/* 2) In the answer the page that uses the previous calculations is downloaded. For example, this can be a page that prints the results of a table calculated in the ajax call. */

window.location.href = DownloadPage.php+"?ID="+29;

}

}

);

// For example: in the CalculusPage.php

if ( !empty($_POST["calculusFunction"]) )

{

$ID = $_POST["ID"];

$query = "INSERT INTO ExamplePage (data1, data2) VALUES ('".$_POST["data1"]."', '".$_POST["data2"]."') WHERE id = ".$ID;

...

}

// For example: in the DownloadPage.php

$ID = $_GET["ID"];

$sede = "SELECT * FROM ExamplePage WHERE id = ".$ID;

...

$filename="Export_Data.xls";

header("Content-Type: application/vnd.ms-excel");

header("Content-Disposition: inline; filename=$filename");

...

I hope this solution can be useful for many, as it was for me.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值