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