Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Sprawdzanie wypełnienia formularza, Malutka pomoc
Damiian
post
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 4
Dołączył: 30.05.2010
Skąd: Gdynia

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


Witam.

Chciałbym aby mój skrypt po wypełnieniu wszystkich pol i podaniu unikalnego kodu znajdującego sie w kody.txt przenosił użytkownika na dana stronę, lecz jesli nie wypelni on jakiegoś pola, to żeby pokazywala mu sie informacja...

Zrobiłem takie coś:

  1. <?php
  2. if (!empty($_POST['Nick']) && !empty($_POST['Haslo']) && !empty($_POST['Kod']))
  3. {
  4. $plik = file_get_contents("kody.txt");
  5. $plik = explode(",", $plik);
  6. }
  7. if(in_array($_POST['Kod'], $plik))
  8. {
  9. header('Location: [url="http://php.pl&#39%3b%29;"]http://php.pl');[/url]
  10. }
  11. else
  12. {
  13. echo 'podales zly kod!';
  14. }
  15. if (!empty($_POST['Nick']) && !empty($_POST['Haslo']) && !empty($_POST['Kod']))
  16. {
  17. echo '';
  18. }
  19. else
  20. {
  21. echo 'Uzupelnij wszystkie pola!';
  22. }
  23. ?>


Strona przykladowa...


I Gdy:
Wpisze w pierwsze pole: "a"
W drugie "a"
W trzecie "11111" ( taki kod mam w kod txt )
To działa, idzie do waszej strony

Następnie:
Wpisze w pierwsze pole: "a"
Drugie zostawie puste
W trzecie "11111"

To pokazuje mi sie komunikat:
podales zly kod!Uzupelnij wszystkie pola!
Kod przecież jest dobry...
Powinno wyswietlić sie tylko uzupelnij pola.

Prosze o pomoc o poprawne wykonanie skryptu. Dopiero zaczynam z Php, i wiem ze troche namieszałem (IMG:style_emoticons/default/winksmiley.jpg)


Trochę przy tym posiedziałem i pisałem od poczatku:

  1. <?php
  2. if (!empty($_POST['Kod']))
  3. {
  4. $plik = file_get_contents("kody.txt");
  5. $plik = explode(",", $plik);
  6. }
  7. else
  8. {
  9. echo 'Podaj kod<br/>';
  10. }
  11. if (!empty($_POST['Nick']))
  12. {
  13. echo '';
  14. }
  15. else
  16. {
  17. echo 'Uzupelnij nick!<br/>';
  18. }
  19.  
  20. if (!empty($_POST['Haslo']))
  21. {
  22. echo '';
  23. }
  24. else
  25. {
  26. echo 'Uzupelnij haslo!<br/>';
  27. }
  28.  
  29. if (in_array($_POST['Kod'], $plik))
  30. {
  31. echo '';
  32. }
  33. else
  34. {
  35. echo 'Musiales sie pomylic! Takiego kodu nie ma w bazie!<br/>';
  36. }
  37.  
  38.  
  39. if(!empty($_POST['Nick']) && !empty($_POST['Haslo']) && in_array($_POST['Kod'], $plik))
  40. {
  41. header('Location: [url="http://php.pl&#39%3b%29;"]http://php.pl');[/url]
  42. }
  43. ?>


Lecz teraz gdy pole kod jest puste i dam wyslij to mam wiadomość:
Podaj kod
Musiales sie pomylic! Takiego kodu nie ma w bazie!


A chce aby było samo:
  1. Podaj Kod


Ten post edytował Damiian 30.05.2010, 15:52:57
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
tehaha
post
Post #2





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


to posiedź jeszcze trochę i pomyśl nad tym jakie warunki zrobiłeś, podpowiem Ci tyle, że znak ! to negacja
Go to the top of the page
+Quote Post
Damiian
post
Post #3





Grupa: Zarejestrowani
Postów: 38
Pomógł: 4
Dołączył: 30.05.2010
Skąd: Gdynia

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


Posiedziałem trochę i zrobiłem (IMG:style_emoticons/default/smile.gif)
Dziekuje:)

Dobrze jest wykonane czy mozna jakoś jeszcze to zoptymalizować?

  1. <?php
  2. if (!empty($_POST['Kod']))
  3. {
  4. $plik = file_get_contents("kody.txt");
  5. $plik = explode(",", $plik);
  6. }
  7. else
  8. {
  9. echo '';
  10. }
  11. if (!empty($_POST['Nick']))
  12. {
  13. echo '';
  14. }
  15. else
  16. {
  17. echo 'Uzupelnij nick!<br/>';
  18.  
  19. }
  20.  
  21. if (!empty($_POST['Haslo']))
  22. {
  23. echo '';
  24. }
  25. else
  26. {
  27. echo 'Uzupelnij haslo!<br/>';
  28. }
  29.  
  30.  
  31. if (empty($_POST['Kod']))
  32. {
  33. echo 'Wpisz kod!';
  34. }
  35. else
  36. if (in_array($_POST['Kod'], $plik))
  37. {
  38. echo '';
  39. }
  40. else
  41. {
  42. echo 'Nie ma takiego kodu w bazie!<br/>';
  43. }
  44.  
  45.  
  46. if(!empty($_POST['Nick']) && !empty($_POST['Haslo']) && in_array($_POST['Kod'], $plik))
  47. {
  48. header('Location: /check.php');
  49. }
  50. ?>
Go to the top of the page
+Quote Post
tehaha
post
Post #4





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


jak dla mnie takie coś jest bez sensu:
  1. if (!empty($_POST['Haslo']))
  2. {
  3. echo '';
  4. }
  5. else
  6. {
  7. echo 'Uzupelnij haslo!<br/>';
  8. }

nie prościej bez negacji?
  1. if (empty($_POST['Haslo']))
  2. {
  3. echo 'Uzupelnij haslo!<br/>';
  4. }

tak samo przy in_array(), po co puste echo, lepiej !in_array() i tylko ten drugi komunikat
Go to the top of the page
+Quote Post
Damiian
post
Post #5





Grupa: Zarejestrowani
Postów: 38
Pomógł: 4
Dołączył: 30.05.2010
Skąd: Gdynia

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


Serdecznie dziękuje za pomoc. (IMG:style_emoticons/default/smile.gif)

Oczywiscie Pomógł

Pozdrawiam Gdynianina (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 17:43