Podsumowanie pierwszego rozdziału
Po tej solidnej dawce nowego materiału należałoby go uporządkować. Włączamy więc nasz edytor do pisania dokumentów tekstowych i tworzymy dwa nowe pliki o nazwie sklep.html oraz zamowienie.php.
Naszym zadaniem będzie napisanie aplikacji, która liczy sumę zamówienia składanego w sklepie internetowym, liczy podatek VAT 23% od tej kwoty, a następnie prezentuje na ekranie cenę netto i brutto zamówionych przedmiotów.
Ceny netto wszystkich produktów będą przechowywane w formie stałych o nazwie szablonowej NAZWA_PRODUKTU. Zmienne $ile_nazwa_produktu będą przechowywać informacje odnośnie ilości sztuk danego produktu, zamówionych przez klienta. Wysokość podatku VAT również będzie przechowywana w stałej – P_VAT. Takie rozwiązanie jest bardzo wygodne w przypadku późniejszych zmian podatku. Jeżeli zaistnieje potrzeba zmiany wartości wystarczy to zrobić raz przy deklaracji stałej, a w całym dalszym kodzie wartość zostanie zmieniona. Zrobimy prosty interfejs, zawierający formularz POST. Na podstawie wpisanych w nim danych zostanie obliczone zamówienie. W celach instruktażowych kolejne etapy obliczeń są przypisywane do nowych zmiennych. Nie jest to rozwiązanie optymalne, ale na pewno bardziej przejrzyste.
Przegląd rozwiązania
Najpierw plik sklep.html. Jego kod wygląda tak:
<html> <head> <title>Sklep odzieżowy</title> </head> <body> <form action="zamowienie.php" method="post"> Liczba zamawianych koszulek: <input type="text" name="koszulki" size=3 maxsize=3 /> Liczba zamawianych spodni: <input type="text" name="spodnie" size=3 maxsize=3 /> Liczba zamawianych czapek: <input type="text" name="czapki" size=3 maxsize=3 /> <input type="submit" value="złóż zamówienie" /> </body> </html>
Listing pliku zamowienie.php:
<?php define("KOSZULKA", 14.99); // cena koszulki jako stała define("SPODNIE", 45.99); // cena spodni define("CZAPKA", 9.63); // cena czapki define("P_VAT", 0.23); // wysokość podatku VAT $ile_koszulki = $_POST['koszulki']; // przypisanie zmiennych formularza $ile_spodnie = $_POST['spodnie']; $ile_czapki = $_POST['czapki']; $kwota_koszulki_netto = $ile_koszulki*KOSZULKA; // wartość netto zamówionych koszulek $kwota_spodnie_netto = $ile_spodnie*SPODNIE; // wartość netto spodni $kwota_czapki_netto = $ile_czapki*CZAPKA; // wartość netto czapek $kwota_zamowienia_netto = $kwota_koszulki_netto + $kwota_spodnie_netto + $kwota_czapki_netto; // cena netto całego zamówienia $kwota_koszulki_brutto = $kwota_koszulki_netto + $kwota_koszulki_netto*P_VAT; // wartość brutto koszulek $kwota_spodnie_brutto = $kwota_spodnie_netto + $kwota_spodnie_netto*P_VAT; // wartość brutto spodni $kwota_czapki_brutto = $kwota_czapki_netto + $kwota_czapki_netto*P_VAT; // wartość brutto czapek $kwota_zamowienia_brutto = $kwota_koszulki_brutto + $kwota_spodnie_brutto + $kwota_czapki_brutto; // cena zamówienia brutto ?> <html> <head> <title>Obsługa zamówienia</title> </head> <body> <?php echo "Cena netto zamówionych koszulek: ".$kwota_koszulki_netto."<br/>"; echo "Cena netto zamówionych spodni: ".$kwota_spodnie_netto."<br/>"; echo "Cena netto zamówionych czapek: ".$kwota_czapki_netto."<br/>"; echo "Wartość netto całego zamówienia: ".$kwota_zamowienia_netto."<br/>"; echo "Cena brutto zamówionych koszulek: ".$kwota_koszulki_brutto."<br/>"; echo "Cena brutto zamówionych spodni: ".$kwota_spodnie_brutto."<br/>"; echo "Cena brutto zamówionych czapek: ".$kwota_czapki_brutto."<br/>"; echo "Wartość brutto całego zamówienia: ".$kwota_zamowienia_brutto."<br/>"; ?> </body> </html>
Omówienie skryptu
Plik sklep.php jest odpowiedzialny za wyświetlenie formularza z możliwością wpisania liczby zamawianych przedmiotów. Nic wielkiego się tutaj nie dzieje, po prostu zwykły HTML. Po wpisaniu i zgłoszeniu formularza dane zostają przesłane do pliku zamowienie.php. Tutaj na wstępie definiujemy stałe z cenami przedmiotów oraz wysokością podatku VAT. Później tworzymy zmienne z pól formularza, przesłanych ze sklepu. Kwoty netto obliczamy po prostu mnożąc ilość zamówionych przedmiotów przez cenę netto przechowywaną w stałej. Następnie w celu obliczenia całości sumujemy trzy kwoty netto. Z cenami brutto robi się podobnie, z tym że należy dodać wartość podatku, czyli 0,23*kwota.
To kończy naszą część obliczeniową aplikacji, teraz czas na zaprezentowanie wyników. Funkcję echo pokazałem już na drugiej lekcji, lecz wyświetlała ona sam tekst. Teraz oprócz tekstu wpisanego przez nas dodatkowo jako argument podajemy zmienną. Jedną i drugą część tekstu musimy jednak połączyć operatorem ” . „, żeby interpreter poprawnie zrozumiał nasze intencje. Działa to w ten sposób, że przeglądarka wyświetli najpierw to, co jest w cudzysłowiu, później wyświetli wartość zmiennej, a następnie to, co jest w kolejnym cudzysłowiu. Spokojnie, to nic trudnego. Po kilku napisanych skryptach dojdziesz do wprawy.
Propozycje ćwiczeń dodatkowych
Samym czytaniem bardzo ciężko nauczyć się programować. Tak naprawdę, to uczymy się wydajnie dopiero podczas pisania. Z każdym napisanym przez siebie kodem zobaczysz, ile niejasnych spraw stało się oczywistymi. Poniżej przedstawię kilka zadań, które możesz spróbować rozwiązać:
- dodaj do naszego sklepu dodatkowy artykuł – buty, nadaj mu cenę netto i zmodyfikuj wyświetlanie, by pokazywane były cztery przedmioty,
- stwórz formularz HTML, w którym wstawisz trzy pola tekstowe, które po wypełnieniu wyślesz do pliku .php; wyświetl wpisane teksty w różnych kombinacjach używając funkcji echo i operatora ” . „,
- zmodyfikuj plik zamowienie.php, dodaj formularz, w którym będzie można podać kwotę, jaką się płaci za zamówione towary; kwota, wraz z wartością brutto w polu typu hidden, zostanie wysłana do kasa.php, w którym zostanie obliczona reszta, jaką należy wydać od zapłaconej kwoty; wskazówka: wykorzystaj funkcję echo w atrybucie value pola typu hidden, by przekazać wartość brutto zakupionych produktów.
Spis lekcji w rozdziale pierwszym
Poprzednia lekcja: Komentarze | Następna lekcja: Rozdział drugi |