sakaw
(Sakaw 03)
1
haloo para master…
saya pengen nanya ni saya kan ada login form…saya mau set user cmn bs 3x salah password…kalau lebih dari 3 x id nya di ban…
tu di yii sudah di sediakan atau ada extensionya??atau mst bikin manual lg??
kl bole mnt contohnya sekalian…hehe
tq…mohon bantuanya…
petra
(Petra Barus)
2
bikin di UserIdentitynya
pas di function authenticate() tambahin fungsi pengecekan aja. dan di user modelnya tambahin attribute attempt.
<?php
class UserIdentity extends CUserIdentity {
const MAX_ATTEMPT = 3;
const ERROR_MAX_ATTEMPT = 3;
private $_id;
/**
* Authenticate user either by username or by email.
* @return int the error code.
*/
public function authenticate() {
$record = User::model()->find('LOWER(username)=?', array(strtolower($this->username)));
if ($record === null) {
$this->errorCode = self::ERROR_USERNAME_INVALID;
} else if ($record->password !== sha1($this->password)) {
if ($record->active){
$this->errorCode = self::ERROR_PASSWORD_INVALID;
$record->attempt++;
if ($record->attempt == MAX_ATTEMPT){
$this->errorCode = self::ERROR_MAX_ATTEMPT;
$record->active = false;
}
$record->save();
} else {
$this->errorCode = self::ERROR_MAX_ATTEMPT;
}
} else {
$this->_id = $record->id;
//$this->username = $record->username;
$this->_email = $record->email;
$this->errorCode = self::ERROR_NONE;
}
return!$this->errorCode;
}
/**
* @return int user's id.
*/
public function getId() {
return $this->_id;
}
}
sakaw
(Sakaw 03)
3
tq om petra pencerahanya…hehe…
akan saya coba