Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.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/1/php/283.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 如何将表单数据保存到文本文件?_Javascript_Php_Html_Forms - Fatal编程技术网

Javascript 如何将表单数据保存到文本文件?

Javascript 如何将表单数据保存到文本文件?,javascript,php,html,forms,Javascript,Php,Html,Forms,我知道以前有人问过这个问题,但我正在尝试诊断为什么这个问题不起作用。我想使用post请求将表单数据写入.txt文件。我对PHP了解不多,因为这是一个我正在拼凑的快速程序。代码如下: Javascript: function submitdata() { document.querySelector("#val").innerHTML = input.value + ": " + input1.value; document.querySelector("#submitform").submit(

我知道以前有人问过这个问题,但我正在尝试诊断为什么这个问题不起作用。我想使用post请求将表单数据写入.txt文件。我对PHP了解不多,因为这是一个我正在拼凑的快速程序。代码如下:
Javascript:

function submitdata() {
document.querySelector("#val").innerHTML = input.value + ": " + input1.value;
document.querySelector("#submitform").submit(); }
HTML:


PHP:


您的浏览器如何知道将表单数据发送到哪里? 您需要在FormAction属性中指定php文件名

编辑-从下面的评论中添加相关点


根据您提供的内容,我已经指出了明显的错误,但这可能不是唯一的错误。另一个错误是在输入元素上使用innerHTML。因此,这可能不会设置#val的值(有些浏览器可能会设置该值,有些可能不会)。

即使指定action=“\testphp.php”它仍然不起作用。您正在使用窗口样式的反斜杠“\”。URL使用正斜杠“/”。此外,如果php文件和html位于同一目录中,则不需要任何斜杠。使用action='test.php'根据您提供的内容,我已经指出了明显的错误,但这可能不是唯一的错误。另一个错误是在输入元素上使用innerHTML。因此,这可能不会设置#val的值(有些浏览器可能会设置该值,有些浏览器可能不会)。此外,我们不知道input.value或input1.value表示什么。你检查过浏览器的控制台了吗?是否报告了任何错误/警告?是的。这就是问题所在,将.innerHTML更改为.value。非常感谢。这回答了你的问题吗?它有一个与元素关联的名称,所以我不确定它为什么不工作。
<form style="display: none;" method="POST" name="myform" id="submitform">
  <input id="val" name="val">
</form>
<?php           
if(isset($_POST['val']))
{
$data=$_POST['val'];
$fp = fopen('data.txt', 'a+');
fwrite($fp, $data);
fclose($fp);
}
?>