Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
aktuba
цитировать
Зарегистрирован: 18 Янв 2008 10:24:01 Сообщения: 38
|
Добавлено: 21 Янв 2008 13:27:09 Заголовок сообщения: findByLogin |
|
|
Код: |
if(!$this -> User -> findBylogin($login)) {
if(!$this -> User -> findByemail($email)) {
$this -> User -> register($login, $passwd, $email);
$this -> set('help_activate', 'На ваш e-mail отправлено письмо с кодом активации.');
$this -> render('activate');
} else {
$err = 'Пользователь с таким e-mail уже зарегистрирован.';
}
} else {
$err = 'Пользователь с таким логином уже зарегистрирован.';
} |
Почему не срабатывает findByLogin и findByEmail? Логин и e-mail ввожу одни и те же, в базу не попадают, т.к. уникальны, но и ошибку не выдает... |
|
Вернуться к началу |
|
|
Sam Dark
цитировать
Зарегистрирован: 09 Ноя 2007 19:16:48 Сообщения: 19
|
|
Вернуться к началу |
|
|
aktuba
цитировать
Зарегистрирован: 18 Янв 2008 10:24:01 Сообщения: 38
|
Добавлено: 21 Янв 2008 17:11:05 Заголовок сообщения: |
|
|
Это конечно хорошо, но хотелось бы понять, почему $this -> Model -> findByLogin не определяет, что данная запись уже есть в базе. |
|
Вернуться к началу |
|
|
Антон Исайкин Site Admin цитировать
Зарегистрирован: 08 Окт 2007 12:02:56 Сообщения: 150 Откуда: Санкт-Петербург
|
Добавлено: 21 Янв 2008 21:05:45 Заголовок сообщения: |
|
|
Синтаксис подразумевает, что после FindBy у вас будет слово с большой буквы. В куске кода не так. Возможно дело в этом. |
|
Вернуться к началу |
|
|
aktuba
цитировать
Зарегистрирован: 18 Янв 2008 10:24:01 Сообщения: 38
|
Добавлено: 21 Янв 2008 22:19:17 Заголовок сообщения: |
|
|
Антон Исайкин писал(а): | Синтаксис подразумевает, что после FindBy у вас будет слово с большой буквы. В куске кода не так. Возможно дело в этом. |
Нет, не в этом. И так и так пробовал - не помогает... |
|
Вернуться к началу |
|
|
KPOTOB
цитировать
Зарегистрирован: 09 Дек 2007 14:46:20 Сообщения: 127
|
Добавлено: 22 Янв 2008 00:00:49 Заголовок сообщения: |
|
|
какой версии кейк? он тебе может возвращает пустой массив )) |
|
Вернуться к началу |
|
|
aktuba
цитировать
Зарегистрирован: 18 Янв 2008 10:24:01 Сообщения: 38
|
Добавлено: 22 Янв 2008 04:30:05 Заголовок сообщения: |
|
|
1.2 |
|
Вернуться к началу |
|
|
Inspired
цитировать
Зарегистрирован: 22 Янв 2008 01:50:01 Сообщения: 3 Откуда: Киев
|
Добавлено: 22 Янв 2008 10:04:32 Заголовок сообщения: Re: findByLogin |
|
|
aktuba писал(а): | Почему не срабатывает findByLogin и findByEmail? Логин и e-mail ввожу одни и те же, в базу не попадают, т.к. уникальны, но и ошибку не выдает... |
Прежде всего убедись, что $login и $email передаются так как ты этого ожидаешь
Код: | pr($login);pr($email);die; |
Затем можно посмотреть что возвращает findByLogin
Код: | pr($this -> User -> findByLogin($login));
pr($this -> User -> findByEmail($email));
die; |
это и должно ответить )
Кстати, я для себя открыл, что findByemail работает и с маленькой буквой, хотя раньше считал, что работать не должно. |
|
Вернуться к началу |
|
|
Sam Dark
цитировать
Зарегистрирован: 09 Ноя 2007 19:16:48 Сообщения: 19
|
Добавлено: 22 Янв 2008 13:26:36 Заголовок сообщения: |
|
|
А куда $err потом идёт? |
|
Вернуться к началу |
|
|
Vlad
цитировать
Зарегистрирован: 02 Ноя 2007 11:45:52 Сообщения: 241
|
Добавлено: 23 Янв 2008 16:50:04 Заголовок сообщения: |
|
|
У меня так же были проблемы с уникальными полями. Обошёлся без этого, тоже в 1.2 версии
в 1.1 - всё работало хорошо. |
|
Вернуться к началу |
|
|
|