2011-01-26 46 views
0

不幸的是,这个问题可能会被关闭,但我希望有人回答。PHP检测到打开/下载对话框

我有一些PHP代码,它打开Excel中的一些HTML数据。这是PHP:

<?php 
$data = $_REQUEST['datatodisplay']; 
header("Content-Type: application/vnd.ms-excel"); 
header("Content-Disposition: attachment; filename=Data.xls"); 
header("Pragma: no-cache"); 
header("Expires: 0"); 

echo $data; 

?> 

这是形式:

<form class='noPrint' action='demo/saveToExcel.php' method='post' target='_blank' 
onsubmit="$('#datatodisplay').val($('<div>').append($('#dataTable').eq(0).clone()).html())"> 
<input id='excel' type='image' src='img/file.png'> 
<input type='hidden' id='datatodisplay' name='datatodisplay' /> 
</form> 

现在,此代码的工作很大,但可能有人从PHP的角度来看,如何做到这一点,即解释。我提交表单,暂时打开一个新页面,出现一个下载框,我在Excel中打开,然后我被发回到表单页面(但Excel也打开)

PHP如何知道我已经执行了下载并返回到表单页面?

+0

你真的不知道答案?凭借着名声2593? – MDI 2011-01-26 10:58:22

+1

我会问,如果我做到了。 Rep意味着什么 – benhowdle89 2011-01-26 10:59:50

回答

1

它没有。您的浏览器首先从未离开过表单页面,因为该文件已下载,而不是显示在浏览器中。

1

PHP不知道 - 它所做的只是提供一个excel文件。巧妙的一点是发生在onsubmit方法的JavaScript上发生的