Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP]Logowanie - proste!
newmala
post
Post #1





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 17.01.2012

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


Mam nadzieję, że grupa przedszkolaków mi pomoże (IMG:style_emoticons/default/smile.gif) .

Chciałabym na stronce dać możliwość do przejścia dalej tylko wybranej osobie.
Czy dobrze myślę, że można do tego wykorzystać formularz?
  1. <form action="plik.php" method="post">
  2. Logowanie administratora : <br>
  3. LOGIN : <INPUT name="login" type = text size=20 maxlenght="20"><br>
  4. HASŁO : <INPUT name="haslo" type = passward size=20 maxlenght="20">
  5. <INPUT name="loguj" type = submit value = "Zaloguj"> <BR>
  6. </form>


Teraz nie wiem jak zadziałać w plik.php, tak aby na zły login i hasło, zakładam, że to będzie jakiś umówiony ciąg znaków, nie można zobaczyć zawartości tej stronki.
Nie wiem jak się za to zabrać.
Czy jest jakaś funkcja, która przerwie wykonywanie tego plik.php, jeśli umówiony login będzie zły?
Czytałam trochę o sesjach i stworzeniu tabeli dla userów, ale to jeszcze chyba za trudne dla mnie.

Czy moje podejście jest z góry złe?


Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


Rozumiem, że cały czas pracujesz na jednym pliku - w związku z tym za każdym razem musiałabyś się logować by z niego korzystać.

Trzeba dać znać skryptowi, że użytkownik jest już zalogowany by nie musiał logować się za każdym razem.

Jak tego dokonać? - To proste...

Wysyłasz formularz z logowaniem, skrypt sprawdza dane i jeśli uzytkownik podał prawidłowe to ustawia odpowiednią wartość w sesji:

  1.  
  2. if( [...tutaj sprawdzasz dane użytkownika czy są poprawne...])
  3. {
  4. $_SESSION['zalogowany'] = 'tak';
  5.  
  6. } else die('BRAK DOSTĘPU');


Teraz wystarczy że na początku pliku przed formularzem logowania oraz tą częścią sprawdzającą dasz IF'a, który będzie sprawdzał czy ta zmienna istnieje:

  1. if(!isset($_SESSION['zalogowany'])) // jeśli nie ma zmiennej - to znaczy user niezalogowany
  2. {
  3. if(isset($_POST['login'])) // jeśli user wysłał formularz...
  4. {
  5. // sprawdzamy dane podane przez usera i ustawiamy $_SESSION['zalogowany'] jeśli podał poprawne
  6. }
  7. else // jeśli nie loguje się w danej chwili wyświetlamy formularz
  8. {
  9. // kod formularza
  10. die; // kończymy srkypt bo user nie ma prawa zobaczyc co jest dalej
  11. }
  12. }
  13.  
  14. // tutaj kod dla zalogowanego uzytkownika


Sesja przechowa nam dane czy użytkownik jest zalogowany (działa dla pojedynczego użytkownika) (IMG:style_emoticons/default/wink.gif)

HTH (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 27.12.2025 - 23:30