Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql] proszę o sprawdzenie logowania, sesje, "prawie" działa
em-ba
post
Post #1





Grupa: Zarejestrowani
Postów: 202
Pomógł: 3
Dołączył: 6.01.2008
Skąd: Mazowieckie

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


Witam, mam taki skrypt logowania, który przełącza mnie na odpowiednią stronę w zależności kto ma jąką rangę. Jeżeli loguje się według login/hasło na strona1.php to jest ok - wyświetla mi "Witaj.. login". Problem jest w tym, że jak się loguje na strona2 i strona3 ..to już się nie wyświetla "Witaj.. login" ..nie wiem o co chodzi, gdyż strony posiadają takie same skrypty (strona1, 2, 3.php)

Poza tym jeżeli wpiszę błędne hasło to zostaję przełączany na stronę i tam ..zostałeś zalogowany jako abc. Nie powinno się tak robić ponieważ nie mam takiego "byle jakiego" użytkownika w bazie. ..strona na którą mnie przełącza jest pusta - tylko z tą inf, ze zostałem zalogowany i "wyloguj"

Czy Ktoś może wie o co chodzi?

skrypt logowania:
  1. <?php
  2.  
  3. mysql_connect ('localhost', 'root', 'krasnal') or die ("nie udało sie połączyć");
  4. mysql_select_db('fi_kur') or die ("Nie mozna zlokalizowac bazy danych");
  5.  
  6.  
  7. $login = trim($_POST['login']);
  8. $haslo = trim($_POST['haslo']);
  9. $loguj = "SELECT `login`,`haslo`,`ranga` FROM `uzytkownicy` WHERE login='".$login."' and haslo='".$haslo."'";
  10. $rekordy = mysql_query($loguj);
  11. if(mysql_num_rows($rekordy)==1)
  12. {
  13.  echo' Podany login i haslo jest błędne';
  14.  exit;
  15. }
  16. else
  17. {
  18.  
  19.  $_SESSION['zalogowany'] = $_POST['login'];
  20.  echo "Zalogowany jako ".$_SESSION['zalogowany']."<br /><a href='index.php?log=wyloguj'>wyloguj</a>";
  21.  
  22.  $pobierz = "SELECT `ranga` FROM `uzytkownicy` WHERE login='".$login."'";
  23.  
  24.  $zrob=mysql_query($pobierz) or die(mysql_error());
  25.  while($pokaz=mysql_fetch_array($zrob)){
  26. print '<br />Twoja ranga to: '.$pokaz[0].'';
  27. if($pokaz['ranga'] == 'uzytkownik') {
  28. header('location: strona1.php');
  29. }
  30.  
  31. if($pokaz['ranga'] == 'pracownik') {
  32. header('location: strona2.php');
  33. }
  34.  
  35. if($pokaz['ranga'] == 'vip') {
  36. header('location: strona3.php');
  37. }
  38.  }
  39.  
  40. }
  41. ?>

strona1.php
  1. <?php
  2.  
  3.  
  4. if($_SESSION['zalogowany'] == 0)
  5. {
  6.  echo "Witaj.. <strong>".$_SESSION['zalogowany']."</strong><br> <a href='index.php?log=wyloguj'>[wyloguj]</a><br>";
  7.  $intTimeoutSeconds = 600; //wartosc podana w sekundach czyli zostane wylogowany po 10 minutach jezeli nie by
    lem aktywny
  8.  
  9.  if(isset($_SESSION['intLastRefreshTime']))
  10.  {
  11. if(($_SESSION['intLastRefreshTime']+$intTimeoutSeconds)<time())
  12. {
  13.  session_destroy(); // kasuje sesje
  14.  echo "strona wygasła, <a href='index.php'>[zaloguj ponownie]</a>";
  15. }
  16.  }
  17.  $_SESSION['intLastRefreshTime'] = time();
  18. }
  19.  
  20. if ($_GET['log'] == "wyloguj") {
  21.  session_destroy(); // kasuje sesje
  22.  header('location: index.php');
  23. }
  24.  
  25. ?>


Ten post edytował em-ba 26.03.2008, 11:03:51
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: 23.08.2025 - 01:17