Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.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 是否有可能节省&;从本地存储在PC上的xml文件检索HTML表单中填写的数据?_Javascript_Html_Xml_Local Storage - Fatal编程技术网

Javascript 是否有可能节省&;从本地存储在PC上的xml文件检索HTML表单中填写的数据?

Javascript 是否有可能节省&;从本地存储在PC上的xml文件检索HTML表单中填写的数据?,javascript,html,xml,local-storage,Javascript,Html,Xml,Local Storage,我最近制作了一个HTML表单来填写一些服务报告&现在希望在PC机上保存和检索它们(最好是xml格式)(不在服务器上) 我也在w3scools/页面上查看了它,但仍然无法获得所需的解决方案 您能告诉我可能的方法吗。如果我理解您的意思,您想将数据存储在用户的计算机上,对吗? 然后最好创建一个XML文件并强制下载到用户的计算机上 (我使用jQuery是因为它最快) 步骤1:发出ajax请求 function downloadFormData(form){ var formDat

我最近制作了一个HTML表单来填写一些服务报告&现在希望在PC机上保存和检索它们(最好是xml格式)(不在服务器上

我也在w3scools/页面上查看了它,但仍然无法获得所需的解决方案


您能告诉我可能的方法吗。

如果我理解您的意思,您想将数据存储在用户的计算机上,对吗? 然后最好创建一个XML文件并强制下载到用户的计算机上

(我使用jQuery是因为它最快)

步骤1:发出ajax请求

    function downloadFormData(form){
        var formData= $(form).serialize(); //form is an DOM element - the form you want to retrieve data from
        $.ajax({
            url:"save.php",
            data: formData,
            success: function (file) {
                window.location.href =  "download.php?path="+ file
            }
        });   
    }
2) 创建一个php文件,将其命名为save.php,根目录中包含以下内容:

    <?php
    $xml_string = "<?xml version etc.?><data>";
    foreach($_POST as $key=>$value)
        $xml_string.='<'.$key.'>'.$value.'</'.$key.'>';
    $xml_string.='</data>
    $file = 'formData.xml';




    // save to file
    file_put_contents('./'.$file, $xml_string);

    // return the filename
    echo $file; exit;
$value)
$xml_string.='.$value';
$xml_字符串。='
$file='formData.xml';
//保存到文件
文件内容('./'.$file,$xml\u字符串);
//返回文件名
echo$文件;出口
5) 创建一个php文件,将其命名为download.php,根目录中包含以下内容

<?php
$file = 'formData.xml'
// $file = trim($_GET['path']); if you use download.php for anything else

// force user to download the file
if (file_exists($file)) {
    header('Content-Description: File Transfer');
    header('Content-Type: application/xml');
    header('Content-Disposition: attachment; filename='.basename($file));
    header('Content-Transfer-Encoding: binary');
    header('Expires: 0');
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
    ob_clean();
    flush();
    readfile($file);
    unlink($file);
    exit;
}
else {
    echo "$file not found";
} 
”;
$(表单).find(“:input”).each(函数(){
xmlstring+=“”+此.value+“”;
}
xmlstring+=“”;
open('data:Application/octet流,'+encodeURIComponent(xmlstring));
});
a、 单击();
}

如果我理解您的意思,您希望将数据存储在用户的计算机上,对吗? 然后最好创建一个XML文件并强制下载到用户的计算机上

(我使用jQuery是因为它最快)

步骤1:发出ajax请求

    function downloadFormData(form){
        var formData= $(form).serialize(); //form is an DOM element - the form you want to retrieve data from
        $.ajax({
            url:"save.php",
            data: formData,
            success: function (file) {
                window.location.href =  "download.php?path="+ file
            }
        });   
    }
