我需要一些帮助,因为在输出中没有输入任何内容时。只是为了让你意识到......我对网站非常陌生,我今天早上的大部分时间都在努力解决这个问题并且无法解决这个问题。谢谢史蒂夫
请求说明:该页面为www ........ co.uk/contact.html
当我提交带有文本的表单或在字段中没有文本时,单击“提交”。该字段清空(空白)页面
刷新并在地址栏中显示www ........ co.uk/contact.html#
显示完全相同的内容www ........ co.uk/contact.html
是的,这个档案在www ........ co.uk/contact.html#
上仍然是空的基本上刷新在末尾添加#的页面
HTML:
<form name = "login" method = "post" action = "check.php" >
<input type = "password" name = "pass">
<input type = "submit" value = "login" style="color:white; background: blue">    
</form>
PHP密码检查页
<?php
if ($_POST['pass'] == "pass123")
{
header("Location: http://www.example-correct.co.uk");
}
else
{
header("Location: http://www.example-wrong.co.uk");
}
?>
答案 0 :(得分:0)
如果您希望在提交后填写密码字段,则需要将表单页面从.html
更改为.php
,然后重定向到原始表单页面而不是check.php
。
<input type = "password" name = "pass" <?php if(isset($_POST['pass'])) { echo 'value="'.$_POST['pass'].'"'; } ?>>
如果用户输入了错误的密码,而不是重定向到另一个页面,则需要显示相同的页面并生成错误消息,然后再次显示该表单,以便他们输入正确的密码。
这是你的新contact.php
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if($_POST['pass'] == 'pass123') {
header('location: http://www.example-correct.co.uk');
} else {
echo 'wrong pass';
}
}
?>
<html>
<body>
<form name = "login" method = "post" action = "contact.php" >
<input type = "password" name = "pass" <?php if(isset($_POST['pass'])) { echo 'value="'.$_POST['pass'].'"'; } ?>>
<input type = "submit" value = "login" style="color:white; background: blue">    
</form>
</body>
</html>
当然,在提交后回显密码并没有太大作用,因为它只是子弹(我从不回应传递),但这个例子向您展示了它是如何完成的。您也可以在提交后使用单独的表单处理页面include()
,但这有点复杂。这是一个更简单的例子。
编辑:更新的代码示例,修复了一个错误。