перенаправление после авторизации на предыдущую страницу

2 сентября 2012 в 21:42
Аватар пользователя Beshan Beshan 0 20

перенаправление после авторизации на предыдущую страницу искал искал так и не нашёл.
использую для входа login toboggan,

попробовал Login destination не разобрался !!

пробова прикрутить как сказано здесь не вышло выдает ошибку
Notice: A session had already been started - ignoring session_start() в функции include()

подскажите плизззззз

Комментарии

kalabro wrote:
оно и так перенаправляет, без всяких модулей

и где это настроить а то он перенаправляет на страничку пользователя

2 сентября 2012 в 22:35

в рулезах сделать правило Пользвоатель авторизовался, дейтсвие - выполнить php код

<?php header('Location: '.$_SERVER["HTTP_REFERER"]);?>

2 сентября 2012 в 22:32

установил рулес и неообходимые модули а чето не пашет ни где ни че не появилось пробовал перейти по /admin/rules/trigger но просто открывает /admin может надо еще чтото ставить??

3 сентября 2012 в 0:20

сделал при авторизации перенапровление на отдельный скрипт пхп тоже работает,сегодня попробую как написали

5 сентября 2012 в 7:11

"imarat" wrote:
<?php header('Location: '.$_SERVER["HTTP_REFERER"]);?>

интересно
т.е. если, допустим, с д.ру я зайду сразу на site.ru/user, то после авториза меня выкинет обратно на д.ру?

5 сентября 2012 в 9:11

"NaZg" wrote:
т.е. если, допустим, с д.ру я зайду сразу на site.ru/user, то после авториза меня выкинет обратно на д.ру?

"Beshan" wrote:
перенаправление после авторизации на предыдущую страницу

да, но при желании можно задать доп условие, сравнить домен

5 сентября 2012 в 19:23

imarat wrote:
"NaZg" wrote:
т.е. если, допустим, с д.ру я зайду сразу на site.ru/user, то после авториза меня выкинет обратно на д.ру?

"Beshan" wrote:
перенаправление после авторизации на предыдущую страницу

да, но при желании можно задать доп условие, сравнить домен
я так попробовал

<?php
$urlsn
=$_SERVER['SERVER_NAME'];
$urlr=$_SERVER['HTTP_REFERER'];
$url=parse_url($urlrPHP_URL_HOST);
    if(
$urlsn==$url){
    
header('Location: '.$_SERVER["HTTP_REFERER"]);
}
else

header('Location: http://'.$_SERVER["SERVER_NAME"]);

 
?>

но вот в чем дело если мы заходим на страницу /user то она попадает в HTTP_REFERER и скрипт перекидывает обратно /user

6 сентября 2012 в 0:46

ПХП в руле появился но почемуто не срабатывает....(пробовал и с тегами и без них )
оставил так при авторизации перенапровляет на файл пхп содержащий <?php header('Location: '.$_SERVER["HTTP_REFERER"]);?>
если пользователь зашел просто через block-login-user то он остается на той странице на которой был а если через страницу /user то он неизбежно остается на /user (оно и правильно)

6 сентября 2012 в 1:06

"Beshan" wrote:
если есть еще предложения было бы интересно послушать...

"CASHMAR" wrote:
Приводи юзера к странице авторизации с параметром "destination" в урле. Всё схватится автоматом.

6 сентября 2012 в 1:20

NaZg wrote:
"Beshan" wrote:
если есть еще предложения было бы интересно послушать...

"CASHMAR" wrote:
Приводи юзера к странице авторизации с параметром "destination" в урле. Всё схватится автоматом.

вроди догадываюсь как это реализовать, но хотелосьбы поподробней(пример)

6 сентября 2012 в 8:14

"Beshan" wrote:
/user/login?destination=$_SERVER['REQUEST_URI']
может както так??

"imarat" wrote:
/user/login?destination=<?php echo $_SERVER['REQUEST_URI']; ?>

"Beshan" wrote:
если есть еще предложения было бы интересно послушать...

Попробуй лучше

$destination = 'uri/you-want-user-to-send-to';
$link        = l(t('Sing in'), 'user', array('query' => array('destination' => $destination)));

print $link;

6 сентября 2012 в 18:51