![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 15.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam poblem z prostym logowaniem i nie wiem gdzie leży przyczyna. Generalnie skrypt łączy się z bazą użytkownik i hasło (hasło w bazie oczywiście kodowane md5) jest poprawne ale nie przechodzi od strony main.php
index.php
main.php
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
-------------------- Nie pomagam na pw, tylko forum.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 15.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
dzięki, działa
zdaje sobie sprawę że ten system logowania nie jest najlepszy ale czy można go jakoś przerobić żeby "rozróżniał użytkowników" tzn że jak wpisze innego użytkownika (istniejącego w bazie) to przekieruje go na inną stronę a nie tylko main.php |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Wszystko da radę, zacznij od przeprojektowania bazy, tak żeby mieć w tabeli users pole role (uprawnienie). I ustal sobie że admin ma role=0, user ma role=1 ktoś jeszcze niżej role=2 itd. Przy sprawdzaniu loginu i hasła wyciągnij sobie poziom uprawnień i wstaw chociażby w switch i case, gdziesz będzie "inkludował" odpowiednią stronę dla danych uprawnień. To oczywiście będzie działać, ale eleganckie, wydajne, elastyczne i superbezpieczne nie jest.
Acha! I obowiązkowo jeśli już zweryfikujesz usera, że to ten, za którego się podaje, to zapisz jego id i poziom uprawnień w sesji, żeby móc pominąć sprawdzanie loginu i hasła na każdej kolejnej podstronie którą mu udostępnisz. ps. zrób przynajmniej podstawową walidację danych przysłanych z formularza, poczytaj o htmlspecialchars, strip_tags, htmlentities albo korzystaj z PDO, preparuj i binduj zapytania przed wykonaniem. Pozdrawiam i powodzenia w pisaniu! Ten post edytował darko 25.11.2009, 00:47:19 -------------------- Nie pomagam na pw, tylko forum.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 15.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
zrobiłem coś takiego
po zalogowaniu jako użytkownik z upr=0 jest ok, ale przy użytkowniku z upr 1 przechodzi na admin.php ale wyskakuje komunikat z błędem sesji plik admin.php
Ten post edytował Lukasz_mk2 25.11.2009, 00:51:40 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Popracuj nad tym
$uzytkownik=$_POST['uzytkownik']; wystarczy w formularzu logowania wpisać w pole user coś takiego: ' or 1=1 /* i jesteś zalogowany -------------------- Nie pomagam na pw, tylko forum.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 08:51 |