http://www.bartecki.po.opole.pl/ti/semestr2/cwiczenie2.pdf

SSK - Techniki Internetowe Ćwiczenie 2. Obsługa formularzy. Operatory, instrukcje warunkowe oraz instrukcje pętli w PHP. Obsługa formularzy Skryptu PHP moŜna uŜyć do obsługi formularza HTML. Aby tego dokonać, formularz ten naleŜy najpierw odpowiednio przygotować. W parametrze ACTION znacznika FORM naleŜy podać adres dokumentu PHP mającego obsłuŜyć dany formularz. Parametr METHOD moŜe mieć wartość POST lub GET - obydwie metody są obsługiwane przez PHP. Jednak naleŜy pamiętać, Ŝe formularze wysyłane przez GET mają ograniczoną długość. Prosty przykład :

skrypt1.html

Strona z formularzem obsługiwanym przez PHP Podaj swoje imię: skrypt2.php



Strona 1

http://www.bartecki.po.opole.pl/ti/semestr2/cwiczenie2.pdf

Obsługa bardziej złoŜonych formularzy zademonstrowana zostanie w skryptach 5. oraz 6. naszego ćwiczenia. Instrukcje warunkowe: if – else, if – elseif oraz switch - case Niekiedy chcemy, aby dany fragment kodu wykonywał się warunkowo. Stosuje się wówczas na przykład instrukcję if: if($a>$b) echo("$a jest większe od $b"); JeŜeli wartość $a jest większa od $b, wyświetli się napis "$a jest większe od $b". Warunek po if jest spełniony, jeŜeli wyraŜenie w nawiasie ma wartość róŜną od zera. Instrukcja if moŜe być rozszerzona o słowo kluczowe else bądź elseif. Inną instrukcją warunkową, takŜe znaną z języka C, jest tzw. instrukcja wyboru switch. W poniŜszym przykładzie do obsługi formularza zawartego w pliku skrypt3.html wykorzystano kolejno skrypty: skrypt4a.php, skrypt4b.php oraz skrypt4c.php. Ich działanie jest jednakowe, jednak zastosowano w nich róŜne instrukcje warunkowe. Proszę przeanalizować działanie skryptów oraz składnię poszczególnych instrukcji. skrypt3.html Test Podaj swój wiek: skrypt4a.php



skrypt4b.php



skrypt4c.php



Strona 3

http://www.bartecki.po.opole.pl/ti/semestr2/cwiczenie2.pdf

Instrukcje pętli: while, do – while, for oraz foreach Aby dany fragment kodu wykonać wielokrotnie, stosuje się pętle. PHP obsługuje cztery rodzaje pętli: while, do – while, for oraz foreach. Składnia trzech pierwszych jest identyczna, jak składnia odpowiednich pętli języka C. Najprostszą z nich jest pętla while: $a=0; while($a > Miesiąc: Rok:

Strona 8

http://www.bartecki.po.opole.pl/ti/semestr2/cwiczenie2.pdf

• Przetestować działanie w szczególności zaś:

skryptów

oraz

przeanalizować

ich

składnię,

-

sposób wpisu do elementów formularza bieŜącej daty systemowej (funkcja PHP date() ),

-

sposób wygenerowania przez PHP elementów listy rozwijalnej z nazwami kolejnych miesięcy roku,

-

sposób sprawdzenia przez funkcję DzienRoku, czy dany rok jest rokiem przestępnym: dany rok jest przestępny, jeśli jego liczba jest podzielna przez 4, z wyjątkiem lat podzielnych przez 100, jednak lata podzielne przez 400 są latami takŜe latami przęstepnymi. Zapoznać się z zastosowanymi tam operatorami.

-

sposób odczytu wartości poszczególnych pól formularza przez skrypt PHP.

• Spróbować samodzielnie zmodyfikować skrypty, np. w następujący sposób: -

zastąpić instrukcję pętli for instrukcją pętli while, a następnie instrukcją pętli do - while, w sposób równowaŜny działaniu pętli for,

-

wprowadzić zabezpieczenie przed podaniem przez uŜytkownika złej wartości dnia miesiąca – skrypt powinien wtedy wyświetlić informację o błędzie.

Na zakończenie: • Spróbować napisać dwa skrypty, które będą wykonywać zadanie odwrotne do powyŜszego: na podstawie podanego przez uŜytkownika w oknie tekstowym dnia kolejnego roku oraz roku, skrypt powinien wyświetlać odpowiadającą mu datę (dzień/miesiąc/rok).

Strona 9