2) 创建一个php文件,将其命名为save.php,根目录中包含以下内容:

    <?php
    $xml_string = "<?xml version etc.?><data>";
    foreach($_POST as $key=>$value)
        $xml_string.='<'.$key.'>'.$value.'</'.$key.'>';
    $xml_string.='</data>
    $file = 'formData.xml';




    // save to file
    file_put_contents('./'.$file, $xml_string);

    // return the filename
    echo $file; exit;
$value)
$xml_string.='.$value';
$xml_字符串。='
$file='formData.xml';
//保存到文件
文件内容('./'.$file,$xml\u字符串);
//返回文件名
echo$文件;出口
5) 创建一个php文件,将其命名为download.php,根目录中包含以下内容

<?php
$file = 'formData.xml'
// $file = trim($_GET['path']); if you use download.php for anything else

// force user to download the file
if (file_exists($file)) {
    header('Content-Description: File Transfer');
    header('Content-Type: application/xml');
    header('Content-Disposition: attachment; filename='.basename($file));
    header('Content-Transfer-Encoding: binary');
    header('Expires: 0');
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
    ob_clean();
    flush();
    readfile($file);
    unlink($file);
    exit;
}
else {
    echo "$file not found";
} 
”;
$(表单).find(“:input”).each(函数(){
xmlstring+=“”+此.value+“”;
}
xmlstring+=“”;
open('data:Application/octet流,'+encodeURIComponent(xmlstring));
});
a、 单击();
}

您可以检查此应用程序()背后的Javascript,如以下页面所示:

此代码显示(1)编辑器区域中的数据不断保存到本地存储,(2)制作伪HTML/XML文件并下载到磁盘(保存到…磁盘)的选项,(3)制作相同的包并保存到web存储的选项(New Nimble,Save Nimble)。我不打算通读所有的代码,下面最相关的代码是将存储在变量“archive”中的包本地保存到磁盘:

}


查看此处的所有代码(其中包含的代码远不止保存/加载,但它就在这里):

您可以检查此应用程序背后的Javascript(),如以下页面所示:

此代码显示(1)编辑器区域中的数据不断保存到本地存储,(2)制作伪HTML/XML文件并下载到磁盘(保存到…磁盘)的选项,(3)制作相同的包并保存到web存储的选项(New Nimble,Save Nimble)。我不打算通读所有的代码,下面最相关的代码是将存储在变量“archive”中的包本地保存到磁盘:

}


查看这里的所有代码(其中包含的不仅仅是保存/加载,但它在这里):

您将问题标记为本地存储,您可以使用它吗?我们谈论的是无需人工交互的自动化过程,还是用户可以上载此文件?使用javascript从html表单创建xml。将内容保存到,使用api和@Wisdmlab将其发送给用户有许多(特定于供应商的)本地存储数据库,用户可以使用这些数据库,而不仅仅是cookies。如果您希望本地应用程序(即,根本不在服务器上托管)使用这些数据库,您可以尝试访问浏览器的扩展api(插件使用的api)哪些用户可以访问用户计算机上的文件。您将问题标记为本地存储,您可以使用它吗?我们谈论的是没有人工交互的自动化过程,还是用户可以上载此文件?使用javascript从html表单创建xml。将内容保存到,使用api和@Wisdmlab将其发送给用户有许多(特定于供应商的)本地存储数据库,用户可以使用这些数据库,而不仅仅是cookies。如果您希望本地应用程序(即,根本不在服务器上托管)使用这些数据库,您可以尝试访问浏览器的扩展api(插件使用的api)谁可以访问用户机器上的文件。你好,卢卡,非常感谢你的帮助,但是,在这里,我想避免使用php或其他任何方式(因为我是web开发领域的新手),可以使用html和javascript吗?一切都可以,只需复制我的代码,它已经准备好,并且尽可能简单,不要重复,我不完全理解。你好,卢卡,非常感谢你的帮助,但是,在这里我想避免使用php或其他任何方式(因为我是web开发领域的新手)可以使用html和javascript吗?一切都好,只需复制我的代码,一切就绪,尽可能简单,不要担心,我不完全理解。