To jest strona testowa
przygotowana dla demonstracji
projektu strony internetowej
wykorzystującej różne technologie
HTML, CSS, PHP, MySQL
Działanie:
Wynik: 0 |
|||
Prosty kalkulator oparty na formularzu
Na chwilę obecną poprawnie działają cztery podstawowe działania matematyczne: dodawanie, odejmowanie, mnożenie i dzielenie. Zwróć jednak uwagę, że kalkulator działa poprawnie tylko wtedy kiedy wpisywane działanie matematyczne jest postaci [liczba1]...[działanie]...[liczba2]....[=]. Poprawny jest więc zapis 3.4 + 2.71 = . Kalkulator nie zadziała poprawnie jeśli wpiszemy np. następujące działanie: 2.5 +4.5 - 3.5 / 2 =.....
W kolejnym kroku skrypt kalkulatora zostanie wzbogacony o możliwość wyboru szablonu graficznego. Zostanie to zrealizowane poprzez podmianę arkusza styli opisującego kalkulator (działanie podobne jak w przykładzie omawianym na zajęciach a znajdującym się w zakładce "Arkusze CSS".
Formularz 1 - nietrwała zmiana kolorów
Formularz 2 - trwała zmiana kolorów
Opis - formularz 1
Zwróć uwagę, że wybranie koloru za pomocą przycisków "kolor 1" lub "kolor 2" nie jest trwałe. Jeśli po zmianie koloru rozpoczniemy liczenie na kalkulatorze kolor tła wraca do ustawień początkowych - tło kalkulatora staje się "przeźroczyste".
Takie działanie tej funkcji wynika z właściwości zmiennych przechowywanych w tablicy $_GET[' ']. W tablicy takiej zmienna $_GET['kolor'] (w której przechowywana jest informacja o wybranym kolorze) istnieje tylko wtedy jeśli w formularzu istnieje przycisk "Wybierz" () i pole o nazwie name="kolor" (np. Wybierz kolor 1).
W omawianmym przykładzie kalkulatora - każdy przycisk z cyfrą lub działaniem jest osobnym formularzem. Dlatego naciśnięcie dowolnego przycisku (np. z cyfrą "4") powoduje wysłanie na serwer tylko i wyłącznie zmiennej o nazwie $_GET['4']. Na serwer nie jest wtedy przesyłana zmienna $_GET['kolor'] - ponieważ jest ona umieszczona w innym formularzu. Dlatego "serwer" nie "wie" jaki arkusz styli powinien wczytać i kolor tła kalkulatora "znika". Przeanalizuj jednak działanie drugiego formularza do zmiany kolorów. Tu zmiana kolorów działa już poprawnie
Opis - formularz 2
W drugim formularzu uzyskano już taki efekt jaki zamierzono. Na serwerze oprócz tablicy $_GET[' '] która jest tworzona automatycznie przy wysyłaniu formularza można utworzyć tablicę o nazwie $_SESSION[' ']. W tablisy "sesyjnej" można przechowywać zmienne przez cały okres trwania sesji. Zmienne takie są przechowywane nawet wtedy gdy zmienimy aktualnie wyświetlaną stronę na inną a później znów wrócimy do danej strony. Sprawdź, że po wybraniu koloru z wykorzystaniem drugiego formularza odwiedzenie innych stron serwisu a następnie powrót do strony z kalkulatorem powoduje że dokonany wcześniej wybór koloru zostaje zachowany.
O tworzeniu sesji i posługiwaniu się zmiennymi sesyjnymi możesz przeczytać na stronie obsługa sesji. Informacje zawarte na podanej stronie w zupełności wystarczą do zaprojektowania takiego formularza zmiany kolorów, który będzie działał tak jak mój formularz 2.
W zasobach internetowych możesz znaleźć wiele innych poradników.