我已完成将音频blob(二进制)数据存储到MySQL DB中。但是如何在我的HTML页面中显示音频标签的blob数据。
答案 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>
我希望它有所帮助:)