如何在Html5音频标签中播放blob mysql音频数据......?

时间:2014-12-24 10:23:51

标签: javascript php html mysql

我已完成将音频blob(二进制)数据存储到MySQL DB中。但是如何在我的HTML页面中显示音频标签的blob数据。

1 个答案:

答案 0 :(得分:1)

只需创建一个PHP脚本,该脚本将从DB中获取音频数据并将其作为结果写入(最重要的)更改结果页面内容类型。以下是此类基本脚本的示例:

<?php
$mysqli = new mysqli("localhost", "user", "pass", "testDB");

$query = "SELECT * FROM testTable";

if ($result = $mysqli->query($query)) {
    $row = $result->fetch_assoc();

    header("Content-type: audio/mpeg"); 
    echo $row['audioData'];

    $result->free();
}

$mysqli->close();
?>

最重要的一行是:

header("Content-type: audio/mpeg");

告诉浏览器将内容解释为二进制音频数据。这是mp3文件的一个例子。如果您使用其他编码,则必须将 audio / mpeg 更改为文件的正确值(您可以在Internet上轻松找到正确的值)。

使用此脚本的简单HTML页面(仔细查看音频源代码的 src 值:

<!DOCTYPE html>
<html>
<body>

<audio controls>
  <source src="yourScript.php" type="audio/mpeg">
  Your browser does not support the audio element.
</audio>

</body>
</html>

我希望它有所帮助:)