勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

mp3ファイルのアップロードと再生方法

   2024/02/25  PHP HTML

mp3ファイルをformでアップロードしたかったのと、Webサイト上で再生したかった。以下にその方法をメモ。

 

ソースコード

アップロード

受信側

do{
    if( $_FILES['music']['size'] < 1 ) break; //ファイルサイズチェック
    if( $_FILES['music']['error'] != 0 ) break; //エラーチェック
    if( $_FILES['music']['type'] != 'audio/mpeg' ) break; //mp3かどうかチェック

    $path = './file/';
    $file = date('YmdHis') . '.mp3';

    if( !move_uploaded_file($_FILES['music']["tmp_name"], $path . $file) ) break; //アップロード

    $flg = true;
}while(0);

送信側

<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post" enctype="multipart/form-data">
    <input type="file" name="music"><br>
    <input type="submit" value="submit">
</form>

再生

<audio id="audio" controls>
    <source src="test.mp3">
</audio>

<input type="button" value="play" onclick="audio_play()">
<input type="button" value="pause" onclick="audio_pause()">

<script type="text/javascript">
function audio_play() {
    audio.play();
}
function audio_pause() {
    audio.pause();
}
</script>

 - PHP HTML

  関連記事

JSやCSSをCDN呼び出しする際のintegrity / crossorigin / referrerpolicy属性について

JavaScriptやCSSをCDN呼び出しする際、<script> ...

formのinput="file"でディレクトリを選択させ、ディレクトリ内のファイルを全てアップロードする方法

フォームで複数のファイルをアップロードしたい場合、input="file"を複数 ...

tableにスクロールバーを付ける

レイアウト的にiframeじゃなくtableにスクロールバーを つけたかった。 ...

formでdisplay:none;にしてても送信される

formで特定の部分をdisplay:none;で非表示にしてても 内容は送信さ ...

HTML / CSSで作成したコンテンツをPDFファイルで出力する方法(TCPDF)

HTML / CSSで作成したコンテンツをPDFファイルで出力させたい。以前mp ...