Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Gra internetowa - (logowanie, rejestracja)
Forum PHP.pl > Forum > Przedszkole
Thymson
Witam, mam problem w logowaniu w mojej grze internetowej :
index.php
  1. <? include("head.php"); ?>
  2. <form method="post" action="login.php">
  3. <input type="text" name="email" value="Wpisz E-mail" /><br />
  4. <input type="password" name="pass" value="Wpisz Hasło" /><br />
  5. <input type="submit" value="Wejdź" />
  6. </form>

login.php
  1. <?php
  2.  
  3. if (!$email || !$pass) {
  4. include("head.php");
  5. print "Wypełnij pole z hasłem!";
  6. }
  7.  
  8. include("head.php");
  9.  
  10. $logres = mysql_num_rows(mysql_query("select * from players where email='$email' and pass='$pass'"));
  11.  
  12. if ($logres <= 0) {
  13. print "Logowanie nieudane. Sprawdź pisownie loginu oraz hasła.";
  14. } else {
  15. session_register("email");
  16. print "&nbsp;<br>Logowanie Udane ! Kliknij <a href=gra.php>tu</a> aby kontynuować...";
  17. }
  18. ?>

head.php
  1. <?php include("config.php"); session_start(); ?>

Problem - kiedy chcę się zalogować, nie ważne co wpiszę, to pokazuje mi się "Logowanie udane..." i mogę wchodzić do gry.
Puciek
Przedewszystkim proponowałbym użycie następującej formy, zamiast
  1. <?php
  2. $logres = mysql_num_rows(mysql_query("select * from players where email='$email' and pass='$pass'"));
  3. ?>
uzyj
  1. <?php
  2. $logres = mysql_num_rows(mysql_query('select * from players where email=`'.$email.'` and pass=`'.$pass.'`') );
  3. ?>
Dalej warunek
  1. <?php
  2. if ($logres <= 0)
  3. ?>
jest dla mnie nie logiczny, sprobuj
  1. <?php
  2. if ($logres == 0)
  3. ?>
poniewaz num_rows nie zwroci wyniku mniejszego niz 0.

Teraz co do sesji, uzyj na poczatku session_start" title="Zobacz w manualu PHP" target="_manual, i potem uzywaj tabelicy $_SESSION, zamiast za kazdym razem rejestrowac sesje.

Po tych poprawkach wyświetl poprostu zapytanie i wykonaj je bezposrednio w mysqlu i sprawdz czy zwroci poprawny wynik.
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.