我有一个简单的表单(在模式中,并在同一页中重新加载),如果输入值填写不正确,我想记住输入值,如果正确地将其插入数据库中,则忘记它们。我的代码在两种情况下都记住该值,我不希望这样。
感谢您的帮助。
HTML:
<form>
<input type="text" i" name="user" value = "<?php echo isset($_POST['user']) ? $_POST['user'] : '';?>/">
<button type="submit" name="register-btn">Crear cuenta</button>
</form>
PHP:
<?php
if(isset($_POST['register-btn'])){
include_once('includes/connect_db.php');
$usern = mysqli_real_escape_string($conn, $_POST['user']);
if(empty($usern)){
exit();
echo "error"
}
else{
$varsql = "INSERT INTO registers (user) VALUES ('$usern');";
}
}
?>
很高兴看到查询值被转义,在渲染htmlentities($_POST['user])
之前转义也很重要
但是要回答您的问题,您可以在呈现表单之前执行PHP,并在处理成功后执行$_POST['user] = null
。在重新呈现表单之前,将清除三个职位值。