Цитата |
---|
Николай Санников пишет: Если пользователь авторизовался то его имя и фамилию можно выловить вот так: |
Сожалею, но не работает. Переменная $USER не определена при данном событии. Хотя, не понятно почему.
Цитата |
---|
Михаил Митрофанов пишет: А что конкретно не работает? |
Скажем так, была тенденция, отключаю защиту, максимум через 12 часов сайт отрубается, спасает перезагрузка хоста.
1-й раз я даже не подумал на это, во 2-й раз, решил, что это случайность, но когда это повторилось в 3-й раз... Но, к сожалению, я заболел, поэтому не мог отследить, что да как. А продолжить данный эксперимент не могу позволить. У нас на сайте в среднем 5 000 посетителей в день.
А насчет проблемы в топике, опишу поподробнее. В данный момент сайт работает на двух движках: самописанный (дело было до меня) и Битрикс. Сделано было так, что после авторизации, в сессиях сохранялись данные пользователя, что бы при заполнении форм автоматом вносились его данные.
Соответственно, когда я авторизацию перенес на Битрикс (идет плавный переход со старого движка на новый), то пришлось использовать события.
Соответственно, я прописал так:
Код |
---|
<?
// файл /bitrix/php_interface/init.php
AddEventHandler("main", "OnAfterUserAuthorize", Array("HhhAuth", "OnAfterUserAuthorizeHandler"));
class HhhAuth
{
function OnAfterUserAuthorizeHandler($arUser){
$_SESSION[user][name1] = $arUser['user_fields']['NAME'];
$_SESSION[user][name2] = $arUser['user_fields']['LAST_NAME'];
}
}
?> |
И все отлично работало, но недавно обнаружилось, что один из функционалов перестал работать. В следствии чего это случилось, сказать трудно, так как в течении недели сменился хостинг и прошли обновления Битрикса. Ну, я от радости, что появилась новая система защиты — включил ее. =)))
Поэтому, где искать хвосты — в системе защиты или в настройках хостинга — не понятно.
Но!!! Есть переменные, которые прописываются в сессию во время захода посетителя на сайт. Так вот, они прописываются. А дальнейшие попытки записать что-то — уже не срабатывают. Телефон разрывается от возмущенных пользователей, а я не могу понять, где искать ошибку. Перепробовал уже все что можно.
upd: В общем, последние эксперементы показали, что Битрикс тут абсолютно не при чем, рыть надо в направлении хоста. Т.е., суть в том, что при первом посещении сайта сессия записывается, а дальше не меняется вообще, а там есть переменная, которая запоминает последнюю страницу, которую посетил пользователь. Наш админ вернется из отпуска только через неделю. Может кто подсказать, в чем дело, в каких настройках? Может я сам смогу поправить.