Arkusz E.14 : 2016 - czerwiec - zad. 02 (php)
Oznaczenie: E.14-02-16.05 Limit czasu: 150 minut
Zadanie egzaminacyjne
Wykonaj projekt polegający na opracowaniu zapytań do bazy i stworzeniu witryny internetowej wykorzystującej te zapytania. Wykorzystaj do tego celu pakiet XAMPP
z bazą MySQL
i narzędziem phpMyAdmin
. Stronę internetową zbuduj przy wykorzystaniu edytora zaznaczającego składnię lub edytora WYSIWYG
.
Aby wykonać zadanie, zaloguj się na konto Egzamin
bez hasła. Na pulpicie znajdziesz archiwum ZIP o nazwie baza1.zip
, zabezpieczone hasłem: Baza!Baza
Plik należy rozpakować.
Wyniki swojej pracy zapisz w folderze stworzonym na pulpicie
konta Egzamin
. Jako nazwy folderu użyj swojego numeru PESEL
.
Operacje na bazie danych
Baza danych szkola
zgodna jest ze strukturą przedstawioną na rysunku 1
. Tabela ocena ma dwa klucze obce: przedmiot_id
oraz uczen_id
odpowiadające relacjom między tabelami.
Rysunek 1. Baza danych szkola
Dla uproszczenia zadań, pomiń tabelę przedmiot
i przyjmij, że pole przedmiot_id
zawiera identyfikatory przedmiotów zgodne z tabelą 1
.
Tabela 1. Przedmioty i ich identyfikatory
Przedmiot | Identyfikator |
---|---|
język polski | 1 |
matematyka | 2 |
język angielski | 3 |
biologia | 4 |
chemia | 5 |
Wykonaj następujące operacje na bazie danych:
- wybierz program
XAMPP Control Panel
i uruchom usługiApache
orazMySQL
. Wybierz w przeglądarce adres//localhost/
, a następnie narzędziephpMyAdmin
- utwórz nową bazę danych o nazwie
szkola
- zaimportuj bazę
szkola.sql
z wcześniej rozpakowanego archiwum - wykonaj zrzut ekranu po imporcie. Zrzut zapisz w formacie PNG i nazwij
import.png
. Na zrzucie powinny być widoczne elementy wskazujące na poprawnie wykonany import (okno programu phpMyAdmin, widoczna baza danych, np. tabele, pola) - stwórz następujące
zapytania SQL
do bazyszkola
i sprawdź poprawność ich działania:- zapytanie 1: wybierające wszystkie
nazwiska
inumery PESEL
z tabeliuczen
- zapytanie 2: wybierające
imię
inazwisko
ucznia oid
=1
- zapytanie 3: wybierające
najwyższą
ocenę z przedmiotubiologia
dla ucznia oid
=1
- zapytanie 4: liczące
ilość ocen
z przedmiotubiologia
dla ucznia oid
=1
- zapytanie 1: wybierające wszystkie
- zapytania zapisz w pliku
kwerendy.txt
. Ponumeruj je, stosując format zapisu: „zapytanie 1: ….. treść zapytania ….”.
Witryna internetowa
Witryna internetowa przedstawiona jest na rysunku 2
.
Rysunek 2. Witryna internetowa
Cechy witryny:
- nazwa pliku:
biologia.php
- zastosowany właściwy standard kodowania polskich znaków
- tytuł strony widoczny na karcie przeglądarki: „Szkoła Podstawowa”
- arkusz stylów w pliku o nazwie:
styl.css
, prawidłowo dołączony do pliku z kodem strony - podział strony na bloki:
baner
, panelelewy
iprawy
,stopka
zrealizowany za pomocą znaczników sekcji (np. znacznikadiv
) - zawartość banera: nagłówek
pierwszego
stopnia o treści: „Oceny uczniów: biologia” - zawartość panelu lewego: nagłówek
trzeciego
stopnia o treści: „Uczeń: ”, dalej skrypt; paragraf (akapit) o treści: „Najwyższa ocena z biologii: ”, dalej skrypt - zawartość panelu prawego: nagłówek
trzeciego
stopnia o treści: „Nazwiska i numery PESEL uczniów: ”, poniżej listapunktowana
wypełniana za pomocą skryptu - zawartość stopki: nagłówek
drugiego
stopnia o treści: „Szkoła Podstawowa”, poniżej paragraf o treści: „Stronę opracował: ”, dalej wpisanynumer PESEL
zdającego
Styl CSS witryny internetowej
Cechy stylu CSS:
- definicja w pliku
styl.css
, styl prawidłowo podpięty pod plik z kodem strony - formatowanie banera: kolor tła:
#875080
, wyrównanie tekstu:do środka
, wysokość50 px
- formatowanie panelu lewego: kolor tła:
#C2A6BF
, wysokość:300 px
, szerokość:75%
- formatowanie panelu prawego: kolor tła:
#A1759C
, wysokość:300 px
, szerokość:25%
- formatowanie stopki: kolor tła:
#875080
, wyrównanie tekstu:do prawej strony
Skrypt połączenia z bazą
Dla ułatwienia w tabeli 2
podano wybór funkcji PHP do obsługi bazy MySQL. Wymagania dotyczące skryptu:
- napisany w języku PHP
- nie jest wymagane sprawdzenie, czy operacja powiodła się, i wyświetlenie stosownego komunikatu
- skrypt powinien połączyć się z serwerem MySQL, parametry:
localhost
, użytkownikroot
bez hasła - skrypt powinien wybrać bazę danych o nazwie
szkola
- na końcu działania skryptu powinno zostać obsłużone zamknięcie połączenia z serwerem
- działanie skryptu w lewym panelu:
- skrypt wysyła do bazy
zapytanie 2
(z plikukwerendy.txt
) - w kodzie strony, po słowie „Uczeń:” wypisuje
imię
inazwisko
zwrócone zapytaniem. Imię i nazwisko powinno zawierać się w nagłówkutrzeciego
stopnia - skrypt wysyła do bazy
zapytanie 3
(z plikukwerendy.txt
) - w kodzie strony, po tekście „Najwyższa ocena z biologii: ” wypisuje ocenę maksymalną zwróconą zapytaniem
- skrypt wysyła do bazy
- działanie skryptu w prawym panelu:
- skrypt wysyła do bazy
zapytanie 1
(z plikukwerendy.txt
) - następnie wyświetla wszystkie zwrócone zapytaniem rekordy w liście
nienumerowanej
. Należy założyć, że baza będzie się rozrastać, więc skrypt powinien wyświetlać taką liczbę wierszy, jaką zwróci zapytanie (nie należy na sztywno wypisywać dwóch wierszy, jak na przykładzie)
- skrypt wysyła do bazy
Tabela 2. Wybór funkcji języka PHP do obsługi bazy MySQL
Funkcje biblioteki mysql | Zwracana wartość |
---|---|
mysql_connect(serwer, użytkownik, hasło) | id połączenia lub FALSE, gdy niepowodzenie |
mysql_select_db ('nazwa_bazy' [,id_polaczenia]) | TRUE / FALSE, w zależności od stanu operacji |
mysql_error([id_polaczenia]) | Tekst komunikatu błędu |
mysql_close([id_polaczenia]) | TRUE / FALSE, w zależności od stanu operacji |
mysql_query(zapytanie [,id_polaczenia]) | Wynik zapytania |
mysql_fetch_row (wynik_zapytania) | Tablica numeryczna odpowiadająca wierszowi zapytania |
mysql_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) | Liczba wierszy w podanym zapytaniu |
mysql_num_fields (wynik_zapytania) | Liczba kolumn w podanym zapytaniu |
- UWAGA!
- Po zakończeniu pracy zgłoś przewodniczącemu ZN gotowość do nagrania płyty z rezultatami pracy. W folderze z Twoim numerem PESEL powinny się znajdować pliki: import.png, kwerendy.txt, biologia.php, styl.css, ewentualnie inne przygotowane przez Ciebie pliki.
- Po nagraniu płyty sprawdź jej poprawność.
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!