![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 449 Pomógł: 4 Dołączył: 1.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Praktycznie połączyłem już logowanie z forum, z tym, że jak zaloguję się formularzem na stronie, to jestem przekierowany na forum. Jakoś nie mogę znaleźć fragmentu odpowiadającego za to przekierowanie. Adres przekazuje zmienna $_GET['url'], w przypadku wylogawnia zrobiłem tak:
A logowanie pośrednio jest tu:
Może ktoś to robił i wie, gdzie szukać? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Z góry dzięki. No doszedłem, bo sprawa dosyć prosta, jest pole hidden 'redirect', tylko, że przez to pole przekierowuje http://strona/forum/dopiero mój adres, jest możliwość przejść wyżej do katalogu? ./ i ../ nie działa (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Sam doszedłem (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) w polu trzeba podać pełny adres strony z http:// i działa. Z tym, że najpierw strona z info forum 'zostałeś zalogowany', ale po kilku sekundach lub kliknięciu w link następuje przekierowanie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ew. jakby ktoś wiedział, jak zrobić, aby bezpośrednio przekierował (jakby używając header('Location: ...')) byłbym wdzięczny (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) </a href=\"' . append_sid(\"{$phpbb_root_path}index.$phpex\") . '\"></br ></br > Ten post edytował KCG 2.01.2008, 17:03:01 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 1 Dołączył: 11.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Dzisiaj nad tym siedzialem i wymyslilem takie rozwiazanie:
W pliku includes/functions.php jest funkcja login_box()
Pozdrawiam |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 449 Pomógł: 4 Dołączył: 1.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Można rzeźbić, a można poczytać na phpbb.com i zrobić wszystko prościej (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Tylko teraz mam inne problemy, z autowylogowywaniem, poruszane w innym wątku ;/ |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 1 Dołączył: 11.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Dodanie 2 wierszy jest rzeźbieniem?
zastosowana wcześniej funkcja meta_refresh(0, $redirect); dodaje znacznik meta do strony logowania i dopiero po jej załadowaniu przekierowuje. W każdym razie zastosowanie tego pozwala na natychmiastowy powrót na stronę z której się zalogowano. W przypadku umieszczenia formularza logowania w nagłówku strony rozwiązanie takie pozwala na szybkie zalogowanie i powrót na stronę np. czytanego artykułu. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 449 Pomógł: 4 Dołączył: 1.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Można, ale moim zdaniem nie warto ingerować w pliki forum, skoro logowanie to:
Więcej tutaj http://www.phpbb.com/kb/article/phpbb3-cro...ns-integration/ . Nie wymądrzam się, tylko przekazuję doświadczenie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 1 Dołączył: 11.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Szperałem dalej i:
funkcja login() - jak można się domyślać loguje do systemu; używa przy okazji funkcji login_db(). Jak logowanie się nie udaje zwraca info o błędach zapisane w tablicy np: Kod return array( 'status' => 'LOGIN_ERROR_PASSWORD', 'error_msg' =>'LOGIN_ERROR_PASSWORD', 'user_row' => $row, ); żeby to info wydobyć i obsłużyć trzeba użyć np. login_box() Jak dla mnie nie ma łatwiejszej opcji szybkiego zalogowania na stronę bez przechodzenia przez stronę forum. Jak coś znajdziesz to napisz, czekam na rozwiązanie. Ten post edytował Draz 13.02.2009, 17:02:47 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 449 Pomógł: 4 Dołączył: 1.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 1 Dołączył: 11.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
To może wytłumaczę o co mi chodzi:
- użytkownik loguje się do systemu, mamy kilka opcji - logowanie powiodło się lub wpisał złe hasło albo login. - pozostawiając przy Twoim rozwiązaniu w przypadku pomyślnego zalogowania jest super, powiedzmy że dodajesz do tego przekierowanie i jesteś tam skąd się logowałeś - ale co kiedy wpisałeś złe dane? funkcja login() zwraca ci błędy, ale trzeba jeszcze je obsłużyć, aby użytkownik wiedział co jest nie tak. W efekcie, albo piszesz własny kod obsługujący błędy i omawiane w tym temacie przekierowania, albo modyfikujesz już istniejącą funkcję login_box() wg. mnie łatwiejsza i szybsza jest 2 opcja |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 449 Pomógł: 4 Dołączył: 1.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli po tym, co napisałem użytkownik nie jest zalogowany, tzn. że podał błędne dane, ot obsługa błędów.
Może faktycznie ta funkcja jest dla Ciebie lepsza, ale z ciekawości jakie jeszcze chcesz błędy obsługiwać? Może coś przeoczyłem. |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 1 Dołączył: 11.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Masz rację, wystarczy wypisać - wystąpił błąd podczas logowania... to zależy jakie rozwiązanie pasuje do danego projektu.
A błędy które ja chce obsługiwać, dam przykład: jeżeli forum jest zintegrowane ze stroną np wydawnictwa i loginem jest numer prenumeraty, a hasło jest wybierane przez użytkownika - jako użytkownik chciałbym wiedzieć czy podczas błędnego logowania: a. mojego loginu czyli numeru prenumeraty nie ma jeszcze w bazie, lub numer prenumeraty wygasł (program wypisuje odpowiedni komunikat - w tym przypadku kontaktuje się z wydawnictwem) b. mój login jest w bazie, ale wpisałem złe hasło (komunikat - nie pamiętasz hasła? - przejdź na zakładkę przypomnij hasło - w tym przypadku oszczędzamy sobie x maili od użytkowników, którzy myślą że ich numer prenumeraty został skasowany). Ten post edytował Draz 15.02.2009, 08:59:58 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 449 Pomógł: 4 Dołączył: 1.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Masz rację, ja aż takich możliwości aktualnie nie potrzebuję (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 1.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
a jeśli nie działa wogóle funkcja redirect??
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 449 Pomógł: 4 Dołączył: 1.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Co to znaczy nie działa, jaką masz wersję phpbb? Dobrze używasz funkcji?
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 14:39 |