free
10.09.2006, 10:07:08
Na stronie mam linki aktywne po zalogowaniu. Np aby dodac komentarz nalezy sie zalogowac. Gosc klika i skrypt wyswietla mu logowanie. Po zalogowaniu przenosi go do własnego profilu konta.
Jak rozwiazac problem ze zalogowany user przekierwoany zostaje na strone która chcial ogladnac przed zalogowaniem.
Nie prosze o gotowe rozwiazanie ale o nakierowanie, typu czy nalezy dodac dodatkowe pole w tabeli users zawierające adres sprzed zalogowaniem ?
revyag
10.09.2006, 10:22:29
Przekierowanie to wystarczy zwykły header. Sprawdzasz czy login i haslo sie zgadzaja i robisz przekierowanie, a po przekierowaniu wyciagasz z bazy dane usera,na podstawie jego loginu.
free
10.09.2006, 10:32:49
Ok stosuje te funkcje header. Tylko jak od strony technicznej dodac do bazy danych adres strony z ktorej gosc trafił by sie zalogowac ?
Denver
10.09.2006, 11:10:44
header + $_SERVER['HTTP_REFERER'] powinno wyjaśnić sprawę.
Ludvik
10.09.2006, 11:30:30
W formularzu do logowania dodajesz ukryte pole z zawartością nagłowka Referer. Po wysłaniu formularza sprawdzasz login i hasło, a następnie wysyłasz nagłówek Header z zawartością tego ukrytego pola
free
10.09.2006, 12:50:53
Acha :-) Po prostu robie pole input z wartoscia hidden a w nim wartosc otrzymana z $_SERVER['HTTP_REFERER'] i potem w przekierowaniu za pomoca php lub JS wyswietlam mu strona o adresie ze zmiennej $_SERVER['HTTP_REFERER']
Dziekuje proste rozwiazanie nie trzeba angazowac do tego dodatkowego pola w sql :-)
Jak bede mial chwilke czasu /dizs niedziela leniuchuje na www/ to sprwdze jak jest w praktyce.
thornag
10.09.2006, 16:46:29
A co jesli przegladarka nie ustawi referera ? Dodaj jeszcze ifa. Jesli pole bedzie puste przekieruj na widok defaultowy, np konto. Wez pod uwage tez zeby zadbac o to zeby usera nie przenioslo spowrotem na np google
Denver
10.09.2006, 23:29:58
Niestety, ale pole <input hidden> pozostawia duże możliwości wszelkim wyznawcom phishingu - wystarczy, że w jakimkolwiek miejscu Sieci przekierują użytkownika na "Twoją stronę" generując sfałszowany formularz, który przeniesie kogoś na stronę crackera i... problem z głowy - cenne dane (a w najbardziej optymalistycznym wyjątku: konto użytkownika) zostanie przechwycone bez najmniejszych problemów. Dlatego też wolę dawać formularz logowania na _każdej_ podstronie (gdzieś w mało widocznym miejscu), gdzie mogę skorzystać z $_SERVER['HTTP_REFERER'] aby zalogować użytkownika i wrócić na poprzednio oglądaną stronę.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.