Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kolejność wykonywania zadań
Forum PHP.pl > Forum > Przedszkole
Vme
Mam taki skrypt rejestracji, który dodane nowe rekordy do bazy, oraz sprawdza czy takie nie istnieją, jak instnieją to wyświetla komunikat...

Mój kod:

  1. <?php
  2. // łaczymy sie z baza danych
  3. mysql_connect("localhost", "root", "krasnal") or die (mysql_error());
  4. mysql_select_db("register") or die (mysql_error());
  5.  
  6.  
  7. // jezeli istnieja zmienne superglobalne nick i haslo
  8. if ( isset ( $_POST['nick'] ) && isset ( $_POST['haslo'] ))
  9.  
  10. {
  11.  
  12. if (empty ($_POST['imie']))
  13.  
  14. {
  15. $empty .= 'Pole "imię" nie zostało wypełnione.<br />';
  16.  
  17. }
  18.  
  19. if (empty ($_POST['nick']))
  20.  
  21. {
  22. $empty .= 'Pole "nick" nie zostało wypełnione.<br />';
  23.  
  24. }
  25.  
  26. if (empty ($_POST['haslo']))
  27.  
  28. {
  29. $empty .= 'Pole "hasło" nie zostało wypełnione.<br />';
  30.  
  31. }
  32. if (empty ($_POST['email']))
  33.  
  34. {
  35. $empty .= 'Pole "e-mail" nie zostało wypełnione.<br />';
  36.  
  37. }
  38.  
  39. // tu sie razem pokazuja komunikaty o niewypełnieniu pol
  40. if (isset ($empty)) {
  41.  
  42. echo ''.$empty.'<br /><br /><br />';
  43. }
  44. else
  45.  
  46. // jezeli jest wszystko dobrze to dodaje do bazy te wpisy z formularza
  47. {
  48. $zapytanie = mysql_query ( "INSERT INTO `users` (`id`, `imie`, `nick`, `haslo`, `mail`) values ('0', '{$_POST['imie']}', '{$_POST['nick']}', '{$_POST['haslo']}', '{$_POST['email']}')");
  49.  
  50. ///////
  51.  
  52. ///////////////////
  53. ///// tu mam to sprawdzanie czy user juz jest w bazie
  54. $result = mysql_query("SELECT `nick`, `mail` FROM `users` WHERE nick = '".$_POST['nick']."' OR mail = '".$_POST['email']."'");
  55. /// jezeli nie to pokazuje dalsza czesc kodu
  56. if (!$result){
  57.  
  58.  ///////////////
  59. ////////////////////////
  60.  
  61. ////jezeli jest to pokazuje formularz
  62.  
  63. if ($zapytanie) {
  64.  
  65. echo 'Rejestracja przebiegła pomyślnie.<br /> Kliknij <a href="index.php">tutaj</a>, aby powrócić na stronę główną.';
  66.  
  67. }
  68. }
  69. }
  70. //// a jezeli zapytanie sie nie wykona i sie nie odda do bazy to tez pokazje sie for
    mularz
  71.  
  72. if (! $zapytanie) {
  73.  
  74. echo'UWAGA! Wszystkie pola muszą zostać wypełnione!<br><br>
  75. <form action="rejestracja_dodaj.php" method="post">
  76. Imię: <input type="text" name="imie"><br>
  77. Nick: <input type="text" name="nick"><br>
  78. Hasło: <input type="password" name="haslo"><br>
  79.  E-mail: <input type="text" name="email"><br><br>
  80.  <input type="submit" value="Rejestruj!"><br><br><br>';
  81.  
  82. }
  83. ///////////////////////
  84.  ///////////////
  85. }
  86. else {
  87.  echo 'Podany nick lub e-mail już istnieje.';
  88. }
  89. /////////////////////
  90. ?>


Najpierw pokazuje się komunikat: Podany nick lub e-mail już istnieje.
A powinien się pokazywać formularz, i dopiero po sprawdzeniu czy taki user istnieje powinien się ten komunikat pokazać, jak nie istnieje to go do bazy dodaje.. Jak pozmieniać kolejność aby kolejność była dobra?
hwao
Trudno to powiedziec, poniewaz nie masz wpciec w kodzie i cholernie zle sie go czyta (dlamnie jest nieczytelny)

Poprost przestaw Dodawanie usera na sam koniec wertyfikacji

Czyli te INSERT INTO... na sam koniec
mike
LOL, hahahaha

Czt to jest zabawa w : Znajdź 10 szczegółów?
Przecież podałeś identycznie wyglądający kod, a poza tym zamiast klepać kolejnego posta mogłeś przeedytoweć poprzedniego.

Przepraszam za OT.
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.