Php 输入字段不工作

Php 输入字段不工作,php,html,Php,Html,我的网站上有一个联系人表单,它从元素中获取数据,然后在文本文件中启动。但是,当我单击submit时,它只是在一个新选项卡中打开PHP脚本 HTML 联系方式 联系我。 PHP 根据您的屏幕截图: 您正在以文件的形式运行它://而不是http://localhost(确保您的计算机上安装了php和Web服务器)。与使用HTML的网页不同,web浏览器不会将php指令解析为文件:// 您还有两个错误 两个打开的标记和一个关闭的(嵌套表单在php中不起作用)以及fclose($fh)中缺少

我的网站上有一个联系人表单,它从
元素中获取数据,然后在文本文件中启动。但是,当我单击submit时,它只是在一个新选项卡中打开PHP脚本

HTML


联系方式
联系我。


PHP


根据您的屏幕截图:

您正在以
文件的形式运行它://
而不是
http://localhost
(确保您的计算机上安装了php和Web服务器)。与使用HTML的网页不同,web浏览器不会将php指令解析为
文件://

您还有两个错误

两个打开的
标记和一个关闭的
(嵌套表单在php中不起作用)以及
fclose($fh)
中缺少的分号,这将引发解析错误,例如:

分析错误:语法错误,意外的“}”

一旦你以localhost的身份运行了它,你将会得到关于它的错误

更正代码后,请确保该文件具有正确的写入权限,并且路径正确

使用错误报告:


另外,
尝试解决方案,让我知道您得到的输出是什么。。。这是一种不同的组合方式。我看不出您的代码有任何问题。@PraveenKumar它没有向文件输出任何内容,仍然在新选项卡中打开代码。这是新标签的外观。您没有在web服务器上运行它。2个打开表单标签和1个关闭标签;这是你的问题。并且没有关闭这个
fclose($fh)
我在这个网站上没有JS。我只有PHP和HTML/CSS。它现在运行良好,但仍在打开一个新选项卡。@mexO这是最令人困惑的。我用谷歌搜索了大约10分钟。试图找出原因。我注意到您正在运行
F:
drive,这可能是一个原因。(PHP)安装是在同一个驱动器上还是在
C:
?@mexO我还对我的答案进行了另一次编辑,声明将
target=“\u top”
添加到
,看看这是否会使它保持在同一个选项卡上或
target=“\u self”
。我尝试了这两种方法,但都没有成功。如果您愿意,您可以访问maxjordan.net网站,亲自尝试查看。我100%被迷惑了。所以它没有开新的账单?
  <form id="contact" action="action.php" method="post">
    <h3>Contact Form</h3>
    <h4>Contact me.</h4>
    <form action="action.php" method="post">

      <input type="text" name="field1" placeholder="Enter your name..."><br>
        <input type="email" name="field2" placeholder="Enter your email address..."><br>
       <input type="submit" value="Submit">
    </form>
<?php
 $path = 'data.txt';
 if (isset($_POST['field1']) && isset($_POST['field2'])) {
    $fh = fopen($path,"a+");
    $string = $_POST['field1'].' - '.$_POST['field2'];
    fwrite($fh,$string);
    fclose($fh)
 }

?>
$string = $_POST['field1'].' - '.$_POST['field2'];
$string = $_POST['field1'].' - '.$_POST['field2'] . "\n";