Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.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
使用PHP将一个HTML文件完全替换为另一个_Php_Html_Forms_Replace - Fatal编程技术网

使用PHP将一个HTML文件完全替换为另一个

使用PHP将一个HTML文件完全替换为另一个,php,html,forms,replace,Php,Html,Forms,Replace,我正在处理一个html表单,我只想一次就可以使用它。 所以,如果一个人填写了,另一个人就不能再填写了。甚至不是同一个人,即使他或她在浏览器中单击返回也不是 到目前为止,我想到了多种可行的方法: 使用PHP将form.html页面完全替换为另一个.html文件,我已将该文件存储在服务器上,或者 使用PHP部分替换form.html页面,即使完全替换html页面没有任何附加值,或者 将一个隐藏字段添加到我的form.html文件中(在本例中,我必须将其更改为.php页面),将一个“1”发布到一个数据

我正在处理一个html表单,我只想一次就可以使用它。 所以,如果一个人填写了,另一个人就不能再填写了。甚至不是同一个人,即使他或她在浏览器中单击返回也不是

到目前为止,我想到了多种可行的方法:

  • 使用PHP将form.html页面完全替换为另一个.html文件,我已将该文件存储在服务器上,或者

  • 使用PHP部分替换form.html页面,即使完全替换html页面没有任何附加值,或者

  • 将一个隐藏字段添加到我的form.html文件中(在本例中,我必须将其更改为.php页面),将一个“1”发布到一个数据库中,我可以在每次加载form.php页面时检索该数据库,以便在设置0时显示表单,而在设置1时不显示表单。在本例中,我还想知道是否没有一个简单的解决方案来创建一个数据库来存储一个“1”


  • 我知道如何使用谷歌,通常我总是设法找到一个解决方案,但现在我感到不知所措。请有人帮我一个简单的解决办法

    我在邮件脚本末尾使用了rename命令,它是这样工作的:

    mail($to, $subject, $comment, $headers);
    rename('../mailtest/replace/emailform.html', '../mailtest/emailform.html');
    ?>
    

    你是说这是一个只能填写一次的html表单?或者你的意思是来自同一个人的一次?你应该停止将html表单视为“html文件”,并尝试通过服务器上的物理存储来控制它们的使用。这真的不管用,而且非常笨拙。记住,有些东西像缓存和代理。。。相反,可以将html表单想象为一些控制器逻辑输出的文本片段。不多不少。因此,实际上您要做的是:根据人们如何使用您的应用程序(存储在数据库中)的历史,您的控制器输出不同的表单。这很简单,也很可靠。@Basti这是一个只能填写一次的html表单。@arkascha thnx,但我只需要一个简单的解决方案就可以了。切换输出肯定比替换文件简单得多……这是不安全的,因为它无法在实际处理以前提交的表单之前防止对文件的请求。因此,多个客户端可以请求并加载表单,直到第一个客户端提交表单,从而触发物理文件的替换。这意味着所有其他客户都留下了“过时”的表单,该表单仍然有效和可用…啊,这样,我理解。我通过两个脚本发送变量,因此我将使此脚本也使用重定向页面重命名第一个脚本,谢谢您的帮助。好的,如果这能为您解决问题,那就好了。那么我想补充的是:请记住你的方法是非常非正统的。它会引发各种各样的安全问题(当然,这些问题可能与您无关),而且是不必要的、不安全的和代价高昂的(将文件系统操作与简单的条件操作进行比较)。因此,对于未来,您可能希望了解MVC思想是如何工作的,以及为什么它是此类实现的首选和标准方法。