Witajcie,
Próbuje poznać Yii tworząc Blog wg tutorialu. Zatrzymałem się niestety na etapie logowania z poziomu bazy danych.
Dodałem odpowiednio w pliku UserIdentity.php:
<?php
class UserIdentity extends CUserIdentity
{
private $_id;
public function authenticate()
{
$username=strtolower($this->username);
$user=User::model()->find('LOWER(username)=?',array($username));
if($user===null)
$this->errorCode=self::ERROR_USERNAME_INVALID;
else if(!$user->validatePassword($this->password))
$this->errorCode=self::ERROR_PASSWORD_INVALID;
else
{
$this->_id=$user->id;
$this->username=$user->username;
$this->errorCode=self::ERROR_NONE;
}
return $this->errorCode==self::ERROR_NONE;
}
public function getId()
{
return $this->_id;
}
}
oraz w pliku Users.php
class User extends CActiveRecord
{
public function validatePassword($password)
{
return $this->hashPassword($password,$this->salt)===$this->password;
}
public function hashPassword($password,$salt)
{
return md5($salt.$password);
}
}
i wtedy otrzymałem kod błedu: Property "User.salt" is not defined
Dodałem więc pole public $salt w klasie User, co spowodowało że nie mogę się zalogować : Incorrect username or password.
Używam mysql. Zaimportowałem wcześniej schema.mysql z demo/blog, więc login i hasło powinno być demo. Robiłem wszystko wg tutoriala. Niestety skończyły mi się pomysły…
Spotkał się ktoś z tym problemem i jest w stanie podpowiedzieć co zrobić ??