Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Logowanie sesje
Forum PHP.pl > Forum > Przedszkole
Neon12345
Witam otóż mam problem. Mianowicie gracze nie zalogowani mogą wejść do gry . Automatycznie loguje kogoś na byle jakie konto czy też na żadne bez nicku

  1. <?php
  2. include('baza.php');
  3. $user = $_SESSION['zalogowany'];
  4. $mojeid = mysql_fetch_assoc(mysql_query("SELECT id FROM users WHERE user='$user' "));
  5. $userid = $mojeid['id'];
  6. $dane = mysql_query("SELECT * FROM users WHERE user='$user'");
  7.  
  8. $czas_teraz = mktime();
  9. mysql_query("UPDATE users SET ost='".$czas_teraz."' WHERE user='".$user."'") or die (mysql_error());
  10. if ($_SESSION['ost'] + 30 < $czas_teraz) {
  11. $czas_wczesniej = $czas_teraz - 30;
  12. $q1 = mysql_query("SELECT id FROM users WHERE ost>='".$czas_wczesniej."'") or die (mysql_error());
  13. $_SESSION['zalogowanych'] = mysql_num_rows($q1);
  14. $_SESSION['ost'] = $czas_teraz;
  15. }
  16.  
  17.  
  18. ?>


Posiadam coś takiego . Czego tu brakuje
luck
Sesja startuje automatycznie? Jeśli nie dodaj session_start() u góry. Co zwraca print_r($user)?
Neon12345
Niestety gdy to dodaje wywala mi

  1. Parse error: syntax error, unexpected T_VARIABLE in /home/handball/public_html/start.php on line 5


czyli
  1. $user = $_SESSION['zalogowany'];
luck
Wklej całość, bo pewnie gdzieś zapomniałeś postawić średnika.
Neon12345
Rzeczywiście nei dałem średnika ale normalnie dalej idzie

www.handball-manager.pl/start.php

  1. <?php
  2. include('baza.php');
  3. $user = $_SESSION['zalogowany'];
  4. $mojeid = mysql_fetch_assoc(mysql_query("SELECT id FROM users WHERE user='$user' "));
  5. $userid = $mojeid['id'];
  6. $dane = mysql_query("SELECT * FROM users WHERE user='$user'");
  7.  
  8. $czas_teraz = mktime();
  9. mysql_query("UPDATE users SET ost='".$czas_teraz."' WHERE user='".$user."'") or die (mysql_error());
  10. if ($_SESSION['ost'] + 30 < $czas_teraz) {
  11. $czas_wczesniej = $czas_teraz - 30;
  12. $q1 = mysql_query("SELECT id FROM users WHERE ost>='".$czas_wczesniej."'") or die (mysql_error());
  13. $_SESSION['zalogowanych'] = mysql_num_rows($q1);
  14. $_SESSION['ost'] = $czas_teraz;
  15. }
  16.  
  17. ?>
luck
Prosiłem, żebyś zrobił jeszcze
  1. print_r($user);
Neon12345
Dodałem nadal nic .
luck
Boże... Wiesz do czego służy print_r? Powiem tak: jeśli print_r nic Ci nie wyświetla to znaczy, że nie zapisałeś ID usera do sesji. Masz puste ID. Szukaj błędu tam, gdzie pierwszy raz je ustawiasz, przed zapisaniem do sesji.
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.