Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Kolejność wykonywania zadań
Vme
post
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 23.08.2005

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


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?

Ten post edytował Vme 23.08.2005, 21:02:01
Go to the top of the page
+Quote Post
hwao
post
Post #2


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




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
Go to the top of the page
+Quote Post
mike
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


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.

Ten post edytował mike_mech 23.08.2005, 21:00:15
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 Aktualny czas: 19.08.2025 - 17:34