我创建了一个带登录会话功能的简单表单,我正在使用mysqli_connect_errno()并添加了一个条件
if ($_POST['username']=="") {
$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/form.html';
header('Location: ' . $home_url);
$Err = "Invalid value";
}
和
<label for="username">Name </label><br>
<input type="text" name="username"class="text">
<span class="red"><?php echo $Err;?></span>
但错误消息未显示在空提交
上答案 0 :(得分:0)
您已经提到header('Location:'.$home_url);
那么您怎么能看到错误。在标题位置
将您的代码替换为
$Err = "Invalid value";
header('Location: ' . $home_url.'?err='.$Err);
并按此打印错误
if(isset($_GET['err']))
{
echo $_GET['err'];
}
答案 1 :(得分:0)
header('location:' .$home_url?flag=y);
上面的行是用php页面写的
<?php if(isset($_REQUEST['flag']) && $_REQUEST['flag'] == 'y'){ echo "valid";} else{ echo "Invalid"; } ?>
以上代码将在html页面中编写
答案 2 :(得分:-1)
如果你这样写
if ($_POST['username']=="") {
$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/form.html';
header('Location: ' . $home_url);
$Err = "Invalid value";
}
您的页面将从header()函数和下面的代码重定向,将永远不会执行。这是晃来晃去的代码。所以,而不是你需要写如下
if ($_POST['username']=="") {
$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/form.html';
$Err = "Invalid value";
header('Location: ' . $home_url);
}