2016-01-21 45 views
1

我有一個頁面具有使用Post將變量發送到php文件的JavaScript函數。問題是,我正在使用「頭文件」來下載文件,而我的JS不會在新頁面中打開PHP腳本。使用包含JS輸入的標題下載文件

當我在新頁面中打開php文件時,它不會從JS接收所需的變量。

我知道這聽起來令人困惑,但我希望我的代碼能夠闡明我的問題。

簡短的版本是,我試圖下載一個單選按鈕選擇的文件。我使用JS來檢查哪個單選按鈕被選中,然後發送到我的PHP文件。然後需要下載該文件。

謝謝大家提前。

PHP:

<?php 

if (isset($_POST['routenumber'])) { 
if(!isset($_SESSION)){session_start();} 
$routenumber = (isset($_POST['routenumber']) ? $_POST['routenumber'] : null); 


$directory = ("Users/".$_SESSION['id']."/SavedRoutes/"); 

$routes = scandir($directory); 
sort($routes); 
$route = $routes[$routenumber]; 

$file =("Users/".$_SESSION['id']."/SavedRoutes/".$route); 


header("Content-type: application/gpx+xml"); 
// header("Content-Disposition: attachment;Filename=".json_encode($route).".gpx"); 
header("Content-Disposition: attachment;Filename=route.gpx"); 


readfile($file); 

} 
?> 

JS:

function fuAccountDownloadRoute(){ 
var i=2; 
var SelectedRadio 
while (i < routecounter){ 
    var str1='radio'; 
    var str2=JSON.stringify(i); 
    var result = str1.concat(str2); 
    if (document.getElementById(result).checked){ 
     SelectedRadio = result.slice(5); 
    } 
    i=i+1; 
} 


$.post('accountPage.php',{routenumber:SelectedRadio}); 
} 
+0

標題必須在文件頂部,隊友! – Maurize

+0

請包括代碼:「我打開一個新的頁面的PHP文件」 – Gavriel

+0

當我手動在我的瀏覽器中手動打開php文件是@Gavriel –

回答