ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用してシンプルなオンライン音楽ダウンロードおよび再生システムを実装する方法
PHP を使用して簡単なオンライン音楽ダウンロードおよび再生システムを実装する方法
ネットワーク技術が発展し続ける今日、音楽は人々の生活に欠かせないものになっています。オンライン音楽ダウンロードおよび再生システムの需要も高まっています。この記事では、PHP を使用して簡単なオンライン音楽ダウンロードおよび再生システムを作成する方法を紹介し、具体的なコード例を示します。
1. 環境とデータベースの構築
まず、PHP を実行し、音楽ファイルの情報を保存するデータベースを作成するためのサーバー環境が必要です。 XAMPP または他の同様のツールを使用して PHP 実行環境をセットアップし、MySQL を使用して「music」という名前のデータベースを作成します。 「music」データベースに「songs」という名前のテーブルを作成します。テーブルの構造は次のとおりです:
CREATE TABLE `songs` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `artist` varchar(255) NOT NULL, `file` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2. 音楽ファイルをアップロードします
システムでは、ユーザーは簡単なフォームを使用して音楽ファイルをアップロードし、ファイルをサーバー上の指定されたディレクトリに保存します。 「upload.php」という名前のファイルを作成し、次のコードを追加します。
<?php if(isset($_POST['submit'])){ $name = $_POST['name']; $artist = $_POST['artist']; $file = $_FILES['file']['name']; $targetDir = "./uploads/"; $targetFile = $targetDir . basename($file); // 保存文件 if(move_uploaded_file($_FILES['file']['tmp_name'], $targetFile)){ // 将文件信息保存到数据库 $conn = new mysqli('localhost', 'root', '', 'music'); $sql = "INSERT INTO songs (name, artist, file) VALUES ('$name', '$artist', '$file')"; $conn->query($sql); $conn->close(); echo "上传成功!"; }else{ echo "上传失败!"; } } ?> <form method="POST" action="" enctype="multipart/form-data"> 歌曲名:<input type="text" name="name" required><br> 歌手:<input type="text" name="artist" required><br> 音乐文件:<input type="file" name="file" required><br> <input type="submit" name="submit" value="上传"> </form>
このコードは、ユーザーが送信した音楽ファイルを受信し、サーバー上の指定されたディレクトリの「uploads」フォルダーに保存します。同時に、音楽ファイルの名前、アーティスト、ファイル名がデータベースに保存されます。
3. 音楽リストの表示
システムでは、アップロードされた音楽リストを表示できます。 「index.php」という名前のファイルを作成し、次のコードを追加します。
<?php $conn = new mysqli('localhost', 'root', '', 'music'); $sql = "SELECT * FROM songs"; $result = $conn->query($sql); ?> <table> <tr> <th>歌曲名</th> <th>歌手</th> <th>操作</th> </tr> <?php while($row = $result->fetch_assoc()): ?> <tr> <td><?php echo $row['name']; ?></td> <td><?php echo $row['artist']; ?></td> <td> <a href="play.php?id=<?php echo $row['id']; ?>">播放</a> <a href="download.php?file=<?php echo $row['file']; ?>">下载</a> </td> </tr> <?php endwhile; ?> </table>
上記のコードでは、データベース内の「song」テーブルがクエリされ、音楽ファイルの名前、歌手、名前が取得されます。音楽ファイルのファイルをループ文で追加し、アクションリンクを表形式で表示します。
4. 音楽を再生する
ユーザーが音楽リストの「再生」リンクをクリックすると、音楽を再生するために「play.php」という名前のファイルを使用する必要があります。このファイルを作成し、次のコードを追加します。
<?php $id = $_GET['id']; $conn = new mysqli('localhost', 'root', '', 'music'); $sql = "SELECT * FROM songs WHERE id=$id"; $result = $conn->query($sql); $row = $result->fetch_assoc(); $music = "./uploads/" . $row['file']; ?> <audio controls autoplay> <source src="<?php echo $music; ?>" type="audio/mpeg"> 你的浏览器不支持音频播放。 </audio>
上記のコードでは、「play.php」ファイルの URL パラメータ「id」を取得することで、データベース内の対応する音楽ファイル情報を照会し、音楽ファイルのパス HTML5 オーディオ プレーヤーで表示されます。
5. 音楽のダウンロード
ユーザーが音楽リストの「ダウンロード」リンクをクリックすると、「download.php」という名前のファイルを使用して音楽のダウンロード機能を実装する必要があります。ファイル。ファイルを作成し、次のコードを追加します。
<?php $file = $_GET['file']; $filepath = './uploads/' . $file; header('Content-Type: application/octet-stream'); header('Content-disposition: attachment; filename="'.$file.'"'); header('Content-Length: ' . filesize($filepath)); readfile($filepath); ?>
上記のコードでは、「download.php」ファイルの URL パラメータ「file」を取得することで、音楽ファイルが添付ファイルとしてユーザーのコンピュータにダウンロードされます。ファイルパスに従ってください。
6. 概要
上記のコード例を通じて、簡単なオンライン音楽ダウンロードおよび再生システムを実装できます。ユーザーは音楽ファイルをアップロードでき、システムはそのファイルをサーバー上の指定されたディレクトリに保存し、関連情報をデータベースに保存します。ユーザーは、音楽リストを表示して、音楽ファイルの再生またはダウンロードを選択できます。このシステムはシンプルですが、ユーザーに基本的なオンライン音楽サービスを提供できます。もちろん、ニーズに応じて拡張・最適化することも可能です。
以上がPHP を使用してシンプルなオンライン音楽ダウンロードおよび再生システムを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。