我试过查看其他答案,但我遇到的只是人们将他们的比较运算符放在错误的方向上。不是这里的情况。下面是我的代码的简化版本。此代码不会返回我认为应该的错误。
我正在尝试确定一个字符串(在本例中为密码)是否满足最小长度要求。但是,无论我输入什么字符串,它都不会给出应有的错误。作为调试的一种方式,我尝试在 strlen() 中输入一个简单的字符串“hi”,并告诉它如果小于则给出错误6 个字节长。然而,即使这样也不会像我想要的那样返回。
我觉得我错过了一些愚蠢的东西。帮助?
<?php
$Email = mysql_real_escape_string(Trim($_POST['Email']));
$Password = "hi";
// check fields
$error = false;
if(empty($Email)) $error = true;
if(strlen(utf8_decode($Password)) < 6) $error = true;
if($error != false) header("Location: index.php?error=true");
// store user to database
$success = insert_dbUser(new User($Email, $Password));
// redirect to success page
if ($success) {
header("Location: index.php?success=true");
}
else header("Location: index.php?error=existinguser");
?>