我一直在绞尽脑汁,试图弄清楚为什么isset($_POST['Submit'])没有用我的表单执行。表单中的数据没有传递到php代码中。基本上,代码似乎无法识别类似$ffname=$_POST["ffname"]的内容;
<?php
$ffname = $flname = $femail = $fcemail = $fpass = $fcpass = "";
if(isset($_POST['ffname'])){
$ffname = $_POST["ffname"];
$flname = $_POST["flname"];
$femail = $_POST["femail"];
$fcemail = $_POST["fcemail"];
$fpass = $_POST["fpass"];
$fcpass = $_POST["fcpass"];
echo "<p>Hello World<p>";
$con = mysqli_connect("localhost", "root", "") or die(mysqli_error());
mysqli_select_db($con, "userdata") or die(mysqli_error($con));
mysqli_query($con,"INSERT INTO tbluser (fname, lname, email, pass) VALUES('$ffname', '$flname', '$femail', '$fpass')")
or die (mysqli_error($con));
}
?>
<form method="post">
First Name: <input type="text" name="ffname" id="ffname" value="<?php echo $ffname;?>"><br>
Last Name: <input type="text" name="flname" value="<?php echo $flname;?>"><br>
E-mail: <input type="email" name="femail" value="<?php echo $femail;?>"><br>
Confirm E-mail: <input type="email" name="fcemail" value="<?php echo $fcemail;?>"><br>
Password: <input type="password" name="fpass" value="<?php echo $fpass;?>"><br>
Confirm Password: <input type="password" name="fcpass" value="<?php echo $fcpass;?>"><br>
<input type="submit" name="Submit" value="submit">
</form>
@DerVO的另一个答案是正确的但是似乎还有其他东西在起作用,因为你说它仍然不起作用。
一条评论太长了,所以我在这里建立了一个完整的答案。
步骤1:
在输入中添加一个名称:
<input type="submit" name="Submit" value="submit">
然而,依赖$_POST
中的提交并不是最佳计划。因此,我建议查看不同的表单字段,例如ffname
:
步骤2:
改进您的手表,使用不同的领域:
if ( isset( $_POST['ffname'] ) ) {
// do your work
}
最后,您可能正在修改您的表单action
属性。
第三步:
为了保持简单,如果表单应该提交到同一页面,您可以简单地省略表单action
。
<form method="post">
在这三项之间,除非您的服务器有问题,否则表单将起作用。
步骤4:
清理表单格式。你有奇怪的间距,这是有问题的。在html元素中,property="value"
代码需要没有空格,但属性之间必须有空格。示例:
<!-- Your version -->
<input type = "text"name = "ffname"id = "ffname"value="<?php echo $ffname;?>"><br>
<!-- Clean / correct version -->
<input type="text" name="ffname" id="ffname" value="<?php echo $ffname;?>"><br>
这是你整个表单的"干净"版本:
<form method="post">
First Name: <input type="text" name="ffname" id="ffname" value="<?php echo $ffname;?>"><br>
Last Name: <input type="text" name="flname" value="<?php echo $flname;?>"><br>
E-mail: <input type="email" name="femail" value="<?php echo $femail;?>"><br>
Confirm E-mail: <input type="email" name="fcemail" value="<?php echo $fcemail;?>"><br>
Password: <input type="password" name="fpass" value="<?php echo $fpass;?>"><br>
Confirm Password: <input type="password" name="fcpass" value="<?php echo $fcpass;?>"><br>
<input type="submit" name="Submit" value="submit">
</form>
您需要给您的输入提交一个名称:
<input type="submit" name="Submit" value="Submit">
您在$_POST 中有元素的通行证名称
尝试在输入提交中放入名称属性
<input type = "submit" name="Submit" value = "1">