Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否有办法将整个音频文件从数据库导入HTML,并将该文件用作<;音频>;标签?_Javascript_Html_Mysql_Sql_Flask - Fatal编程技术网

Javascript 是否有办法将整个音频文件从数据库导入HTML,并将该文件用作<;音频>;标签?

Javascript 是否有办法将整个音频文件从数据库导入HTML,并将该文件用作<;音频>;标签?,javascript,html,mysql,sql,flask,Javascript,Html,Mysql,Sql,Flask,我一直在写一个生成旋律的程序,我想制作一个论坛模板,让每个人都能看到别人做了什么。为此,我打算用SQL将文件保存为wave缓冲区,然后将其粘贴到标记中: <!DOCTYPE html> <html language="en"> <head> <title> forum </title> </head> <body&g

我一直在写一个生成旋律的程序,我想制作一个论坛模板,让每个人都能看到别人做了什么。为此,我打算用SQL将文件保存为wave缓冲区,然后将其粘贴到标记中:

<!DOCTYPE html>

<html language="en">
    <head>
        <title>
            forum
        </title>

    </head>
    <body>
        {% for solos in solos %}
            <table>
            <thead>
                <tr>
                    <th>{{ solos.date }} - {{ solos.title }}</th>
                </tr>
            </thead>
        <tbody>
                <tr>
                    <td>
                        <audio controls preload="auto">
                        <source = '{{ solos.song }}'>
                    </td>
                </tr>
        </tbody>
        </table>
        {% endfor %}
    </body>
</html>

论坛
{独奏%中的独奏%}
{{solos.date}}-{{solos.title}
{%endfor%}
但是,它没有播放任何声音,我怀疑这是因为源标记无效。
如何解决此问题?

我建议您将音频文件保存在服务器的单独文件夹中,而不是数据库中。在数据库中,您可以有一个表来保存每个文件的信息(id、名称、格式、作者、路径等)。然后,每当您想要检索某个特定的音频文件时,就转到db获取路径,并返回该路径中的文件。通过这种方式,您可以在HTML中使用音频标记,而不用担心文件格式


在数据库中保存blob文件通常效率低下,特别是当您的想法是将它们提供给客户时。

您很可能是对的,我应该这样做。我想把它直接放在数据库中,因为我正在做一个有严格大小限制的项目,但我认为这个文件在数据库中的重量差不多。你说得对。将文件保存在db中没有什么好处,您可以在这里查看->我认为这些好处不值得,tbh。根据我的经验,我从未遇到过文件保存在数据库中的情况。