{"id":"e14-2019-czerwiec-egzamin-zawodowy-praktyczny/zad/PE","paper_id":"e14-2019-czerwiec-egzamin-zawodowy-praktyczny","number":"PE","points":null,"ptype":"closed","subject":"e14","category":"egzamin-zawodowy","year":2019,"month":"czerwiec","level":null,"text":"Zadanie egzaminacyjne\nWykonaj aplikację internetową portalu ogłoszeniowego sklepu internetowego. Wykorzystaj pakiet XAMPP\njako środowisko bazodanowo-aplikacyjne. Stronę internetową zbuduj przy wykorzystaniu edytora kodu\nzaznaczającego składnię.\nAby wykonać zadanie, zaloguj się na konto Egzamin bez hasła. Na pulpicie znajdziesz archiwum ZIP\no nazwie materialy1.zip zabezpieczone hasłem: Z@dani3\nArchiwum należy rozpakować.\nNa pulpicie konta Egzamin utwórz folder. Jako nazwy folderu użyj swojego numeru PESEL. Rozpakowane\npliki umieść w tym folderze. Wyniki swojej pracy również zapisz w tym folderze.\nOperacje na bazie danych\nTabele w bazie sklep wykorzystane w zadaniu przedstawione są na obrazie 1. Pole promocja przechowuje\ntylko dwie wartości: 0 - jeżeli towar nie jest objęty promocją, 1 - jeżeli towar jest objęty promocją.\nTabele połączone są relacją opartą na polach: idDostawcy w tabeli towary oraz id w tabeli dostawcy.\nObraz 1. Baza danych\nUruchom usługi MySQL i Apache z XAMPP Control Panel i przejdź do narzędzia phpMyAdmin. Następnie\nwykonaj operacje na bazie danych:\n Utwórz nową bazę danych o nazwie sklep\n Do bazy zaimportuj tabele z pliku sklep.sql, z wcześniej rozpakowanego archiwum\n Wykonaj zrzut ekranu po imporcie. Zrzut zapisz w folderze z Twoim numerem PESEL, w formacie\nJPEG i nazwij baza. Nie kadruj zrzutu. Powinien on obejmować cały ekran monitora, z widocznym\npaskiem zadań. Na zrzucie powinny być widoczne elementy wskazujące na poprawnie wykonany\nimport tabel\n Zapisz i wykonaj w phpMyAdmin podane niżej zapytania SQL działające na bazie danych. Wykonaj\nzrzuty ekranu przedstawiające wyniki działania kwerend. Zrzuty zapisz w formacie JPEG i nadaj im\nnazwy kwerenda1, kwerenda2, kwerenda3, kwerenda4. Zrzuty powinny obejmować cały ekran\nmonitora z widocznym paskiem zadań oraz zawierać przykładowe zapytanie. Zapytania zapisz\nw pliku kwerendy.txt. Pliki zawierające zrzuty ekranu oraz plik kwerendy.txt umieść w folderze\nz Twoim numerem PESEL\n Zapytanie 1: wybierające jedynie pole nazwa dla produktów objętych promocją z tabeli towary\n Zapytanie 2: wybierające jedynie pole cena dla produktu cienkopis z tabeli towary\n Zapytanie 3: wybierające jedynie pole nazwa dla wszystkich rekordów z tabeli dostawcy oraz\nzliczające ilość towarów dostarczanych przez każdego z dostawców. Pole zliczające należy\nnazwać ilosc\n Zapytanie 4: modyfikujące strukturę tabeli dostawcy poprzez dodanie pola o nazwie\ne_mail i typie TEXT\nWitryna internetowa\nObraz 2. Witryna internetowa\nPrzygotowanie grafiki:\n Plik promocja.png, wypakowany z archiwum, należy przeskalować z zachowaniem proporcji tak, aby\njego szerokość wynosiła dokładnie 200 px\n Plik po przeskalowaniu należy zapisać jako promocja2.png, z zachowaniem pozostałych atrybutów,\nw tym przezroczystości\nObraz 3. Lista punktowana w bloku lewym\nObraz 4. Zawartość formularza w bloku\nśrodkowym: lista rozwijalna, zawierająca cztery\nelementy oraz przycisk\nCechy witryny:\n Składa się ze strony o nazwie index.php\n Zastosowany właściwy standard kodowania polskich znaków\n Tytuł strony widoczny na karcie przeglądarki „Sklep papierniczy”\n Arkusz stylów w pliku o nazwie styl.css prawidłowo połączony z kodem strony\n Podział strony na bloki: na górze baner, poniżej bloki: lewy, środkowy i prawy oraz na dole blok stopki.\nPodział zrealizowany za pomocą znaczników sekcji tak, aby po uruchomieniu w przeglądarce wygląd\nukładu bloków był zgodny z obrazem 2\n Zawartość banera: nagłówek pierwszego stopnia o treści „W naszym sklepie internetowym kupisz\nnajtaniej”\n Zawartość bloku lewego:\n Nagłówek trzeciego stopnia o treści „Promocja 15% obejmuje artykuły:”\n Lista punktowana (nieuporządkowana) zgodna z obrazem 3, elementy listy generowane są\nskryptem 1\n Zawartość bloku środkowego:\n Nagłówek trzeciego stopnia o treści „Cena wybranego artykułu w promocji”\n Formularz składający się z:\n Listy rozwijalnej zawierającej nazwy wszystkich towarów w promocji, zgodnej z obrazem 4\n Przycisku WYBIERZ - realizującego skrypt 2\n Formularz wysyła dane do serwera za pomocą przycisku WYBIERZ, metodą post\n Skrypt 2\n Zawartość bloku prawego:\n Nagłówek trzeciego stopnia o treści: „Kontakt”\n Umieszczony w akapicie (paragrafie) tekst „telefon: 123123123 e-mail: bok@sklep.pl” podzielony\nna dwa wiersze (zgodnie z obrazem 2)\n Napis bok@sklep.pl jest odsyłaczem pocztowym łączącym z tym samym adresem\n Obraz promocja2.png z tekstem alternatywnym „promocja”\n Zawartość stopki: nagłówek czwartego stopnia o treści „Autor strony”, dalej wstawiony Twój numer\nPESEL\nStyl CSS witryny internetowej\nFormatowanie strony zawiera:\n Format banera: kolor tła #E8C84E, wysokość 50 px, wielkość czcionki 130%, wyrównanie tekstu do\nśrodka\n Format bloku lewego: kolor tła #FFB544, wysokość 500 px, szerokość 40%, wielkość czcionki 130%\n Format bloku środkowego: wysokość 500 px, szerokość 30%, wyrównanie tekstu do środka\n Format bloku prawego: kolor tła #FFB544, wysokość 500 px, szerokość 30%, wielkość czcionki 130%,\nwyrównanie tekstu do środka\n Format stopki: kolor tła #E8C84E, wysokość 50 px, wyrównanie tekstu do prawej strony, marginesy\nwewnętrzne 10 px\n Format elementów listy punktowanej: margines wewnętrzny górny 30 px, kolor tła #FFAA00\n Formatowanie obrazu i nagłówka h3: margines zewnętrzny górny 50 px\n Formatowanie formularza: margines zewnętrzny dolny 100 px\nSkrypt połączenia z bazą\nW tabeli 1 podano wybór funkcji PHP do obsługi bazy danych.\nWymagania dotyczące skryptu:\n Napisany w języku PHP, umieszczony w pliku index.php\n Skrypt łączy się z serwerem bazodanowym na localhost, użytkownik root bez hasła, baza danych\no nazwie sklep\n Nie jest wymagane sprawdzenie czy operacje na bazie danych powiodły się\n Na końcu działania skrypt zamyka połączenie z serwerem\nSkrypt 1\n Wysyła do bazy danych zapytanie 1 (z pliku kwerendy.txt)\n Nazwy produktów pobrane zapytaniem wypisywane są jako elementy listy punktowanej\n(nieuporządkowanej) zgodnie z obrazem 3\nSkrypt 2\n Pobiera z formularza nazwę produktu wybranego w liście rozwijalnej\n Wysyła do bazy danych zapytanie 2 (z pliku kwerendy.txt), zmodyfikowane w ten sposób, że w sekcji\nwarunku nazwa produktu jest zgodna z wyborem w liście rozwijalnej\n Oblicza cenę w promocji jako 85% ceny pobranej zapytaniem\n Zaokrągla obliczoną cenę do dwóch miejsc po przecinku\n Obliczona cena w promocji wyświetlana jest poniżej formularza\nTabela 1. Wybór funkcji języka PHP do obsługi bazy MySQLi i MariaDB\nFunkcje bilioteki mysqli\nZwracana wartość\nmysqli_connect(serwer, użytkownik, hasło,\nnazwa_bazy)\nid połączenia lub FALSE, gdy niepowodzenie\nmysqli_select_db(id_polaczenia, nazwa_bazy)\nTRUE/FALSE w zależności od stanu operacji\nmysqli_error(id_polaczenia)\nTekst komunikatu błędu\nmysqli_close(id_polaczenia)\nTRUE/FALSE w zależności od stanu operacji\nmysqli_query(id_polaczenia, zapytanie)\nWynik zapytania\nmysqli_fetch_row(wynik_zapytania)\nTablica numeryczna odpowiadająca wierszowi zapytania\nmysqli_fetch_array(wynik_zapytania)\nTablica asocjacyjna odpowiadająca wierszowi zapytania lub\nFALSE, jeżeli nie ma więcej wierszy w wyniku zapytania\nmysqli_num_rows(wynik_zapytania)\nLiczba wierszy w podanym wyniku zapytaniu\nmysqli_num_fields(wynik_zapytania)\nLiczba kolumn w podanym wyniku zapytaniu\nUWAGA: po zakończeniu pracy utwórz plik tekstowy. Zapisz w nim nazwę przeglądarki internetowej, w której\nweryfikowałeś poprawność działania witryny. Nazwij plik przeglądarka.txt i zapisz go w folderze\nz numerem PESEL. Nagraj płytę z rezultatami pracy. W folderze z numerem PESEL powinny się znajdować\nnastępujące pliki: przeglądarka.txt, baza.jpg, kwerenda1.jpg, kwerenda2.jpg, kwerenda3.jpg, kwerenda4.jpg,\nkwerendy.txt, index.php, styl.css, promocja.png, promocja2.png oraz ewentualnie inne przygotowane pliki.\nPo nagraniu płyty sprawdź poprawność nagrania. Opisz płytę swoim numerem PESEL i zapakowaną\nw pudełku pozostaw na stanowisku wraz z arkuszem egzaminacyjnym.\nCzas przeznaczony na wykonanie zadania wynosi 150 minut.\nOcenie będzie podlegać 5 rezultatów:\n operacje na bazie danych,\n wygląd witryny internetowej,\n działanie witryny internetowej,\n styl CSS witryny internetowej,\n skrypt połączenia z bazą.\nWypełnia zdający\nDo arkusza egzaminacyjnego dołączam płytę CD opisaną numerem PESEL\nktórej jakość nagrania została przeze mnie sprawdzona.\nWypełnia Przewodniczący ZN\nPotwierdzam, że do arkusza egzaminacyjnego dołączona jest płyta CD, opisana numerem PESEL zdającego.\nCzytelny podpis Przewodniczącego ZN\n,","answer":null,"answer_text":null,"solution":null,"image":"img/e14-2019-czerwiec-egzamin-zawodowy-praktyczny/zad-PE.webp","solution_image":null,"topics":null,"page_from":2,"source":"ocr","answer_source":null,"answer_text_source":null,"solution_source":null,"text_source":"ocr","source_label":"E14 · Egzamin zawodowy · czerwiec 2019","subject_label":"e14","category_label":"Egzamin zawodowy","text_html":"<p>Zadanie egzaminacyjne<br>Wykonaj aplikację internetową portalu ogłoszeniowego sklepu internetowego. Wykorzystaj pakiet XAMPP<br>jako środowisko bazodanowo-aplikacyjne. Stronę internetową zbuduj przy wykorzystaniu edytora kodu<br>zaznaczającego składnię.<br>Aby wykonać zadanie, zaloguj się na konto Egzamin bez hasła. Na pulpicie znajdziesz archiwum ZIP<br>o nazwie materialy1.zip zabezpieczone hasłem: Z@dani3<br>Archiwum należy rozpakować.<br>Na pulpicie konta Egzamin utwórz folder. Jako nazwy folderu użyj swojego numeru PESEL. Rozpakowane<br>pliki umieść w tym folderze. Wyniki swojej pracy również zapisz w tym folderze.<br>Operacje na bazie danych<br>Tabele w bazie sklep wykorzystane w zadaniu przedstawione są na obrazie 1. Pole promocja przechowuje<br>tylko dwie wartości: 0 - jeżeli towar nie jest objęty promocją, 1 - jeżeli towar jest objęty promocją.<br>Tabele połączone są relacją opartą na polach: idDostawcy w tabeli towary oraz id w tabeli dostawcy.<br>Obraz 1. Baza danych<br>Uruchom usługi MySQL i Apache z XAMPP Control Panel i przejdź do narzędzia phpMyAdmin. Następnie<br>wykonaj operacje na bazie danych:<br> Utwórz nową bazę danych o nazwie sklep<br> Do bazy zaimportuj tabele z pliku sklep.sql, z wcześniej rozpakowanego archiwum<br> Wykonaj zrzut ekranu po imporcie. Zrzut zapisz w folderze z Twoim numerem PESEL, w formacie<br>JPEG i nazwij baza. Nie kadruj zrzutu. Powinien on obejmować cały ekran monitora, z widocznym<br>paskiem zadań. Na zrzucie powinny być widoczne elementy wskazujące na poprawnie wykonany<br>import tabel<br> Zapisz i wykonaj w phpMyAdmin podane niżej zapytania SQL działające na bazie danych. Wykonaj<br>zrzuty ekranu przedstawiające wyniki działania kwerend. Zrzuty zapisz w formacie JPEG i nadaj im<br>nazwy kwerenda1, kwerenda2, kwerenda3, kwerenda4. Zrzuty powinny obejmować cały ekran<br>monitora z widocznym paskiem zadań oraz zawierać przykładowe zapytanie. Zapytania zapisz<br>w pliku kwerendy.txt. Pliki zawierające zrzuty ekranu oraz plik kwerendy.txt umieść w folderze<br>z Twoim numerem PESEL<br> Zapytanie 1: wybierające jedynie pole nazwa dla produktów objętych promocją z tabeli towary<br> Zapytanie 2: wybierające jedynie pole cena dla produktu cienkopis z tabeli towary<br> Zapytanie 3: wybierające jedynie pole nazwa dla wszystkich rekordów z tabeli dostawcy oraz<br>zliczające ilość towarów dostarczanych przez każdego z dostawców. Pole zliczające należy<br>nazwać ilosc<br> Zapytanie 4: modyfikujące strukturę tabeli dostawcy poprzez dodanie pola o nazwie<br>e_mail i typie TEXT<br>Witryna internetowa<br>Obraz 2. Witryna internetowa<br>Przygotowanie grafiki:<br> Plik promocja.png, wypakowany z archiwum, należy przeskalować z zachowaniem proporcji tak, aby<br>jego szerokość wynosiła dokładnie 200 px<br> Plik po przeskalowaniu należy zapisać jako promocja2.png, z zachowaniem pozostałych atrybutów,<br>w tym przezroczystości<br>Obraz 3. Lista punktowana w bloku lewym<br>Obraz 4. Zawartość formularza w bloku<br>środkowym: lista rozwijalna, zawierająca cztery<br>elementy oraz przycisk<br>Cechy witryny:<br> Składa się ze strony o nazwie index.php<br> Zastosowany właściwy standard kodowania polskich znaków<br> Tytuł strony widoczny na karcie przeglądarki „Sklep papierniczy”<br> Arkusz stylów w pliku o nazwie styl.css prawidłowo połączony z kodem strony<br> Podział strony na bloki: na górze baner, poniżej bloki: lewy, środkowy i prawy oraz na dole blok stopki.<br>Podział zrealizowany za pomocą znaczników sekcji tak, aby po uruchomieniu w przeglądarce wygląd<br>układu bloków był zgodny z obrazem 2<br> Zawartość banera: nagłówek pierwszego stopnia o treści „W naszym sklepie internetowym kupisz<br>najtaniej”<br> Zawartość bloku lewego:<br> Nagłówek trzeciego stopnia o treści „Promocja 15% obejmuje artykuły:”<br> Lista punktowana (nieuporządkowana) zgodna z obrazem 3, elementy listy generowane są<br>skryptem 1<br> Zawartość bloku środkowego:<br> Nagłówek trzeciego stopnia o treści „Cena wybranego artykułu w promocji”<br> Formularz składający się z:<br> Listy rozwijalnej zawierającej nazwy wszystkich towarów w promocji, zgodnej z obrazem 4<br> Przycisku WYBIERZ - realizującego skrypt 2<br> Formularz wysyła dane do serwera za pomocą przycisku WYBIERZ, metodą post<br> Skrypt 2<br> Zawartość bloku prawego:<br> Nagłówek trzeciego stopnia o treści: „Kontakt”<br> Umieszczony w akapicie (paragrafie) tekst „telefon: 123123123 e-mail: bok@sklep.pl” podzielony<br>na dwa wiersze (zgodnie z obrazem 2)<br> Napis bok@sklep.pl jest odsyłaczem pocztowym łączącym z tym samym adresem<br> Obraz promocja2.png z tekstem alternatywnym „promocja”<br> Zawartość stopki: nagłówek czwartego stopnia o treści „Autor strony”, dalej wstawiony Twój numer<br>PESEL<br>Styl CSS witryny internetowej<br>Formatowanie strony zawiera:<br> Format banera: kolor tła #E8C84E, wysokość 50 px, wielkość czcionki 130%, wyrównanie tekstu do<br>środka<br> Format bloku lewego: kolor tła #FFB544, wysokość 500 px, szerokość 40%, wielkość czcionki 130%<br> Format bloku środkowego: wysokość 500 px, szerokość 30%, wyrównanie tekstu do środka<br> Format bloku prawego: kolor tła #FFB544, wysokość 500 px, szerokość 30%, wielkość czcionki 130%,<br>wyrównanie tekstu do środka<br> Format stopki: kolor tła #E8C84E, wysokość 50 px, wyrównanie tekstu do prawej strony, marginesy<br>wewnętrzne 10 px<br> Format elementów listy punktowanej: margines wewnętrzny górny 30 px, kolor tła #FFAA00<br> Formatowanie obrazu i nagłówka h3: margines zewnętrzny górny 50 px<br> Formatowanie formularza: margines zewnętrzny dolny 100 px<br>Skrypt połączenia z bazą<br>W tabeli 1 podano wybór funkcji PHP do obsługi bazy danych.<br>Wymagania dotyczące skryptu:<br> Napisany w języku PHP, umieszczony w pliku index.php<br> Skrypt łączy się z serwerem bazodanowym na localhost, użytkownik root bez hasła, baza danych<br>o nazwie sklep<br> Nie jest wymagane sprawdzenie czy operacje na bazie danych powiodły się<br> Na końcu działania skrypt zamyka połączenie z serwerem<br>Skrypt 1<br> Wysyła do bazy danych zapytanie 1 (z pliku kwerendy.txt)<br> Nazwy produktów pobrane zapytaniem wypisywane są jako elementy listy punktowanej<br>(nieuporządkowanej) zgodnie z obrazem 3<br>Skrypt 2<br> Pobiera z formularza nazwę produktu wybranego w liście rozwijalnej<br> Wysyła do bazy danych zapytanie 2 (z pliku kwerendy.txt), zmodyfikowane w ten sposób, że w sekcji<br>warunku nazwa produktu jest zgodna z wyborem w liście rozwijalnej<br> Oblicza cenę w promocji jako 85% ceny pobranej zapytaniem<br> Zaokrągla obliczoną cenę do dwóch miejsc po przecinku<br> Obliczona cena w promocji wyświetlana jest poniżej formularza<br>Tabela 1. Wybór funkcji języka PHP do obsługi bazy MySQLi i MariaDB<br>Funkcje bilioteki mysqli<br>Zwracana wartość<br>mysqli_connect(serwer, użytkownik, hasło,<br>nazwa_bazy)<br>id połączenia lub FALSE, gdy niepowodzenie<br>mysqli_select_db(id_polaczenia, nazwa_bazy)<br>TRUE/FALSE w zależności od stanu operacji<br>mysqli_error(id_polaczenia)<br>Tekst komunikatu błędu<br>mysqli_close(id_polaczenia)<br>TRUE/FALSE w zależności od stanu operacji<br>mysqli_query(id_polaczenia, zapytanie)<br>Wynik zapytania<br>mysqli_fetch_row(wynik_zapytania)<br>Tablica numeryczna odpowiadająca wierszowi zapytania<br>mysqli_fetch_array(wynik_zapytania)<br>Tablica asocjacyjna odpowiadająca wierszowi zapytania lub<br>FALSE, jeżeli nie ma więcej wierszy w wyniku zapytania<br>mysqli_num_rows(wynik_zapytania)<br>Liczba wierszy w podanym wyniku zapytaniu<br>mysqli_num_fields(wynik_zapytania)<br>Liczba kolumn w podanym wyniku zapytaniu<br>UWAGA: po zakończeniu pracy utwórz plik tekstowy. Zapisz w nim nazwę przeglądarki internetowej, w której<br>weryfikowałeś poprawność działania witryny. Nazwij plik przeglądarka.txt i zapisz go w folderze<br>z numerem PESEL. Nagraj płytę z rezultatami pracy. W folderze z numerem PESEL powinny się znajdować<br>następujące pliki: przeglądarka.txt, baza.jpg, kwerenda1.jpg, kwerenda2.jpg, kwerenda3.jpg, kwerenda4.jpg,<br>kwerendy.txt, index.php, styl.css, promocja.png, promocja2.png oraz ewentualnie inne przygotowane pliki.<br>Po nagraniu płyty sprawdź poprawność nagrania. Opisz płytę swoim numerem PESEL i zapakowaną<br>w pudełku pozostaw na stanowisku wraz z arkuszem egzaminacyjnym.<br>Czas przeznaczony na wykonanie zadania wynosi 150 minut.<br>Ocenie będzie podlegać 5 rezultatów:<br> operacje na bazie danych,<br> wygląd witryny internetowej,<br> działanie witryny internetowej,<br> styl CSS witryny internetowej,<br> skrypt połączenia z bazą.<br>Wypełnia zdający<br>Do arkusza egzaminacyjnego dołączam płytę CD opisaną numerem PESEL<br>której jakość nagrania została przeze mnie sprawdzona.<br>Wypełnia Przewodniczący ZN<br>Potwierdzam, że do arkusza egzaminacyjnego dołączona jest płyta CD, opisana numerem PESEL zdającego.<br>Czytelny podpis Przewodniczącego ZN<br>,</p>","solutions":[]}