Menu
  • Home
  • Ocena (dst)
  • Ocena (db)
  • Ocena (bdb)
  • Poradniki
    • Jak stworzyć prosty serwis www
      • Co to jest hosting
      • Domena / Jak założyć darmowe konto
      • Dostęp FTP
      • PhpMyAdmin
    • Elementy języka PHP
      • Funkcje PHP
    • Elementy języka SQL
      • Wprowadzenie
      • Instrukcja SELECT
      • INSERT, UPDATE, DELETE
      • Funkcje SQL
    • Przykłady
      • Szablon strony internetowej
      • Odczytywanie danych
      • Odczytywanie danych (Array_keys)
      • Filtrowanie danych
      • Formularz
      • Zapisywanie danych do BD
      • PHP - Paginacja tabeli
      • PHP - Paginacja tabeli cd. #1
      • Kalkulator
  • Zasoby
  • Kontakt

Wstęp do baz danych

Materiały pomocnicze

Kalkulator

Opublikowano: 30 maj 2016
Andrzej Bąk
Kategoria: Porady
  • Poprzedni artykuł
  • Następny artykuł
Działanie:
Wynik: 0

Dwa formularze zmiany kolorów tła kalkulatorulatora. Jeden daje nietrwałą zmiane kolorów tła a drugi trwałą

Formularz 1
- nietrwała zmiana kolorów

Wybierz kolor 1
Wybierz kolor 2

Formularz 2
- trwała zmiana kolorów

Wybierz kolor 1
Wybierz kolor 2

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 =

Zmiana koloru tła formularza

W kolejnym kroku skrypt kalkulatora został wzbogacony o możliwość wyboru szablonu graficznego. Zostało to zrealizowane poprzez podmianę arkusza styli opisującego kalkulator (działanie podobne jak w przykładzie omawianym na zajęciach).

Opis formularza 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 (srebrne)

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 np. co najmiej dwa pola typu "radio" ( )  o nazwie name="kolor" z dodanym opisem np. "Wybierz kolor 1", "Wybierz kolor 2" ).

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 formularza 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.

Fragmenty kodu HTML kalkulatora wraz z opisem:


Fragment kodu PHP podłączającego odpowiednie arkusze styli - oba przypadki, tzn. trwałego i nietrwałego podłączenia arkuszy.


Nowe materiały

  • Zapisywanie danych do BD
  • Wybrane zasoby internetowe
  • PhpMyAdmin - w skrócie
  • Podstawy HTML
  • Dostęp FTP

Popularne

  • Kalkulator
  • Podstawy HTML
  • Funkcje PHP
  • Insert, Update, Delete
  • Elementy CSS

Katedra Fizyki 
ul. Powstańców Warszawy 6
35-959 Rzeszów

telefon:  (0-prefix-17) 865-14-63
email: 

Joomla Template created with Themler.