我有一個表單有一個歌曲標題的下拉列表。我希望能夠在同一頁面上點擊歌曲標題和歌詞中的一個。歌詞包含在名爲「Lyrics」的文件夾中的.txt文件中。PHP - 下拉列表以顯示.txt內容
例子:
下拉列表中包含: 鬆1 Song2 Song3 等
當歌用戶點擊,相應的.txt文件的內容顯示在同一頁面上。有任何想法嗎?
我有一個表單有一個歌曲標題的下拉列表。我希望能夠在同一頁面上點擊歌曲標題和歌詞中的一個。歌詞包含在名爲「Lyrics」的文件夾中的.txt文件中。PHP - 下拉列表以顯示.txt內容
例子:
下拉列表中包含: 鬆1 Song2 Song3 等
當歌用戶點擊,相應的.txt文件的內容顯示在同一頁面上。有任何想法嗎?
<?php
$song = intval($_GET[ 'song_id' ]);
$songs = array(0 => NULL, 1 => 'Song1', 2 => 'Song2', 3 => 'Song3');
echo file_get_contents($songs[ $song ] . '.txt');
?>
祝您好運!
這是快速的解決方案,但極不安全的,使用它僅作爲例子,怎麼可以這樣做,但不應該:
<?
//此處是您的網頁代碼 //這是身體在那裏你想要把歌詞
file_get_contents($_GET['songName'].".txt")
//別的..
?>
在meniu
:
<a href="songs.php?songName=song1">song1</a>
如果不這樣做,不建議它 – 2009-12-01 09:56:35
這只是一個例子,如何做到這一點。 – lfx 2009-12-01 09:59:00
這將是使用更簡單的JQuery:
<a href="somefile.txt" class="link">Song 1</a>
<pre id="lyrics">
</pre>
<script>
$(function(){
$('.link').click(function(){
$.get(this.href,null,function(lyrics){
$('#lyrics').html(lyrics);
return false;
});
});
});
</script>
好評。儘管他在PHP中請求它。 – 2009-12-01 09:56:19
如果您有歌曲列表,並使用一個簡單的命名約定,然後使用它作爲一個白名單來檢查GET值你之前,允許甚至認爲使用
file_get_contents
$song = $_GET['song'] ; $file = '/Lyrics/' . $song . '.txt' ; $songs = array('help', 'she-loves-you', 'yellow-submarine'); // as a double check see if the file exists too if(in_array($song, $songs) && file_exists($file)) { echo file_get_contents($file); }
的如果你很聰明,你也可以重複使用該歌曲$陣列來創建下拉列表中。
<期權價值=黃色潛水艇>黃色潛水艇< /選項>
,然後如果你保持這個數據庫中,那麼你可能會決定將「塞」「黃色潛水艇」將成爲一個理想私人鑰匙,但不要讓我開始...
這是功課嗎? – 2009-12-01 09:49:27
不,個人項目。 – user 2009-12-01 09:49:47