이 메서드가 false를 계속 반환하는 이유는 무엇인지 알 수 없습니다. 입력 한 비밀번호의 길이를 확인하고 있습니다. 그것은 분명히 5 자 이상입니다. 입력 필드의 이름이 정확합니다. 그러나 항상 예외 throw new Exception("Password must contain at least 6 characters.");
을 던집니다.메서드는 true를 반환해야 할 때 false를 반환합니다.
방법 :
이public function checkPassword(){
if(strlen($this->post_data['register_password']) > 5){
}else{
throw new Exception("Password must contain at least 6 characters.");
}
}
전화 :
if(isset($_POST['register-submit'])){
$error = '';
$register = new register($_POST, $dbh);
try {
if($register->checkUsername()){
if($register->checkPassword()){
}
}
} catch (Exception $e) {
$error .= '<span style="color:red;">' . $e->getMessage() . '</span>';
}
}
편집 : $_POST
으로,
public $post_data = array();
private $dbh;
public function __construct($post_data, PDO $dbh){
$this->error = array();
$this->post_data = array_map('trim', $post_data);
$this->dbh = $dbh;
}
은 오류를 던지는 함수입니까? – Ibu
'$ this-> post_data [ 'register_password']'에 무엇이 있습니까? – andrewsi
@andrewssssss – crm