2011-11-14 225 views
1

我有media_main.php從一個MySQL數據庫獲取數據。其中一個獲得的數據是使用mySQL SELECT語句的「文件名」。在media_main.php上,有一個打開player.php的鏈接,其中嵌入了Flash MP3播放器。打開新窗口中的鏈接如下:將MySQL數據從一個php頁面傳遞到另一個

<a href="javascript:;" onclick="return popitup('player.php')" title="Listen"> 

我想「文件名」從media_main.php傳遞到player.php頁面。我想我需要使用GET或POST,但不知道如何處理,因爲數據不是直接來自表單。

+0

'return popitup('player.php?filename = your_file_name');' – bensiu

回答

0

您可以通過在player.php上讀取$_GET['file']並將其設置在media_main.php上來實現此目的。

media_main.php你可以使用PHP,使鏈路動態:

<a href="javascript:;" onclick="return popitup('player.php?file=<?php echo $Data['filename']; ?>')" title="Listen"> 

這將導致:

<a href="javascript:;" onclick="return popitup('player.php?file=dynamic_file.mp3')" title="Listen"> 

然後在player.php,你將回聲$_GET['file']你想要的文件被包括在內。

此外,一定要驗證所有數據。爲了安全地在您的網站上顯示,您可以使用htmlentities()包裝$_GET['file'],以便用戶不能使用$_GET['file']在您的網站上顯示HTML。

+0

當點擊player.php鏈接時,MP3會在新標籤中打開並開始流式傳輸,而不是在彈出式窗口中打開? – Nick

0

最簡單的方法是將它傳遞給查詢字符串。換句話說,該popitup功能可以做到這一點:

onclick="popitup('player.php?song=songname.mp3');" 

然後player.php可以讀取查詢字符串並獲得歌曲的名字,並開始播放它。

+0

我應該提到有一些其他的數據片段我也想通過,不需要做文件名。 – Nick

+0

@Nick:它不一定只是一個參數;你可以通過:'player.php?song = songname.mp3&onemore = otherparam&foo = bar'等。 – Icarus

+0

當點擊player.php鏈接時,MP3會打開一個新標籤並開始流式傳輸,而不是在popitup窗口打開? – Nick

0

這可以通過查詢字符串傳遞的文件名給被叫頁前完成:

<a href="javascript:;" onclick="return popitup('player.php?file_name=test.mp3')" 
    title="Listen"> 

這裏請將test.mp3是一個前:這應該是你是從數據庫中獲取文件名。 和@ player.php您將通過使用$ _REQUEST ['file_name']獲取file_name;

+0

數據正在傳遞,但是我無法在player.php頁面上顯示該數據。這就是我所擁有的:'code'

<?php $ _REQUEST ['file_name']; ?>

Nick

+0

哦,我的...我錯過了回聲。謝謝你的時間!! – Nick

+0

** <?php echo $ _REQUEST ['file_name']; ?> ** – punit

0

作爲一般規則,您不應該將已存在的數據傳遞給服務器。

因此,只傳遞標識符,並在player.php中執行數據庫請求並獲取文件名。

+0

這是很棒的信息。如果我只通過標識符,在player.php頁面上獲取數據的最佳方法是什麼? – Nick

+0

一個常規的SQL查詢。只需從歌曲表中選擇一個文件名,其中id =傳遞的標識符。在將其放入查詢之前,請不要忘記對此標識符進行清理。 –

相關問題