Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]$_SESSION - pytanie
Forum PHP.pl > Forum > Przedszkole
sebas211
Witam! Mam pytanie odnośnie poniższego skryptu logowania. PHP zajmuję się dopiero od 3 dni. Pytania moje dotyczą odpowiednio fragmentów, które zaznaczyłem w kodzie:

1. Wydaje mi się, że tutaj przypisujemy id więc czemu w 2 też przypisujemy id?
2. Dlaczego w tablicy jest user_id, a nie samo id, czemu linijkę niżej jest samo login?

Z góry dziękuje za odpowiedzi i pozdrawiam.

  1. <?php
  2.  
  3.  
  4. if (isset($_POST['konto']) and isset($_POST['password']) )
  5.  
  6. {
  7.  
  8. require('conn.php');
  9.  
  10. $konto=mysql_real_escape_string(trim($_POST['konto']));
  11.  
  12. $password=mysql_real_escape_string(trim($_POST['password']));
  13.  
  14. if ($konto!="" and $password!="")
  15.  
  16. {
  17.  
  18. $password = sha1(md5($password));
  19.  
  20. $zapytanie="SELECT id FROM user WHERE login='$konto' and password ='$password'";
  21.  
  22. $temp=mysql_query($zapytanie) or die("Wystąpił błąd");
  23.  
  24. $ile=mysql_num_rows($temp);
  25.  
  26. $temp=mysql_fetch_array($temp);
  27.  
  28. $id=$temp['id']; // 1
  29.  
  30.  
  31.  
  32. if ($ile==1)
  33.  
  34. {
  35.  
  36. $_SESSION['user_id']=$id; // 2
  37.  
  38. $_SESSION['login']=$konto;
  39.  
  40. echo('Zostales zalogowany. ');
  41.  
  42. }
  43.  
  44. else echo ('Podales zle dane. Kliknij wstecz aby sprobowac ponownie.');
  45.  
  46. }
  47.  
  48. }
  49.  
  50. else{
  51.  
  52. ?>
  53.  
  54. NIŻEJ FORMULARZ LOGOWANIA
thek
Ponieważ $login oraz $id, to nie to samo co $_SESSION['login'] i $_SESSION['user_id'] smile.gif Raz jest to zmienna lokalna dla skryptu, a raz zmienna sesyjna, która może być widoczna pomiędzy różnymi skryptami tak długo, jak długo sesja będzie aktywna na serwerze. Bardziej obrazowo. To jak piłka i jojo smile.gif Gdy piłkę wyrzucasz z ręki (skrypt się kończy) to normalna zmienna zniknie na zawsze. Tymczasem zmienna sesyjna, czyli jojo, jest na sznurku, więc zawsze możesz ją bez ruszania się z miejsca łatwo z powrotem wziąć do ręki nawet jeśli pobiegniesz w dowolna stronę, bo jest na uwięzi.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.