Arkusz E.14 : 2019 - styczeń - zad. 01 (php)
Oznaczenie: E.14-01-19.01 Limit czasu: 150 minut
Zadanie egzaminacyjne
Wykonaj aplikację internetową dla bazy danych filmów. Wykorzystaj pakiet XAMPP
jako środowisko bazodanowo-aplikacyjne. Stronę internetową zbuduj przy wykorzystaniu edytora zaznaczającego składnię oraz programu do obróbki grafiki rastrowej i wektorowej.
Aby wykonać zadanie, zaloguj się na konto Egzamin
bez hasła. Na pulpicie znajdziesz archiwum ZIP o nazwie pliki1.zip
zabezpieczone hasłem: Baz@FilmY
.
Archiwum należy rozpakować.
Na pulpicie konta egzamin
utwórz folder. Jako nazwy folderu użyj swojego numeru PESEL
. Rozpakowane pliki umieść w tym folderze. Po skończonej pracy wynikowe pliki zapisz w tym folderze.
Operacje na bazie danych
Baza danych jest zgodna ze strukturą przedstawioną na obrazie 1
. Tabela filmy
ma dwa klucze obce łączące ją z tabelami rezyserzy
i gatunki
.
Obraz 1. Struktura bazy danych
Uruchom usługi MySQL
i Apache
za pomocą XAMPP Control Panel
. Za pomocą narzędzia phpMyAdmin
wykonaj podane operacje na bazie danych:
- Utwórz nową bazę danych o nazwie
dane
- Do bazy zaimportuj tabele z pliku
dane.sql
z rozpakowanego archiwum ZIP - Wykonaj zrzut ekranu po imporcie. Zrzut zapisz w folderze z numerem PESEL, w formacie PNG i nazwij
import
. Nie kadruj zrzutu. Powinien on obejmować cały ekran, z widocznym paskiem zadań. Na zrzucie powinny być widoczne elementy wskazujące na poprawnie wykonany import tabel - Zapisz i wykonaj
zapytania SQL
działające na bazie danychdane
. Zapytania zapisz w plikukwerendy.txt
, w folderze z numerem PESEL. Wykonaj zrzuty ekranu przedstawiające wyniki działania kwerend. Zrzuty zapisz w formacie JPG i nadaj im nazwykw1
,kw2
,kw3
,kw4
. Zrzuty powinny obejmować cały ekran monitora z widocznym paskiem zadań.- Zapytanie 1: wstawiające do tabeli
filmy
jeden rekord o danych: filmSuburbicon
z roku2017
, gatunek filmu tokomedia
, ocena jest równa5
- Zapytanie 2: wybierające jedynie pole
tytul
z tabelifilmy
oraz odpowiadające mu polenazwa
z tabeligatunki
dla filmów, dla których poleocena
ma wartość6
. Należy posłużyć się relacją - Zapytanie 3: wybierające jedynie pola
tytul
orazrok
z tabelifilmy
tylko dla gatunkudramat
o ocenie równej5
- Zapytanie 4: tworzące tabelę o nazwie
aktorzy
i polachid
typu numerycznego,imie
typu tekstowego,nazwisko
typu tekstowego. Poleid
nie może przyjmować wartościNULL
- Zapytanie 1: wstawiające do tabeli
Witryna internetowa
Obraz 2
przedstawia sytuację, w której kursor myszy znalazł się na obszarze formularza.
Obraz 2. Witryna internetowa
Przygotowanie grafiki
Grafikę kadr.jpg
należy skadrować. Na obrazie widoczne są dwie czarne linie wyznaczające kadr. Zdjęcie powinno być wycięte tak, aby był widoczny tylko obszar pomiędzy liniami (linie nie mają być widoczne).
Grafika kadr.jpg
Cechy witryny
- Składa się ze strony o nazwie
index.html
- Zastosowany właściwy standard kodowania polskich znaków
- Tytuł strony widoczny na karcie przeglądarki: "Filmy"
- Arkusz stylów w pliku o nazwie
styl1.css
prawidłowo połączony z kodem strony - Podział strony na bloki:
boczny panel
polewej
stronie oraztrzy panele
poprawej
stronie - jeden pod drugim,stopka
pod wsystkimi panelami. Podział zrealizowany za pomocą znaczników sekcji, zgodnie zobrazem 2
- Zawartość lewego panelu:
- Nagłówek
trzeciego
stopnia o treści "Dostępne gatunki filmu" - Lista
numerowana
(uporządkowana) z elementami o treści: "Sci-Fi", "animacja", "dramat", "horror", "komedia" - Umieszczony w akapicie (paragrafie)
odnośnik
o treści "Pobierz obraz" prowadzący do obrazukadr.jpg
- Umieszczony w akapicie
odnośnik
o treści "Sprawdź repertuar kin" prowadzący do stronyrepertuar-kin.pl
, odnośnik otwiera się wosobnym oknie
- Nagłówek
- Zawartość pierwszego prawego panelu: nagłówek
pierwszego
stopnia o treści "FILMOTEKA" - Zawartość drugiego prawego panelu: formularz wysyłający dane
metodą POST
do plikudodaj.php
z elementami umieszczonymi w osobnych wierszach:- Tekst "Tytuł:" oraz pole edycyjne typu
tekstowego
- Tekst "Gatunek filmu: " oraz pole edycyjne typu
numerycznego
- Tekst "Rok produkcji: " oraz pole edycyjne typu
numerycznego
- Tekst "Ocena: " oraz pole edycyjne typu
numerycznego
- Przycisk o treści CZYŚĆ, po jego wciśnięciu dane z pól edycyjnych są usuwane
- Przycisk o treści DODAJ, po jego wciśnięciu dane są wysyłane do skryptu PHP
- Tekst "Tytuł:" oraz pole edycyjne typu
- Zawartość trzeciego prawego panelu: obraz
kadr.jpg
z tekstem alternatywnym "zdjęcia filmowe" - Zawartość stopki: akapit o treści "Autor strony: ", zaś dalej wstawiony
numer PESEL
zdającego
Styl CSS witryny internetowej
Plik styl1.css
zawiera formatowanie:
- Domyślne dla całej strony: krój czcionki
Helvetica
- Panelu lewego: kolor tła
Navy
, kolor czcionkibiały
, szerokość25%
, wysokość700px
- Pierwszego panelu prawego: kolor tła
RoyalBlue
, wysokość100px
, szerokość75%
, wyrównanie tekstudo środka
- Drugiego panelu prawego: kolor tła
SteelBlue
, wysokość300px
, szerokość75%
- Trzeciego panelu prawego: kolor tła
RoyalBlue
, wysokosć300px
, szerokość75%
, wyrównanie tekstudo środka
- Stopki: kolor tła
SteelBlue
, wyrównanie tekstudo środka
, marginesy wewnętrzne20px
- Nagłówka pierwszego stopnia: odległość między literami wynosi
5px
- Formularza: marginesy zewnętrzne
30px
, wysokość linii wynosi3
- W momencie najechania kursorem na obszar formularza zmienia on kolor tła na
DeepSkyBlue
Skrypt połączenia z bazą
W tabeli 1
podano wybór funkcji PHP do obsługi bazy danych.
Wymagania dotyczące skryptów:
- Napisany w języku PHP, umieszczony w pliku
dodaj.php
(w pliku znajduje się tylko skrypt) - Skrypt łączy się z serwerem bazodanowym na
localhost
, użytkownikroot
bez hasła, baza danych o nazwiedane
- Pobiera dane z formularza ze wszystkich pól edycyjnych
- Dodaje dane do tabeli
filmy
za pomocą zmodyfikowanegozapytania nr 1
- Wypisuje tekst "Film
tytuł
został dodany do bazy", gdzietytuł
oznacza tytuł wpisany do formularza. - Zamyka połączenie z bazą
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 utwórz plik tekstowy. Zapisz w nim nazwę przeglądarki internetowej, w której weryfikowałeś poprawność działania witryny, zapisz go w folderze z numerem PESEL jako przeglądarka.txt.
- Nagraj płytę z rezultatami pracy. W folderze z numerem PESEL powinny się znajdować pliki: dodaj.php, import.png, index.html, kadr.jpg, kw1.jpg, kw2.jpg, kw3.jpg, kw4.jpg, kwerendy.txt, przeglądarka.txt, styl1.css, ewentualnie inne przygotowane pliki.
- Po nagraniu płyty sprawdź poprawność nagrania. Opisz płytę swoim numerem PESEL i pozostaw na stanowisku, zapakowaną w pudełku wraz z arkuszem egzaminacyjnym.
Czas przeznaczony na wykonanie zadania wynosi 150 minut.
Ocenie będzie podlegać 5 rezultatów:
- operacje na bazie danych
- wygląd witryny internetowej
- działanie witryny internetowej
- 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!