![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 10.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Mam nastepujacy problem. Po zrobieniu prostego systemu logowania, gdzie hasła są kodowane i zapisywane do pliku (nie do bazy) mam problem. Po zalogowaniu się chciałbym, aby otworzyła się strona np: http://www.jakasstrona.pl , aby znajdowała się w rozpoczetej sesji oraz gdzieś bylo widoczne: wyloguj. Logowanie składa sie z tabeli, gdzie pola sa po prawej stronie(do logowania) a na srodku po zalogowaniu sie potrafie tylko wstawic napis: Zalogowałeś sie ". $user->user () . " poprawnie........itd. Zaznaczam, że php zajmuje sie góra od miesiąca i znam php w samych podstawach, a logowaniem zajalem sie na własne potrzeby. A logowanie wygląda mniej więcej tak:<?
if (!$user->is_logged ()) { echo "<p class=error align=center>Podałeś złe dane. Spróbuj ponownie.</p>"; } else { echo "<p class=ok align=center>". $user->user () . " został zalogowany poprawnie .</p>"; |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 31.07.2003 Ostrzeżenie: (0%) ![]() ![]() |
Hmmm, dobra rada, przejdz z plikow do bazy. latwiejsza obsluga (jak dla mnie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) i bezpieczniejsza wymiana danych. mowisz, ze masz sesje. wiec zaczynamu:
LEGENDA: $user = zmienna loginu w formularzu $pass = zmienna hasla w formularzu $username = zmienna loginu z pliku z haslami $password = zmienna hasla z pliku z haslami (chyba nie musze dodawac ze mozesz zmieniac te zmienne jak chcesz :wink: podalem takie tylko dla przykladu) [php:1:3b7ce10a09] <?php session_start(); $user = $HTTP_POST_VARS['user']; $pass = $HTTP_POST_VARS['pass']; if( $user && $pass ){ // dobrze jest wstawic ten warunek zeby sprawdzic czy jakies wartosci zostaly wogole wpisane. jesli zostaly wpisane to wyciagaj haslo i login z pliku // teraz wyciagasz interesujace Cie dane z pliku z haslami } if( $username == $user && $password == $pass){ session_register('username'); // zalogowane przenosimy do panelu header("Location: dla_zalogowanych.php?ID=".session_id()); } else{ print "access denied"; exit(); } } else{ // miejsce na twoj formularz do logowania } ?> [/php:1:3b7ce10a09] Pozostale uwagi: 1) Plik logout.php powinien wygladac tak: [php:1:3b7ce10a09] session_unregister('username'); session_start(); session_destroy(); [/php:1:3b7ce10a09] 2) Kazda strona, ktora ma byc widzoczna tylko dla zalogowanych uzytkownikow powinna zawierac taka tresc: [php:1:3b7ce10a09] session_start(); if(session_is_registered('username')){ //dalsza czesc strony } else{ print("Uzytkownik nie zalogwany. dostęp zabroniony"); exit(); } [/php:1:3b7ce10a09] Chyba za bardzo nie namieszalem. Jak nie bedzie dzialac to daj znac. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 09:08 |