Список форумов Cake-PHP.ru Cake-PHP.ru
Форум программистов CakePHP
(на сайт)
 
 Watched TopicsWatched Topics   FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

findByLogin

 
Начать новую тему   Ответить на тему    Список форумов Cake-PHP.ru -> Общий
Предыдущая тема :: Следующая тема  
Автор Сообщение
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

СообщениеДобавлено: 21 Янв 2008 15:25:41    Заголовок сообщения: Ответить с цитатой

aktuba
/wiki/Code/Models/UniqueFieldsValidation?v=ld9
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
aktuba

цитировать



Зарегистрирован: 18 Янв 2008 10:24:01
Сообщения: 38

СообщениеДобавлено: 21 Янв 2008 17:11:05    Заголовок сообщения: Ответить с цитатой

Sam Dark писал(а):
aktuba
/wiki/Code/Models/UniqueFieldsValidation?v=ld9


Это конечно хорошо, но хотелось бы понять, почему $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 - всё работало хорошо.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Имя
Сообщение

Смайлики
Very Happy Smile Sad Surprised
Shocked Confused Cool Laughing
Mad Razz Embarassed Crying or Very sad
Evil or Very Mad Twisted Evil Rolling Eyes Wink
Exclamation Question Idea Arrow
Дополнительные смайлики

 
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Cake-PHP.ru -> Общий Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы можете начинать темы
Вы можете отвечать на сообщения
Вы можете редактировать свои сообщения
Вы можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB

Рейтинг@Mail.ru