|
|
31.01.2013, 08:27
|
|
Константин
Константин
Зарегистрирован: 2010-07-20
Сообщений: 210
|
Есть два сайта на одной копии. Сайты абсолютно разные. На обоих есть регистрация и списки пользователей.
В качестве логина в системе используется почта. Беда в том, что система не даёт зарегистрировать пользователя на разных сайтах с одной почтой, пишет, что «Логин *** занят другим пользователем».
В действие после добавления стоит проверка на занятость почты с указанием сайта, про логин вообще ни слова.
Подскажите, пожалуйста, как можно решить вопрос?
orlovkn
|
|
|
31.01.2013, 13:10
|
|
Игорь
Игорь Мишарин
Зарегистрирован: 2011-11-20
Сообщений: 482
|
Это получается, что на 2 сайта 1 таблица User?
Stark
|
|
|
31.01.2013, 18:05
|
|
Константин
Константин
Зарегистрирован: 2010-07-20
Сообщений: 210
|
Можно хоть 10 сайтов сделать на одной копии, а таблица User будет одна для всех сайтов.
У меня такая ситуация, что пользователь, который уже зарегистрирован на первом сайте не может зарегистрироваться на втором с той же почтой.
orlovkn
|
|
|
31.01.2013, 19:12
|
|
Игорь
Игорь Мишарин
Зарегистрирован: 2011-11-20
Сообщений: 482
|
Ну, так может проверку сделать не только на мэйл, но и еще и на ID сайта?
Поможет ли?
Stark
|
|
|
31.01.2013, 20:58
|
|
Константин
Константин
Зарегистрирован: 2010-07-20
Сообщений: 210
|
В условии стоит проверка на почту и на ID сайта. Ошибка вылазит откуда-то из системы, потому что сообщение звучит как «Логин занят блаблабла». Завтра исходники почитаю.
orlovkn
|
|
|
01.02.2013, 00:10
|
|
DiGGy
DiGGy
Зарегистрирован: 2005-04-04
Сообщений: 1546
|
Проще на отдельную копию второй сайт перенести =)
По сути.
Для начала вам следует понять на каком уровне стоит ограничение. Если посмотреть таблицу User, то там только одно поле является уникальным - User_ID - это primary key. Остальные поля могут дублироваться. Соотв-но ограничение возникает на стороне клиента, т.е. php.
Далее вам надо найти в каком именно скрипте идет такая проверка - тут просто тупо поиском по всем файлам движка на текст ошибки (тексты ошибки в файлах lang - там найдете константу ошибки и далее найдете реальный файл). А там уже сами смотрите - будете корреткировать это ограничение или нет (совсеми вытекающими проблемами при обновлении движка).
По идее можете добавить в таблицу User поле Catalogue_ID и ИД сайта и проводить проверку с учетом этого поля. Только учтите, что админ должен заходить в админку с любого домена со всеми нюансами в реализации вашей хотелки.
Temet nosce...
|
|
|
01.02.2013, 07:11
|
|
Константин
Константин
Зарегистрирован: 2010-07-20
Сообщений: 210
|
Цитата:Проще на отдельную копию второй сайт перенести =)
Вопрос лицензии. Понятно, что так бы я избежал многих проблем.
Цитата:Далее вам надо найти в каком именно скрипте идет такая проверка - тут просто тупо поиском по всем файлам движка на т
Спасибо — это и хотел сделать, просто уверен, что это в исходниках системы зашито, если поменяю сейчас что-то — патч всё убъёт, поэтому не совсем вариант.
Цитата:По идее можете добавить в таблицу User поле Catalogue_ID
Catalogue_ID есть, указывается при регистрации корректно. В условии добавления стоит проверка:
Код:if ($db->get_var("SELECT User_ID FROM User WHERE Email = '$f_Email' AND Catalogue_ID=".$catalogue)) {
$warnText = "Пользователь с таким e-mail адресом уже зарегистрирован.";
$posting = 0;
}
Цитата:Только учтите, что админ должен заходить в админку с любого домена со всеми нюансами в реализации вашей хотелки.
Если у юзера прописать Catalogue_ID равным нулю, он может заходить на любой сайт. Так я сделал у админа, поэтому здесь проблемы нет.
orlovkn
|