【发布时间】:2016-08-26 20:45:36
【问题描述】:
这是别人的代码,似乎对除我之外的所有人都有效。 即使我有专门的代码,它似乎也没有检测到大写字母。
有人能在我的代码中发现错误吗:
<?php
if($_POST['submit']){
if(!$_POST['email']) $error.="<br />Please enter your email";
else if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) $error.="<br />Please enter a valid mail";
if(!$_POST['password']) $error.="<br />Please enter your password";
else {
if(strlen($_POST['password'])<8) $error.="<br />Please enter a password with atleast 8 characters";
if(!preg_match('/[A-Z]/', $_post['password'])) $error.="<br />Please enter atleast one capital letter";
}
if($error) echo "There were error(s) in your details:".$error;
}
?>
<form method="post">
<input type="email" name="email" id="email" />
<input type="password" name="password" />
<input type="submit" name="submit" value="signup" />
</form>
这里是它的链接:
【问题讨论】:
-
区分大小写:
$_POST['password'],而不是$_post['password'] -
有点讽刺意味,因为您正在寻找大写字母。
-
@MarkBaker Zend 为不受支持的 PHP 版本提供认证有点讽刺。
-
@CharlotteDunois - 我推迟了获得 5.5 认证,计划在 php7 认证可用时直接跳到 php7 认证......仍在等待