Arkusz E.14 : 2017 - czerwiec - zad. 01 (php)
Oznaczenie: E.14-01-17.06 Limit czasu: 150 minut
Zadanie egzaminacyjne
Wykonaj aplikację internetową dla przychodni lekarskiej
. Wykorzystaj pakiet XAMPP
jako środowisko bazodanowo - aplikacyjne. Stronę internetową zbuduj przy wykorzystaniu edytora zaznaczającego składnię.
Aby wykonać zadanie zaloguj się na konto Egzamin
bez hasła. Na pulpicie znajdziesz archiwum ZIP o nazwie dane.zip
, zabezpieczone hasłem: L3karz
Archiwum należy rozpakować.
Wyniki swojej pracy zapisz w folderze utworzonym na pulpicie konta Egzamin
. Jako nazwy folderu użyj swojego numeru PESEL
. Rozpakowany plik umieść w tym folderze.
Operacje na bazie danych
Na obrazie 1
przedstawiono tabelę Pacjenci
, która jest fragmentem bazy danych przychodni.
Obraz 1. Tabela Pacjenci
Uruchom usługi MySQL
i Apache
z XAMPP Control Panel
i przejdź do narzędzia phpMyAdmin
. Następnie wykonaj operacje na bazie danych:
- Utwórz nową bazę danych o nazwie
przychodnia
- Do bazy przychodnia zaimportuj tabele z pliku
przychodnia.sql
z rozpakowanego archiwum - Wykonaj zrzut ekranu po imporcie. Zrzut zapisz w folderze z Twoim numerem PESEL w formacie PNG i nazwij
import-przychodnia.png
. Na zrzucie powinny być widoczne elementy wskazujące na poprawnie wykonany import bazy. Nie skaluj, ani nie przycinaj obrazu - Utwórz następujące
zapytania SQL
do bazy przychodnia i sprawdź poprawność ich działania:- Zapytanie 1: wybierające jedynie pola
id
,imie
,nazwisko
z tabeliPacjenci
- Zapytanie 2: wybierające jedynie pola
imie
,nazwisko
,choroby_przewlekle
,uczulenia
z tabelipacjenci
dlaid
równego1
- Zapytanie 3: wybierające jedynie pola
imie
,nazwisko
z tabelipacjenci
dla tych rekordów, dla których wartość polauczulenia
jest równa ‘brak
’
- Zapytanie 1: wybierające jedynie pola
- Utworzone zapytania zapisz w folderze z Twoim numerem PESEL, w pliku
kwerendy.txt
. Zapytania ponumeruj stosując format zapisu: „zapytanie 1: … treść zapytania …” - Wykonaj zrzuty ekranu przedstawiające wyniki działania kwerend. Zrzuty zapisz w formacie JPEG i nadaj im nazwy
kw1
,kw2
,kw3
. Zrzuty powinny być czytelne oraz wykonane bez skalowania i kadrowania, a także z widocznym paskiem zadań i godziną ich wykonania.
Witryna internetowa
Obraz 2. Strona przychodnia.php
Obraz 2. Strona pacjent.php
Cechy witryny wspólne dla obu stron:
- Dwie strony:
przychodnia.php
orazpacjent.php
- Zastosowany właściwy standard kodowania polskich znaków
- Tytuł strony, widoczny na karcie przeglądarki: „Przychodnia”
- Arkusz stylów w pliku o nazwie
przychodnia.css
, prawidłowo połączony z kodem strony - Podział strony na bloki:
baner
, panelelewy
iprawy
,stopka
zrealizowany za pomocą znaczników sekcji - Zawartość banera: nagłówek
pierwszego
stopnia o treści: „PRAKTYKA LEKARZA RODZINNEGO” - Zawartość panelu lewego:
- Nagłówek
trzeciego
stopnia o treści: „LISTA PACJENTÓW” - Wyniki działania
skryptu nr 1
- Odstęp na
dwie linie
- Formularz, który po zatwierdzeniu wyświetla stronę
pacjent.php
- Zawartość formularza: tekst „Podaj id:”, w kolejnej linii pole do wprowadzania danych typu
numerycznego
oraz przycisk z napisem „Pokaż dane” zatwierdzający formularz - Nagłówek
trzeciego
stopnia o treści: „LEKARZE” - Lista zagnieżdżona zgodna z
obrazem 3
. Kolejne napisy: pn – śr, Anna Kwiatkowska, Jan Kowalewski, czw – pt, Krzysztof Nowak
- Nagłówek
Obraz 3. Lista zagnieżdżona
- Zawartość panelu prawego:
- Nagłówek
drugiego
stopnia o treści: „INFORMACJE SZCZEGÓŁOWE O PACJENCIE”
- Nagłówek
- Zawartość stopki:
- Tekst akapitu (paragrafu) o treści: „utworzone przez: ”, dalej Twój
numer PESEL
- Odnośnik o treści: „Pobierz plik z kwerendami”, wskazujący na plik
kwerendy.txt
- Tekst akapitu (paragrafu) o treści: „utworzone przez: ”, dalej Twój
Dodatkowe cechy strony przychodnia.php
dla panelu prawego:
- Pod napisem „INFORMACJE…” znajduje się akapit (paragraf) „Brak wybranego pacjenta”
Dodatkowe cechy strony pacjent.php
dla panelu prawego:
- Pod napisem „INFORMACJE…” jest wyświetlony efekt działania skryptu nr 2
Styl CSS witryny internetowej
Plik przychodnia.css
zawiera formatowanie dla:
- Banera: kolor RGB tła
(66, 22, 42)
,biały
kolor czcionki, rozmiar czcionki140%
, wyrównanie tekstudo środka
, wysokość100 px
- Panelu lewego: kolor RGB tła
(142, 115, 110)
, szerokość30%
, wysokość600 px
,biały
kolor czcionki - Panelu prawego: kolor RGB tła
(230, 230, 230)
, szerokość70%
, wysokość600 px
, rozmiar czcionki120%
- Stopki: kolor RGB tła
(142, 115,110)
,biały
kolor czcionki, wyrównanie tekstudo prawej strony
, wysokość100 px
Niewymienione właściwości obiektów przybierają wartości domyślne.
Skrypt połączenia z bazą
W tabeli 1
podano wybór funkcji PHP do obsługi bazy danych.
Wymagania dotyczące skryptu:
- Napisany w języku PHP
- Nie jest wymagane sprawdzenie czy operacja na bazie powiodła się
- Skrypt łączy się z serwerem bazodanowym na
localhost
, użytkownikroot
bez hasła, baza danych o nazwieprzychodnia
- Na końcu działania skryptu powinno zostać obsłużone zamknięcie połączenia z serwerem
- Działanie skryptu nr 1:
- Skrypt wysyła do bazy
zapytanie 1
(z plikukwerendy.txt
) - Każdy zwrócony rekord jest wyświetlany w osobnej linii
- Skrypt wysyła do bazy
- Działanie skryptu nr 2:
- Skrypt wykorzystuje dane wysłane z formularza
- Wykorzystując
zapytanie 2
(z plikukwerendy.txt
), należy je tak przekształcić, aby w klauzuli warunku poleid
było równe wartości przesłanej z formularza - Skrypt wysyła do bazy zmodyfikowane
zapytanie 2
- Dane zwrócone wypisywane są w kolejnych akapitach (paragrafach), tekst napisany w nawiasach < > oznacza zwrócone zapytaniem pole:
- Imię i nazwisko: <imie> <nazwisko>
- Choroby przewlekłe: <choroby_przewlekle>
- Uczulenia: <uczulenia>
Tabela 1. Wybór funkcji języka PHP do obsługi bazy MySQL i MariaDB
Funkcje biblioteki mysql | Funkcje bilioteki mysqli | Zwracana wartość |
---|---|---|
mysql_connect(serwer, użytkownik, hasło) | mysqli_connect(serwer, uzytkownik, haslo, nazwa_bazy) | id połączenia lub FALSE, gdy niepowodzenie |
mysql_select_db ('nazwa_bazy' [,id_polaczenia]) | mysqli_select_db(id_polaczenia, nazwa_bazy) | TRUE / FALSE, w zależności od stanu operacji |
mysql_error([id_polaczenia]) | mysqli_error(id_polaczenia) | Tekst komunikatu błędu |
mysql_close([id_polaczenia]) | mysqli_close(id_polaczenia) | TRUE / FALSE, w zależności od stanu operacji |
mysql_query(zapytanie [,id_polaczenia]) | mysqli_query(id_polaczenia, zapytanie) | Wynik zapytania |
mysql_fetch_row (wynik_zapytania) | mysqli_fetch_row(wynik_zapytania) | Tablica numeryczna odpowiadająca wierszowi zapytania |
mysql_fetch_array (wynik_zapytania) | mysqli_fetch_array(wynik_zapytania) | Tablica zawierająca kolejny wiersz z podanych w wyniku zapytania lub FALSE, jeżeli nie ma więcej wierszy w wyniku zapytania |
mysql_num_rows (wynik_zapytania) | mysqli_num_rows(wynik_zapytania) | Liczba wierszy w podanym zapytaniu |
mysql_num_fields (wynik_zapytania) | mysqli_num_fields (wynik_zapytania) | Liczba kolumn w podanym zapytaniu |
- UWAGA!
- Po zakończeniu pracy nagraj płytę z rezultatami pracy. W folderze z Twoim numerem PESEL powinny się znajdować pliki: import_przychodnia.png, kw1.jpg, kw2.jpg, kw3.jpg, kwerendy.txt, pacjent.php, przychodnia.css, przychodnia.php, ewentualnie inne przygotowane przez Ciebie pliki.
- Po nagraniu płyty sprawdź poprawność nagrania i opisz płytę swoim numerem PESEL.
Czas przeznaczony na wykonanie zadania wynosi 150 minut.
Ocenie będą podlegać 4 rezultaty:
- operacje na bazie danych
- witryna internetowa
- styl CSS witryny internetowej
- skrypt połączenia z bazą.
Komentarze
Czy macie jakieś pytania, sugestie, uwagi? A może zauważyliście literówkę albo błąd? Dajcie koniecznie znać: kontakt@pasja-informatyki.pl. Dziękujemy za poświęcony czas - to dzięki Wam serwis staje się coraz lepszy!
Zamów książki o IT sec z kodem: pasja
Można już zamawiać dwa tomy książek "Wprowadzenie do bezpieczeństwa IT". Mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności! Zamówień można dokonywać tutaj:
Tom 1 Tom 2Pomóż dzieciom
Polska Akcja Humanitarna od wielu lat dożywia dzieci. Proszę, poświęć teraz dosłownie chwilę i pomóż klikając w oznaczony strzałką zielony brzuszek Pajacyka. Dziękujemy!