我需要检查另一个页面传递的用户名和密码是否为空,但这不起作用,我无法理解原因。用户名和密码由另一个页面中的表单通过POST方法传递。
session_start();
if(!(isset($_SESSION['username'])) && !(isset($_SESSION['password']))){
$_SESSION['username']=trim($_POST['username']);
$_SESSION['password']=$_POST['password'];
}
[...]
$username = $_SESSION['username'];
$password = $_SESSION['password'];
if($username=="" || $password=="")
{
echo "<script>
alert('You need to fill all fields!');
window.location.assign('reg.php');
</script>";
}
感谢。
编辑。 现在有了这个:
if(is_null($username) || is_null($password))
{
echo "<script>
alert('You need to fill all fields!');
window.location.assign('reg.php');
</script>";
}
else
{
if(strlen($username)<5 || strlen($password)<5)
{
echo "<script>
alert('Fiels must be at least of 5 character!');
window.location.assign('reg.php');
</script>";
}
它直接跳转到第二条错误消息,&#39; Fiels必须至少为5个字符!&#39;。 为什么? 感谢。
答案 0 :(得分:2)
你可以检查空()。并且您可以使用标头位置而不是javascript重定向。
$username = $_SESSION['username'];
$password = $_SESSION['password'];
if(empty($username) || empty($password))
{
header("Location: reg.php");
}
答案 1 :(得分:1)
您现在正在检查用户名和密码是否为空。 $username = ""
但是当有人跳过输入时,它为空。所以你必须检查一下。您可以使用is_null()
函数执行此操作。
现在你做:is_null($username)