Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> coś nie tak z tą... sesją :(
bronx
post 15.10.2004, 00:22:04
Post #1





Grupa: Zarejestrowani
Postów: 333
Pomógł: 0
Dołączył: 4.03.2004

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


witam

wiem, że temat wałkowany był kilka razy ale nie moge sobie z tym poradzić, może ktoś pomoże:

zwykły formularz do logowania z dwoma polami: login i hasło

admin.php:

  1. <?php
  2.  
  3. require(&#092;"loginy.php\"); 
  4.  
  5.  
  6. $login = $_POST[login]; 
  7. $haslo = $_POST[haslo];
  8.  
  9.  
  10. if(isset($users[$login]) AND $users[$login]==$haslo){
  11.  
  12. echo &#092;"zalogowany<br><br><a href=\"dodaj_newsa.php\">dodaj newsa</a>\";
  13.  
  14. } 
  15. else{ 
  16.  
  17. echo &#092;"nie zalogowany\";
  18. }
  19. ?>



dodaj_newsa.php:

  1. <?php
  2.  
  3. require(&#092;"loginy.php\"); 
  4.  
  5.  
  6. if(isset($users[$login]) AND $users[$login]==$haslo){
  7.  
  8. echo &#092;"formularz donewsów\";
  9. }
  10. else
  11. {
  12. echo &#092;"nie zalogowany\";
  13. }
  14. ?>


czemu na dodaj_newsa.php zawsze wyświetla mi nie zalogowany ? co jest nie tak z tym questionmark.gif

pozdrawiam
Go to the top of the page
+Quote Post
revyag
post 15.10.2004, 07:16:35
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

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


Najpierw dodaj cudzysłowy:
  1. <?php
  2. $login = $_POST[&#092;"login\"];
  3. $haslo = $_POST[&#092;"haslo\"];
  4. ?>

Poza tym dlaczego w $users[$login] masz hasło ?
No i zmienna sesyjne musisz przekazać do następnej strony przez link:
  1. echo('<a href=\"dodaj_newsa.php?<?php echo SID?>\">dodaj newsa</a>');


--------------------
-------------

------
Go to the top of the page
+Quote Post
bronx
post 16.10.2004, 17:34:26
Post #3





Grupa: Zarejestrowani
Postów: 333
Pomógł: 0
Dołączył: 4.03.2004

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


zrobiłem to tak i..... NIE DZIAŁA sad.gif

admin.php
  1. <?php 
  2. require(&#092;"loginy.php\"); 
  3.  
  4. $login = $_POST[&#092;"login\"]; 
  5. $haslo = $_POST[&#092;"haslo\"];
  6.  
  7.  
  8. if(isset($users[$login]) AND $users[$login]==$haslo){
  9.  
  10. echo &#092;"<INPUT TYPE=button VALUE=\"Dodaj Newsa\" onClick=\"parent.location.href='dodaj_newsa.php?echo SID'\" style=\"width:400px;\" class=s><br><br>\";
  11. }
  12.  
  13. else
  14. {
  15. echo &#092;"nie zalogowany\";
  16. }
  17.  
  18. ?>


dodaj_newsa.php
  1. <?php 
  2. require(&#092;"loginy.php\"); 
  3.  
  4.  
  5. if(isset($users[$login]) AND $users[$login]==$haslo){
  6.  
  7. echo &#092;"formularz do newsów\";
  8. }
  9. else
  10. {
  11. echo &#092;"nie zalogowany\";
  12. }
  13.  
  14. ?>


pomoże ktoś ? - zawsze jest NIE ZALOGOWANY

Ten post edytował bronx 16.10.2004, 17:35:10
Go to the top of the page
+Quote Post
shpyo
post 16.10.2004, 18:15:10
Post #4





Grupa: Zarejestrowani
Postów: 574
Pomógł: 2
Dołączył: 13.04.2004
Skąd: Lublin

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


  1. <?php
  2.  
  3.  
  4. //teraz sesja jest zarejestrowana...
  5. $_SESSION['login'] = $_POST['login'];
  6. $_SESSION['haslo'] = $_POST['haslo'];
  7.  
  8. //teraz aby sprawdzić czy jesteś zalogowany wystarczy coś takiego:
  9.  
  10. if ( isset ($_SESSION[id]) && isset ($_SESSION['haslo']) )
  11. {
  12.  //dla zalogowanego...
  13. }
  14. else
  15. {
  16.  echo 'nie jestes zalogowany';
  17. }
  18.  
  19. ?>


to jest tylko przykład, tak w IFie drugi warunek jest opcjonalny. Natomiast u Ciebie jesteś cały czas niezalogowany bo (prawdopodobnie, a nawet na 100%) nie ma takiej zmiennej jak: $users[].

pozdr,
shpyo


--------------------
Go to the top of the page
+Quote Post
bronx
post 16.10.2004, 19:40:54
Post #5





Grupa: Zarejestrowani
Postów: 333
Pomógł: 0
Dołączył: 4.03.2004

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


plik z hasłami wygląda tak:

  1. <?php
  2. $users['bronx'] = 'haseleczko';
  3. $users['test'] = 'test';
  4. $users['janek'] = 'pestka';
  5. ?>


i może mi ktoś powiedzieć jak dokładnie ma wygladać plik admin.php oraz co wklejać na pozostałych (takich jak dodaj_newsa.php) questionmark.gif

Ten post edytował bronx 16.10.2004, 19:58:10
Go to the top of the page
+Quote Post
shpyo
post 16.10.2004, 21:06:01
Post #6





Grupa: Zarejestrowani
Postów: 574
Pomógł: 2
Dołączył: 13.04.2004
Skąd: Lublin

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


1. w admin.php session_start(); daje się na samym początku

admin.php
  1. <?php
  2. require_once(&#092;"loginy.php\");
  3.  
  4. $_SESSION['login'] = $_POST['login'];
  5. $_SESSION['haslo'] = $_POST['haslo'];
  6.  
  7. if( isset( $users[ $_SESSION[ 'login' ] ] ) AND $users[ $_SESSION[ 'login' ] ] == $_SESSION[ 'haslo' ] )
  8. {
  9. // ... dla zalogowanego, tu wstawiasz to co chcesz
  10. }
  11.  
  12. else
  13. {
  14. echo &#092;"nie zalogowany\";
  15. }
  16.  
  17. ?>


dodaj_newsa.php :

  1. <?php
  2. require_once(&#092;"loginy.php\");
  3.  
  4. if( isset( $users[ $_SESSION[ 'login' ] ] ) AND $users[ $_SESSION[ 'login' ] ] == $_SESSION[ 'haslo' ] )
  5. {
  6. echo &#092;"formularz do newsów\";
  7. }
  8. else
  9. {
  10. echo &#092;"nie zalogowany\";
  11. }
  12.  
  13. ?>


powinno być ok, teraz powinieneś sobie poradzić ;-)

Ten post edytował shpyo 16.10.2004, 21:09:05


--------------------
Go to the top of the page
+Quote Post
bronx
post 27.10.2004, 21:18:49
Post #7





Grupa: Zarejestrowani
Postów: 333
Pomógł: 0
Dołączył: 4.03.2004

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


a nie powinno gdzieś tutaj być session_register questionmark.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: 12.06.2025 - 10:48