![](/img/trans.png)
[英]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.