Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Kłopot z wieloma warunkami
Coolmax
post
Post #1





Grupa: Zarejestrowani
Postów: 168
Pomógł: 0
Dołączył: 12.11.2005
Skąd: Bulowice nearby Wadowice (E), Oświęcim (W)

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


Jestem o krok o napisania skryptu, ale utkwiłem w tym miejscu:

  1. <?php
  2. if(isset($submit))
  3. {
  4. if($login == "")
  5. {
  6.  //w tym miejscu jest kod, który powoduje, że obok inputa ze zmienną $login pokazuj
    e się "Wypełnij to pole"
  7. }
  8. elseif($pswd == "")
  9. {
  10.  //w tym miejscu jest kod, który powoduje, że obok inputa ze zmienną $pswd pokazuje
     się "Wypełnij to pole"
  11. }
  12. elseif($email == "")
  13. {
  14.  //w tym miejscu jest kod, który powoduje, że obok inputa ze zmienną $email pokazuj
    e się "Wypełnij to pole"
  15. }
  16. else
  17. {
  18. echo "OK!";
  19. }
  20. }
  21. else
  22. {
  23. //tutaj kod poczatkowy, znajdujący sie przed submitem
  24. }
  25. ?>

Może ktoś wie dlaczego to nie działa?
P.S.
Dlaczego w podglądzie posta, przy każdym cudzysłowiu automat. dodaje backslash? dla echa byłoby to dobre, ale przy każdym??

Ten post edytował Coolmax 26.06.2006, 16:16:31


--------------------
Go to the top of the page
+Quote Post
nospor
post
Post #2





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




Cytat
Może ktoś wie dlaczego to nie działa?
No ale w jakim sensie nie dziala? Co sie dzieje. czy naprawde nie mozna tego napisac? Trzeba sie dopytywac?

Pozaytym jesli nikt nic nie wypelni to pojawi sie tylko przy login komunikat. jesli wypelni login to pojawi sie przy nastepnym i tak dalej

Cytat
Dlaczego w podglądzie posta, przy każdym cudzysłowiu automat. dodaje backslash?
To bug forum ktory czeka na poprawe

i prosze poprawic tytul o znacznik zgodnie z zasadami forum przedszkole


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

"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
-Gość-
post
Post #3





Goście







  1. <?php
  2. if(isset($submit))
  3. {
  4. if($login == "")
  5. {
  6.  //w tym miejscu jest kod, który powoduje, że obok inputa ze zmienną $login pokazuj
    e się "Wypełnij to pole"
  7. }
  8. if($pswd == "")
  9. {
  10.  //w tym miejscu jest kod, który powoduje, że obok inputa ze zmienną $pswd pokazuje
     się "Wypełnij to pole"
  11. }
  12. if($email == "")
  13. {
  14.  //w tym miejscu jest kod, który powoduje, że obok inputa ze zmienną $email pokazuj
    e się "Wypełnij to pole"
  15. }
  16. else
  17. {
  18. echo "OK!";
  19. }
  20. }
  21. else
  22. {
  23. //tutaj kod poczatkowy, znajdujący sie przed submitem
  24. }
  25. ?>

To powino byc OK
Go to the top of the page
+Quote Post
nospor
post
Post #4





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




@gosciu Twoj kod w przypadku gdy wszystkie pola beda bledne a tylko email bedzie ok, wyswietli tekst: OK


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

"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
Ludvik
post
Post #5





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

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


Zamiast porównywać do pustego ciągu, sprawdź zmienne słowem kluczowym empty. Poza tym piszesz jakbyś miał włączone register_globals. Lepiej użyj tablicy $_GET albo $_POST, w zależności od metody żądania.

Ten post edytował Ludvik 26.06.2006, 16:15:00


--------------------
Go to the top of the page
+Quote Post
Coolmax
post
Post #6





Grupa: Zarejestrowani
Postów: 168
Pomógł: 0
Dołączył: 12.11.2005
Skąd: Bulowice nearby Wadowice (E), Oświęcim (W)

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


Zapisanie prawidłowego warunku jest jednak sztuką i na razie zrezygnuje z tego. Wystarczy mi jeden tekst, wypełnij wszystkie pola...
Jak będe miał czas to się pogłowie, no chyba, że ktoś wie i nabije sobie ten jeden post więcej winksmiley.jpg

Cytat(nospor @ 26.06.2006, 15:08 ) *
Pozaytym jesli nikt nic nie wypelni to pojawi sie tylko przy login komunikat. jesli wypelni login to pojawi sie przy nastepnym i tak dalej


Miałeś rację nospor. Nawet w manualu pisze: "Można użyć kilku instrukcji elseif w jednym bloku instrukcji if. Wykonany wtedy będzie ten blok, który pierwszy będzie mieć wartość TRUE." No i udało mi się napisać. Chyba nie da się tego jeszcze prościej zrobić, dlatego rezygnuje z tej opcji:

  1. <?php
  2. if($login == "" && $pswd == "" && $email == "")
  3. {
  4.  // obok inputa login, pswd, email "Wypełnij te pole".
  5. }
  6. elseif($login == "" && $pswd != "" && $email != "")
  7. {
  8.  // obok inputa login
  9. }
  10. elseif($login != "" && $pswd == "" && $email == "")
  11. {
  12.  // obok inputa pswd, email
  13. }
  14. elseif($login == "" && $pswd != "" && $email == "")
  15. {
  16.  // obok inputa login, email
  17. }
  18. elseif($login == "" && $pswd == "" && $email != "")
  19. {
  20.  // obok inputa login, pswd
  21. }
  22. elseif($login != "" && $pswd == "" && $email != "")
  23. {
  24.  // obok inputa pswd
  25. }
  26. elseif($login != "" && $pswd != "" && $email == "")
  27. {
  28.  // obok inputa email
  29. }
  30. else
  31. {
  32.  //OK!!
  33. }
  34. ?>


A więc jak ktoś ma 4 inputy, to musi zrobić 2^4=16, 2^5=32 itd.

Ten post edytował Coolmax 6.07.2006, 11:49:02


--------------------
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: 20.08.2025 - 08:36