[MySQL][PHP] problem z zabezpieczeniem logowania |
[MySQL][PHP] problem z zabezpieczeniem logowania |
11.01.2011, 17:37:35
Post
#1
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 10.10.2010 Ostrzeżenie: (0%) |
Mam takie pytanie. Zrobiłem jak umiałem w php/sql stronę logowaniem i rejestracją użytkowników. Mam na przykład do systemu logowania 3 osobne pliki (main_login z formularzem, checklogin do sprawdzania danych, oraz login_success to stronka na którą jestem przekierowywany jak sie poprawnie zaloguje). Wszystko pięknie tylko zapomniałem o jednym:) Jak wpisze w pasku adresu bezpośrenio link do stronki login_success, który mam na serwerze to jestem zalogowany. Tak nie może być
I jeszcze jedno. czy da się jakoś razem połączyć formularz z wpisywaniem danych i wysyłaniem plików na serwer. Chodzi mi o to, żeby za pomocą jednego przycisku były przesyłane zarówno pliki jak i dane z formularza: Formularz uploadu: Formularz do wpisywania danych: dzieki z góry za pomoc |
|
|
11.01.2011, 17:51:06
Post
#2
|
|
Grupa: Zarejestrowani Postów: 395 Pomógł: 80 Dołączył: 24.08.2009 Ostrzeżenie: (0%) |
Skoro przechodząc do strony login_success jesteś zalogowany to znaczy że na stronie nie jest sprawdzane czy użytkownik jest zalogowany, możesz to rozwiązać dodając do sesji informacje, na przykład login, zalogowanego użytkownika, gdy w sesji nie będzie informacji o loginie to znaczy że użytkownik nie jest zalogowany i powinien został przekierowany do strony logowania/rejestracji.
Dane wpisywane i ładowanie plików mozna połączyć w jeden formularz. -------------------- |
|
|
11.01.2011, 17:58:12
Post
#3
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 39 Dołączył: 7.11.2010 Skąd: Raz tu, raz tam Ostrzeżenie: (30%) |
Rozumiem ze formularz wysylasz przez POST wiec na stronie gdzie sprawdza dane daj
Sprawdzaj tez czy formularz pusty - empty i filtruj dane i podobnie na stronie gdzie zalogowano poprawnie to sprawdzaj czy ktos jest zalogowany, co do plikow i tejstu to input type="file" dodaj normalie do formularza -------------------- |
|
|
11.01.2011, 19:28:02
Post
#4
|
|
Grupa: Zarejestrowani Postów: 224 Pomógł: 3 Dołączył: 24.12.2010 Ostrzeżenie: (0%) |
Sorki, że się czepiam, ale te logowanie zrobiłeś trochę bezsensu... po co aż trzy pliki na to?
Wystarczy jeden przeznaczyć na logowanie... gdzieś widziałem niezły tutorial... Jak znajdę to ci wyślę linka... |
|
|
11.01.2011, 20:12:47
Post
#5
|
|
Grupa: Zarejestrowani Postów: 111 Pomógł: 10 Dołączył: 16.07.2009 Skąd: Toruń Ostrzeżenie: (0%) |
W checklogin, jeśli zalogowano pomyślnie, dajesz np.
W login_success dajesz na początku: Ten post edytował benio101 11.01.2011, 20:14:05 |
|
|
12.01.2011, 20:46:23
Post
#6
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 10.10.2010 Ostrzeżenie: (0%) |
dzięki, działa już nawet, jak ktoś otwiera bezpośrednio login_succes to wyskakuje "Precz, oszuście",
tylko teraz znowu jak jestem już na stronie login_success, wystarczy że odświeżę stronę to mi wyskakuje mi również ""Precz, oszuście". Tak chyba nie może być. Powinienem nadal pozostać na login_success. |
|
|
12.01.2011, 20:52:27
Post
#7
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 39 Dołączył: 7.11.2010 Skąd: Raz tu, raz tam Ostrzeżenie: (30%) |
Jednym slowem, namieszales. Cos gdzies zle sprawdzasz
-------------------- |
|
|
12.01.2011, 22:14:15
Post
#8
|
|
Grupa: Zarejestrowani Postów: 111 Pomógł: 10 Dołączył: 16.07.2009 Skąd: Toruń Ostrzeżenie: (0%) |
OK. To pierwszy krok za nami. Oczywiście, jak zacząłem, to dokończę robotę, tj. pomogę Ci, aż będzie dobrze.
Myślałem, że chodzi Ci o jednorazowy dostęp do strony login_success i że na niej ustawiasz parametr, że zalogowano. W takim razie nie usuwaj sesji po jednokrotnym zalogowaniu: Zamiast daj Wtedy po zalogowaniu, tak długo login_succes będzie się pokazywać , aż nie wygaśnie sesja, czyli Użytkownik nie wyłączy przeglądarki, dostępu do komputera ani samego komputera. Gdy sesja wygaśnie, np. właśnie poprzez zamknięcie przeglądarki, to będzie on musiał się ponownie zalogować. Przy wylogowywaniu dodaj Wtedy wszystko będzie gitas. Następny krok, to zamiast dawać komunikat Precz oszuście, przekieruj na stronę logowania z informacją, że sesja wygasła i prosisz o ponowne zalogowanie się, gdyż jeśli Użytkownikowi wygaśnie sesja, np. na chwilę wyłączą prąd, to dostanie komunikat "Precz oszuście" i może się zniechęcić, a nie będzie wiedział dlaczego, bo się na tym po prostu nie zna. Dlatego myślę, że o wiele lepiej jest dać przekierowanie na stronę logowania z informacją o konieczności ponownego zalogowania się. Tak na marginesie: To precz oszuście podałem jako przykład, nie najlepszy, lepiej właśnie przekierować na stronę logowania z notką, dlaczego każesz się ponownie logować. Np.: checklogin: mainlogin: Dodajesz gdzieś kod o treści: który poinformuje Użytkownika o tym, że ma się ponownie zalogować. Oczywiście treść możesz zmienić, sformatować i dodać, gdzie zechcesz. Jeśli masz jeszcze jakieś pytania, to postaram Ci odpowiedzieć, jeśli źle Cię zrozumiałem, opisz dokładniej. Obiecuję, że postaram się pomóc. Ten post edytował benio101 12.01.2011, 22:19:21 |
|
|
13.01.2011, 11:23:58
Post
#9
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 10.10.2010 Ostrzeżenie: (0%) |
dzieki wielkie za pomoc, teraz działa wszystko gites. A komunikat zamierzałem zmienić
|
|
|
13.01.2011, 18:07:30
Post
#10
|
|
Grupa: Zarejestrowani Postów: 111 Pomógł: 10 Dołączył: 16.07.2009 Skąd: Toruń Ostrzeżenie: (0%) |
No, to się bardzo cieszę
|
|
|
Wersja Lo-Fi | Aktualny czas: 10.05.2024 - 09:28 |