Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]Logowanie/Wylogowywanie Sesja - problem.
krzysnick
post 1.09.2009, 19:00:33
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 1.09.2009

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


Witam,

Od kilku dni próbuję zrobić prosty skrypt logowania/wylogowywania za pomocą sesji PHP. Czytałem różne tutoriale, poradniki i niestety nie udało mi się... Oto fragmenty kodu:

Plik index.php <strona na której umiescilem formularz do logowania>
  1. <?
  2. if (!isset($_SESSION["zalogowany"]))$_SESSION["zalogowany"]=0; //zmienna "zalogowany" 0-niezalogowany/1-zalogowany
  3. if ($_SESSION["zalogowany"] == 0) {$access=false;} else {$access=true;} //zmienna access True-dostep do wszystkich stron
  4. if ($access==true) {
  5. echo "Witaj";
  6. echo "<a href=login.php?action=logout>Wyloguj</a>} else {tutaj kod formularza - odsyla do login.php} }
  7. ?>

Plik login.php:
  1. <?
  2. if ($_POST['action']=="login"){ //W formularzu jest zmienna action o wartosci login
  3. $_SESSION['zalogowany'] =1;
  4. $_SESSION['login'] = $_POST['login'];
  5. echo "Jesteś zalogowany.";
  6. header("Location: index.php");}
  7.  
  8.  
  9. if ($_GET['action']=="logout"){ //login.php?action=logout
  10. echo "Zostales wylogowany";
  11. header("Location: index.php");}
  12.  
  13. ?>

Jeśli chodzi o PHP to jestem początkujący (2 dni praktyki to za mało żeby wiedzieć wszystko tongue.gif). Mam nadzieję, że ktoś będzie w stanie rozwiązać mój problem lub chociaż podpowiedzieć co zmienić.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
patryczakowy
post 1.09.2009, 19:20:35
Post #2





Grupa: Zarejestrowani
Postów: 420
Pomógł: 44
Dołączył: 22.10.2008

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


w pliku login.php też musi być session_start();


--------------------
Sztuką jest widzieć to czego nie widać.
Go to the top of the page
+Quote Post
Skie
post 1.09.2009, 19:30:33
Post #3





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

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


Tak jak wspomniał przedmówca - brakuje session_start

Lekki Offtop:
Poza tym radziłbym Ci do każdego (prawie) pliku php na swojej stronie dodać na początku np.:

  1. require_once(plik);


Gdzie plik byłoby ścieżką do pliku PHP zawierającego główne "sterowniki" strony - takie jak np. session_start(), łączenie z bazą danych, systemy szablonów itd.
To Ci ułatwi pracę z taką stroną gdy będziesz chciał coś zmienić :-)

Ten post edytował Skie 1.09.2009, 19:30:49


--------------------
Wieloprocesowość i wielowątkowość w PHP, poznaj Kraken PHP!
Serwer HTTP i WebSocket w PHP | Promise/A+
Strona Domowa | Elradia MMORPG
FireFox: make the web better.
Go to the top of the page
+Quote Post
krzysnick
post 1.09.2009, 19:40:29
Post #4





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 1.09.2009

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


Dziękuję za pomoc! Teraz wszystko działa! smile.gif I dzięki za radę Skie tongue.gif.
Go to the top of the page
+Quote Post

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 - 05:03