我是PHP的新手,我正在建立一个音乐库作为学校项目。
有一张表'专辑'持有' id'并且' name'。 还有一张表'歌曲'包含' id',' name',' album_id'和'路径'。
长话短说,我试图显示所选专辑中的所有歌曲。 用户创建一个专辑,然后将歌曲上传到其中。该部分工作正常,并且正确填写了数据库。 问题是,一旦我选择了一张专辑来查看其中的歌曲,我什么也得不到。
<?php
$album_id = $_GET['id'];
//display songs from selected album
$query = mysql_query("SELECT * FROM songs WHERE album_id = $album_id");
while ($fetch_songs = mysql_fetch_array($query)) {
$song_name = $fetch_songs['name'];
$song_path = $fetch_songs['path'];
?>
<a href="music/<?php echo $song_path ?>">play song</a>
<br/>
<b><?php echo $song_name; ?></b>
<?php
}
?>
</div>
我相信使用href是最简单的选择,但我也尝试过音频控制,甚至尝试使用img src上传图像而不是MP3但仍然没有成功,我只是得到一个空白页面。
这是将歌曲上传到数据库的代码。
if (isset($_POST["upload"])) {
$name = $_POST['name'];
$album_id = $_POST['album'];
$file_name = $_FILES['file']['name'];
$file_type = $_FILES['file']['type'];
$file_size = $_FILES['file']['size'];
$file_tmp = $_FILES['file']['tmp_name'];
$random_name = rand();
if (empty($name) || empty($file_name)) {
echo "Please fill all fields in the form ! <br/>";
} else {
move_uploaded_file($file_tmp, 'music/' . $random_name . '.mp3');
mysql_query("INSERT INTO songs VALUES ('','$name','$album_id','$random_name.mp3')");
echo "File uploaded ! </br></br>";
}
}
?>
感谢您的帮助。
答案 0 :(得分:0)
试试这段代码:
while ($fetch_songs = mysql_fetch_array($query, MYSQL_ASSOC))
更多信息:http://php.net/manual/en/function.mysql-fetch-array.php