Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][MySQL][PHP]Skrypt rejestracji i problem z "nieprawidłowe przekierowanie"
Th0e
post 6.11.2014, 16:22:07
Post #1





Grupa: Zarejestrowani
Postów: 122
Pomógł: 0
Dołączył: 16.09.2012

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


Witam. Oto mój skrypt rejestracji:

  1. <?php
  2. require("connect.php");
  3.  
  4. if(!empty($_POST['nick']) && !empty($_POST['pseudo']) && !empty($_POST['haslo']) && !empty($_POST['haslo2']))
  5. {
  6. $nick = mysqli_real_escape_string($_POST['nick']);
  7. $pseudo = mysqli_real_escape_string($_POST['pseudo']);
  8. $haslo = mysqli_real_escape_string($_POST['haslo']);
  9. $haslo2 = mysqli_real_escape_string($_POST['haslo2']);
  10.  
  11. if(strlen($nick)>6 && strlen($pseudo)>6 && strlen($haslo)>6)
  12. {
  13. if($haslo == $haslo2)
  14. {
  15. $check = mysqli_fetch_array(mysqli_query($connect, "SELECT * FROM `gracze` WHERE '$nick'=`nick` OR '$pseudo'=`pseudo`"));
  16. if(empty($check['id']))
  17. {
  18. mysqli_query($connect, "INSERT INTO `gracze` (nick, pseudo, haslo, sila, zrecznosc, witalnosc, lvl, exp, weapon, armor) VALUES ('$nick', '$pseudo', '$haslo', '1', '1', '0', '1', '0', '0', '0')");
  19. header("Location: ?show=rejestracja&regdone");
  20. }
  21. else
  22. {
  23. header("Location: ?show=rejestracja&regerror=4"); //Ktoś już posiada dany nick lub pseudonim
  24. }
  25. }
  26. else
  27. {
  28. header("Location: ?show=rejestracja&regerror=3"); //podane hasła są od siebie różne
  29. }
  30. }
  31. else
  32. {
  33. header("Location: ?show=rejestracja&regerror=2"); //nick, pseudonim i hasło musi mieć powyżej 6 znakow
  34. }
  35. }
  36. else
  37. {
  38. header("Location: ?show=rejestracja&regerror=1"); //jakieś pole w formularzu jest puste
  39. }
  40. ?>


Formularz:
  1. echo'<center><br /><br /><form method="POST" action="rejestracja.php"><input type="text" placeholder="Nick" size="32" name="nick"><br /><br /><input type="text" placeholder="Pseudonim w grze" size="32" name="pseudo"><br /><br /><input type="password" placeholder="Hasło" size="32" name="haslo"><br /><br /><input type="password" placeholder="Powtórz hasło" size="32" name="haslo2"><br /><br /><input type="submit" value="" id="zarejestruj"></form></center>';?>


Problem polega na tym że nie da się zarejestrować, a mianowicie zawsze łączy nas z "?show=rejestracja&regerror=1" i wyskakuje komunikat:

"Nieprawidłowe przekierowanie

Firefox wykrył, że serwer przekierowuje żądanie tego zasobu w sposób uniemożliwiający jego ukończenie.

Problem ten może się pojawić w wyniku zablokowania lub odrzucenia ciasteczek."

Na operze wyskakuje biała strona, a adres jest taki sam jak powyżej. Próbowałem bez filtrowania danych (mysqli_real_escape_string), ale to w niczym nie pomogło. Jeśli chodzi o połączenie z bazą danych to jest sprawne.

Pozdrawiam i dziękuję za zainteresowanie smile.gif
Go to the top of the page
+Quote Post
nospor
post 6.11.2014, 17:10:19
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Problemy:
jak masz jakis blad to robisz przekierowanie z errorem. No i niestety, przekierowanie z errorem generuje kolejne przekierowania, bo dales durnego ELSE na robienie przekierowania dla tego
if(!empty($_POST['nick']) && !empty($_POST['pseudo']) && !empty($_POST['haslo']) && !empty($_POST['haslo2']))
a robiac przekierowanie rzecz jasna, ze to nie jest wypelnione wiec wchodzi w ELSE i robi przekierowanie i tak w kołko. NIc wiec dziwnego ze ci sie zapetla.

A teraz pytanie czemu w ogole ci wchodzi za pierwszym razem w error. No musisz po kolei sprawdzic co nie jest spelnione. Sprawdzenie dwoch zmiennych na skrzyz to naprawde taki problem ze trzeba leciec na forum questionmark.gif


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

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: 14.07.2025 - 04:09