Forum. MyNuke.ru
Forum. MyNuke.ruСообщения за сегодняПерсональные сообщения

Навигация  
Вернуться   Forum. MyNuke.ru > PHP-NUKE > Установка
Ник
Пароль
Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Ksuha вне форума      Старый активация по почте проходит, но пользователь не создается #1  
Ksuha
Новенький
Регистрация: 29.06.2011
Сообщения: 4


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Ksuha Найти все сообщения от Ksuha Добавить Ksuha в список друзей  
29.06.2011, 18:04

Нужна активация по почте, но возникает следующая проблема. Нюка работает на сервере MySQl в локальной сети. Работает локальная почта. Процесс регистрации пользователя проходит нормально. На почту приходит письмо с активацией. При переходе по этой ссылке Нюка пишет, что «Ваш аккаунт успешно активизирован, пожалуйста, для входа на сайт под своим именем нажмите здесь и введите свой логин и пароль».
Далее, при попытке ввести свой логин и пароль, Нюка пишет: «Неправильный логин! Попробуйте еще...»
Данная тема уже была на форуме а-ля почта , но ответа там так и не дали.
Я проверила, куда добавляются данные при регистрации и активации. При регистрации запись о новом пользователе появляется в таблице nuke_users_temp. Затем, по логике модуля Your_Account и функции activate в нём, при активации запись о пользователе должна переноситься в таблицу nuke_users. Но этого не происходит: запись о новом пользователе удаляется из таблицы nuke_users_temp, но в таблицу nuke_users не добавляется. Я выудили запрос на вставку в таблицу nuke_users из скрипта index.php модуля Your_Account. Он выглядит так:

INSERT INTO nuke_users (user_id, username, user_email, user_password, user_avatar, user_avatar_type, user_regdate, user_lang) VALUES (NULL, 'Имя', 'Почта', 'e10adc3949ba59abbe56e057f20f883e', 'gallery/blank.gif', '3', 'Jun 29, 2011', 'russian'),

где ‘Имя’ и ‘Почта’ заменены на реальные данные.
При выполнении данного запроса в PhpMyadmin вылетает следующая ошибка:

Ошибка
#1364 - Field 'bio' doesn't have a default value


Я посмотрела описании данного поля при создании таблицы:

`bio` tinytext NOT NULL.

Т.е., поле не должно иметь пустого значения, но значение по умолчанию не указано. Если посмотреть на исполняемый запрос, то видно, что в поле ‘bio’ никакого значения не добавляется, но т.к. оно не может быть нулевым, то и возникает данная ошибка. Аналогично с полем `ublock`:

`ublock` tinytext NOT NULL.

Я попыталась задать значение по умолчанию по данным полям, но как оказалось, они не могу иметь такого значения в синтаксисе MySQL. Выдаётся ошибка:


#1101 - BLOB/TEXT column 'bio' can't have a default value

Тогда я переопределила данные поля без ограничения NOT NULL, и всё сработало. Но я думаю, что не может же так быть, что скрипт и поля определены неверно? Ведь это всё продумывалось. И что это за адовы поля такие ‘bio’ и ‘ublock’, и могут ли они содержать пустые значения? Вдруг потом из-за этого возникут проблемы?

Soniks вне форума      Старый #2  
Soniks
Администратор
Регистрация: 16.01.2005
Сообщения: 4,814


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Soniks Посетить домашнюю страницу Soniks Найти все сообщения от Soniks Добавить Soniks в список друзей  
30.06.2011, 13:40

Ksuha Вы все сделали верно. Причина изначально в том что система разрабатывалась под MySQL 3-4 версии, и в этих версиях данный запрос не вызвал бы ошибку и он прошел бы удачно. А в новой версии трнЫЙД требуются доработки либо запроса, добавив в запрос :
Код:
INSERT INTO nuke_users (user_id, username, user_email, user_password, user_avatar, user_avatar_type, user_regdate, user_lang, bio, ublock) VALUES (NULL, 'Имя', 'Почта', 'e10adc3949ba59abbe56e057f20f883e', 'gallery/blank.gif', '3', 'Jun 29, 2011', 'russian', '', '')

Или же изменив структуру таблицы, что вы и сделали.
 
"Если бы вам удалось надавать под зад человеку, виноватому в большинстве ваших неприятностей - вы бы неделю не смогли сидеть".


Ksuha вне форума      Старый #3  
Ksuha
Новенький
Регистрация: 29.06.2011
Сообщения: 4


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Ksuha Найти все сообщения от Ksuha Добавить Ksuha в список друзей  
30.06.2011, 15:47

спасибо! --<-@

PS. Но это же получается значительный глюк! Новичок копаться не будет, бросит. У меня версия 7.6 RUS patched. Возможно, в восьмой Нюке это исправлено.

Последний раз редактировалось Ksuha, 30.06.2011 в 17:08.

Soniks вне форума      Старый #4  
Soniks
Администратор
Регистрация: 16.01.2005
Сообщения: 4,814


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Soniks Посетить домашнюю страницу Soniks Найти все сообщения от Soniks Добавить Soniks в список друзей  
30.06.2011, 17:20

Ksuha phpnuke в первую очередь для тех, кто желает/хочет научиться программировать на php+mysql, т.к. без знание сего будет трудно сделать себе хороший сайт.
 
"Если бы вам удалось надавать под зад человеку, виноватому в большинстве ваших неприятностей - вы бы неделю не смогли сидеть".


Ответ


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +4, время: 02:30.


На Верх
Рейтинг@Mail.ru