2011-01-26 84 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上發生的