Joomla 1.5 E_NOLOGIN_ACCESS

Тема в разделе "Ошибки при работе с Joomla", создана пользователем BilloO, 18.01.2012.

  1. BilloO
    Offline

    BilloO Недавно здесь

    Регистрация:
    11.08.2010
    Сообщения:
    9
    Симпатии:
    0
    Пол:
    Мужской
    Здравствуйте, возникла такая проблема с регистрацией пользователей: после регистрации человек не может зайти под своим ником, и появляется ошибка 'E_NOLOGIN_ACCESS'. Попытался разобраться в этом, и после некоторых усилий понял, что после регистрации не добавляются данные о пользователе в таблицу 'jos_core_acl_groups_aro_map'. А с 'jos_core_acl_aro' все в порядке. Я добавил недостающие данные вручную, думая при этом, что дальше все пойдет как надо, но при новых регистрациях возникла та же ошибка. А каждый раз добавлять в таблицу данные о новых пользователях... некрасиво как-то.

    Сначала думал, что это компонент регистрации делает что-то неверно (какая-то стандартная регистрация), но затем, установив 'AlphaRegistration', отбросил эту мысль: с ним возникла та же проблема. Быть может, это в базе данных что-то не так, что уже два компонента не могут записать туда данные?

    В общем, буду рад любой помощи. Заранее спасибо.
     
  2.  
  3. OlegK
    Offline

    OlegK Russian Joomla! Team Команда форума ⇒ Профи ⇐

    Регистрация:
    17.01.2011
    Сообщения:
    7 813
    Симпатии:
    771
    Пол:
    Мужской
    а что в логах сервера,во время входа?
     
  4. BilloO
    Offline

    BilloO Недавно здесь

    Регистрация:
    11.08.2010
    Сообщения:
    9
    Симпатии:
    0
    Пол:
    Мужской
    Вы про эти файлы?

    'error_log'
    'access_log'

    Если да, то они остаются пустыми и при регистрации, и при входе. А так 'error_log' ругается только на отсутствие файла 'components/com_kunena/js/slimbox/slimbox-min.js', но это, вроде как, нормально: я его сам и удалил. Сомневаюсь, что из-за этого он не хочет нормально регистрировать пользователей.

    Кстати: после удаления пользователей из панели управления данные из таблиц 'jos_core_acl_groups_aro_map' и 'jos_users' удалены не были. Синхронизация пользователей в Kunena удалила эти данные. Но та же самая синхронизация не помогает при регистрации новых пользователей (не записывает данные в 'jos_core_acl_groups_aro_map').

    P.S. А поле 'section_value' таблицы 'jos_core_acl_groups_aro_map' должно быть пустым? У меня оно пустое. Впрочем, думаю, проблема не в этом. Просто уже не знаю, что думать.

    ---------------------------------------------------------------------------------------------------

    Я в MySQL не разбираюсь совершенно. Теоретически, возможна ли защита от записи на какой-нибудь из таблиц? Ничего больше в голову не приходит.
     
    Последнее редактирование: 19.01.2012
  5. BilloO
    Offline

    BilloO Недавно здесь

    Регистрация:
    11.08.2010
    Сообщения:
    9
    Симпатии:
    0
    Пол:
    Мужской
    Всем спасибо, проблема оказалась не такой сложной, как я предполагал, но, все же, не зная MySQL, я провозился с нею целых три дня. Хотелось бы дать совет всем, кто не знает, как решить любую проблему, пусть даже совершенно не похожую на мою. Прежде всего, мне помогли анализ моих действий за определенный промежуток времени и оценка того, какое из них могло бы, теоретически, повлечь за собой хоть какую-то ошибку. И затем я действовал уже, исходя из этого, проверяя возможные варианты и сужая круг подозреваемых.

    В общем-то, проблема оказалась в таблице 'jos_core_acl_aro_groups', в той, где записаны все группы. Я понял, что есть таблица с пользователями ('jos_core_acl_aro'), есть таблица с группами ('jos_core_acl_aro_groups'), а есть таблица, которая их связывает - 'jos_core_acl_groups_aro_map'. В последнюю таблицу записаны ID-номера группы и пользователя, который к этой группе принадлежит. ID он берет по имени пользователя и по имени группы, и проблема состояла в том, что в имени группы у меня вместо 'Registered' стояло 'Пользователь'. Вот такой-вот я безумный локализатор. Он просто не мог найти группу с именем 'Registered' и, следовательно, не делал записи в той таблице.

    И именно поэтому Kunena, также, не могла записать туда нового пользователя. И AlphaRegistration не мог, почему у меня и создалось впечатление защиты от записи в этой таблице.

    А пришел я к этому благодаря анализу своих действий и поиску возможной ошибки путем отсеивания каких-то вариантов - от большего к меньшему.

    P.S. В процессе ее поиска было найдено и исправлено еще несколько ошибок.
     

Поделиться этой страницей

Загрузка...