Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> autentykacja uzytkownika, jaki algorytm
AxZx
post 26.12.2005, 23:20:29
Post #1





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

Ostrzeżenie: (0%)
-----


witam

jest taka sytuacja ze sa w serwisie dzialy gdzie nie zalogowany user nie moze miec dostepu.
czyli sprawdzamy czy jest ustawiona sesja, itp itd

i co dalej?

chcialbym zeby wyswietlil sie formularz rejestrowania jesli nie jest zalogowany, po wypelnieniu go zeby przenosilo na strone ktora wczesniej chcial zobaczyc.

zrobilem cos takiego ze wstawia do formularza logowania ukryta zmienna z adresem skad przyszedl, ale po wywolaniu header przenosi do strony z adresem typu:
Kod
index.php?nav=strona&krok2

zamiast
Kod
index.php?nav=strona&krok2


mimo tego ze wczesniej daje
  1. <?php
  2. $skad = str_replace("&amp;", '&', $skad);
  3. ?>


gdybyscie mieli jakis inny algorytm na takie cos to bardzo chetnie podyskutuje na ten temat:)
albo gdybyscie chcieli mi pomoc przy tym co juz mam.


--------------------
aplikacje internetowe | Symfony
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
DeyV
post 27.12.2005, 20:51:54
Post #2





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Innym, chyba lepszym rozwiązaniem, choć nieco trudniejszym do zaimplementowania jest zrezygnowanie z przekierowywania.

Zamiast tego system rozpoznaje, że użytkownik nie jest zalogowany, i zamiast uruchomienia oczekiwanej akcji (np. wyświetlenia artykułu), uruchamia akcję "logowanie".

Akcja ta powoduje wyświetlanie formularza logowania, jednak jako adres na który ma zostać wysłany formularz, podaje oryginalny adres oczekiwanego artykułu.

Co się dzieje po naciśnięciu przycisku "loguj"? Ponownie zostaje wywołana akcja "artykuł". Użytkownik jednak wciąż nie jest zalogowany, więc ponownie włącza się akcja "logowanie" Akcja ta rozpoznaje, że w POST otrzymała dane użytkownika.
Jeśli są błędne - wyświetla odpowiedni komunikat i znów formularz logowania.

A co jeśli są poprawne?
Są 2 rozwiązania.
1. Wyświetla komunikat, że jesteś zalogowany, i możesz przejść do swojego artykułu, a więc po raz kolejny generuje link do oczekiwanego artykułu.
2. Akcja logowania "wyłącza się" przesyłając do systemu informację, że można już włączyć oczekiwaną akcję, ponieważ wszystkie warunki zostały spełnione.
Dzięki temu użytkownik, odrazu po naciśnięciu przycisku "loguj" widzi oczekiwany artykuł.




A swoją drogą - używanie Refer jest niewskazane - przeglądarka może nie wysłać tej informacji, lub serwer może jej nieprzekazać. Informacja o tym jest w manualu.


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 20:35