我试图保持一个用户的电子邮件在提交表单后的输入字段,并有这个工作以前,但改变了很多代码从mysql mysqli后,电子邮件不留在提交后的输入框。
PhP代码<?php
session_start();
include ('connection.php');
$email = isset ($_POST['email'])&& isset ($_POST['email']) ? $_POST['email'] : false;
if ($email){
$sql = "SELECT * FROM users WHERE email = '$email'";
$sql2 = mysqli_query($db, $sql);
}
?>
<form class ="form" method ="POST" enctype="application/x-www-form-urlencoded">
Email:<input type="email" name="email" maxlength="30" value="<?php $email ?>" placeholder ="Enter Your Email"/>
<input id="button"type="submit" value="Get Security Question" name ="submit"/>
有谁知道为什么这个不再工作了吗?
您的代码中缺少echo
。就像这样修改一下。
<input type="email" name="email" maxlength="30" value="<?php echo $email ?>" placeholder ="Enter Your Email"/>
或echo
的缩写形式<input type="email" name="email" maxlength="30" value="<?= $email ?>" placeholder ="Enter Your Email"/>
更改您的代码到,您在哪里缺少echo
功能。
Email:<input type="email" name="email" maxlength="30" value="<?php echo $email ?>"
我还想建议修改
$email = isset ($_POST['email'])&& isset ($_POST['email']) ? $_POST['email'] : false;
$email = !empty($_POST['email']) ? $_POST['email'] : false;
效果是一样的,但它的方式更干净,第二个&& isset ($_POST['email'])
是不必要的。