Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> YII правила для проверки форм 
V
    Опции темы
studentigor
Дата 9.3.2012, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 397
Регистрация: 14.11.2008

Репутация: нет
Всего: нет



Всем привет.

Есть правила, для проверки формы авторизации и регистрации.
Код

public function rules(){
        return array(array('login, password', 'required'),//эта строка работает всегда
            array('email,password_repeat', 'required','on'=>'registr'),// эта строка должна срабатывать если идет регистрация
            array('login', 'length', 'max'=>20),


Вот я вызываю валидацию
Код

if($model->validate('registr')) {


Так вот в таком варианте запись в базу не заносится.
Если же я в rules сделаю так
Код

public function rules(){
        return array(array('login, password,email,password_repeat', 'required'),
            array('login', 'length', 'max'=>20),

тогда регистрация срабатывает, но тогда не будет работать авторизация

вобщем как сделать так чтобы если я вызываю валидацию для регистрации $model->validate('registr') у меня
в rules срабатывали строки с ,'on'=>'registr',
если же 
$model->validate('login') у меня
в rules срабатывали строки с ,'on'=>'login',

У меня почему-то это не срабатывает, хотя делаю все по книжным примерам
PM MAIL   Вверх
SamDark
Дата 9.3.2012, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый кот
***


Профиль
Группа: Участник
Сообщений: 1424
Регистрация: 25.7.2006
Где: Voronezh

Репутация: нет
Всего: 38



Обязано срабатывать. Вы после validate делаете save с параметром false? Если нет, у вас повторно вызывается валидация.


--------------------
rmcreative.ru — Это жжж неспроста...
yiiframework.ru — О фреймворке Yii на русском.
reggi — здесь я регистрирую домены
PM MAIL WWW GTalk Jabber MSN   Вверх
studentigor
Дата 9.3.2012, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 397
Регистрация: 14.11.2008

Репутация: нет
Всего: нет



да с false, но почему-то не срабатывает. 



PM MAIL   Вверх
SamDark
Дата 9.3.2012, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый кот
***


Профиль
Группа: Участник
Сообщений: 1424
Регистрация: 25.7.2006
Где: Voronezh

Репутация: нет
Всего: 38



Попробуйте приписать else и сделать print_r($model->getErrors())


--------------------
rmcreative.ru — Это жжж неспроста...
yiiframework.ru — О фреймворке Yii на русском.
reggi — здесь я регистрирую домены
PM MAIL WWW GTalk Jabber MSN   Вверх
studentigor
Дата 9.3.2012, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 397
Регистрация: 14.11.2008

Репутация: нет
Всего: нет



все, пасиб.

оказалось что $model->attributes = $_POST['Users']; не присваивал значения для password_repeat.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Extensions | Следующая тема »


 




[ Время генерации скрипта: 0.1115 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.