[英]PHP - Why while(mysql_fetch_array(mysql_query())) loops?
[英]php,mysql_query, mysql_fetch_array while loop of <a href>
我对PHP有点陌生,并且正在将音乐库建设为学校项目。
有一个表“相册”,其中包含“ id”和“ name”。 以及包含“ id”,“ name”,“ album_id”和“ path”的表“ songs”。
长话短说,我正在尝试显示所选专辑中的所有歌曲。 用户创建专辑然后将歌曲上传到其中。该部分效果很好,并且数据库已正确填充。 问题是,一旦我选择一个专辑来查看其中的歌曲,我什么都收不到。
<?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>";
}
}
?>
谢谢你的帮助。
试试这个代码:
while ($fetch_songs = mysql_fetch_array($query, MYSQL_ASSOC))
更多信息: http : //php.net/manual/en/function.mysql-fetch-array.php
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.