Всем привет. Изучаю WEB по книге. И вот столкнулся с проблемой - в панели навигации автор предлагает не создавать ссылку входа на сайт, а перейти на неё вручную вбивая адрес ("безопасность"). Как только я перехожу по адресу вылетает ошибка.
Вот контроллер:
public function actionLogin()
{
$this->pageTitle = "Вход";
$user = new User("search");
if (isset($_POST['User'])) {
$user->attributes = $_POST['User'];
if ($user->validate()) {
$idetntity = new UserIdentity($user->name, $user->password);
if(($identity->authenticate()) &&
(Yii::app()->user-login($identity))) {
$this->redirect(array("site/index"));
}
}
}
$this->render('login', array('user' => $user));
}
Вот шаблон login.php:
<h1><?php echo CHtml::encode($this->PageTitle); ?> </h1>
<?php if ($this->isMobile) { ?>
<p> Пользователи мобильных устройств не могут войти на сайт.</p>
<?php } else { ?>
<?php echo CHtml::beginForm() ?>
<div class="label"><?php echo CHtml::activeLabelEx($user, "name")
?></div>
<div class="control"><?php echo CHtml::activeTextField($user, "name")
?></div>
<?php echo Chtml::error($user, "name") ?>
<div class="label"><?php echo CHtml::activeLabelEx($user, "password")
?></div>
<div class="control"><?php echo CHtml::activePasswordField($user, "password") ?><div>
<?php echo CHtml::error($user, "password") ?>
<div class="button"><?php echo CHtml::submitButton("Войти"); ?></div>
<?php echo CHtml::endForm() ?>
<?php } ?>
На всякий упомяну - для дублирования поля ввода пароля при регистрации создаётся поле в модели класса User:
class User extends CActiveRecord
{
public $password2;
...