我想从html表单存储数据但我想将其保存到本地文件文本或csv文件-用于分类-

问题描述

我有一个项目用于保存一些我看过的电影。它是一个上市网站。 第1部分(输入面板)我将有一个面板,其中包含一个表格,用于输入影片的规格(名称,类别,演员等)。然后,当我单击提交按钮时,它将在本地保存数据(在csv或txt文件中)。当然,我应该能够将新电影附加到该文件中。 第2部分(查看器)在主页中,我需要在HTML表格中以线的形式查看影片。该表将由我保存的文件中的数据填充(我猜需要Js循环)。如果该主题与我询问的主题不同,那么如果还有其他方法,请管理我如何搜索。我认为我必须学习sql获取更复杂的数据存储。 这是简单的网站:

   <!DOCTYPE html>
    <html>
    <head>
        <title>Film Lister</title>
    </head>
    <body>
    
    <form>
        <input type="text" name="movie-name">
        <input type="text" name="movie-category">
        <button type="submit">Append the movie to file</button>
    </form>
    
    <table id="showcase">
        <tr class="movie">
            <td class="movie-spec"></td>
            <td class="movie-spec"></td>
        </tr>
        <tr class="movie">
            <td class="movie-spec"></td>
            <td class="movie-spec"></td>
        </tr>
    </table>
    
    <script type="text/javascript">
        
        //The part i need help
    
    </script>
    </body>
    </html>

解决方法

使用JavaScript保存数据非常容易实现:

    // Save as File
    function download(filename,text) {
      var element = document.createElement('a');
      element.setAttribute('href','data:text/plain;charset=utf-8,' + encodeURIComponent(text));
      element.setAttribute('download',filename);

      element.style.display = 'none';
      document.body.appendChild(element);

      element.click();

      document.body.removeChild(element);
    }

致电:

var csvContents = "1,2,3,4,5";
download("mydata.csv",csvContents);

您将需要弄清楚csvContents的构造方式。

我建议您学习jQuery,因为它很容易修改或创建HTML / DOM元素(这是您在这里所需要的)。请注意,这绝对不是网络应用程序专家,而是来自其他域。

注意::如果要附加到文件,则需要权限,而这些权限是您没有从浏览器访问系统的权限。您应该考虑使用数据库。