PHP - 下拉列表以显示.text内容

时间:2009-12-01 09:45:43

标签: php drop-down-menu file-get-contents

我有一个包含歌曲标题下拉列表的表单。我希望能够点击其中一个歌曲标题并将歌词加载到同一页面上。歌词包含在名为“Lyrics”的文件夹中的.txt文件中。

示例:

下拉列表包含: 松1 Song2 Song3 等

当用户点击歌曲时,相应的.txt文件的内容会显示在同一页面上。有什么想法吗?

4 个答案:

答案 0 :(得分:1)

使用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>

答案 1 :(得分:0)

<?php
    $song = intval( $_GET[ 'song_id' ] );
    $songs = array( 0 => NULL, 1 => 'Song1', 2 => 'Song2', 3 => 'Song3' );
    echo file_get_contents( $songs[ $song ] . '.txt' );
?>

祝你好运!

答案 2 :(得分:0)

如果你有一个歌曲列表,并且你使用一个简单的命名约定,那么在你想到使用

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 );
    }

如果你很聪明,你也可以重复使用相同的$ songs数组来创建你的下拉列表。

&LT;期权价值=黄色潜水艇&gt;黄色潜水艇&lt; / option&gt;

然后如果你将它保存在一个数据库中,那么你可能会认为'slug''黄色潜水艇'会成为一个理想的私钥,但是不要让我开始......

答案 3 :(得分:-1)

这是快速解决方案,但是非常不安全,仅以示例的方式使用它,怎么做,但不应该:

<?

//您的页面代码在这里 //这是你想放歌词的身体

file_get_contents($_GET['songName'].".txt")

// else ..

?>
在meniu中

<a href="songs.php?songName=song1">song1</a>