Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 12 kwietnia 2026 18:12
  • Data zakończenia: 12 kwietnia 2026 18:34

Egzamin zdany!

Wynik: 35/40 punktów (87,5%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu— sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Przykład zapytania SQL przedstawia instrukcję:

UPDATE katalog SET katalog.cena = [cena]*1.1;
A. aktualizującej
B. usuwającej
C. krzyżowej
D. dołączającej
Instrukcja SQL przedstawiona w pytaniu używa słowa kluczowego UPDATE co jest charakterystyczne dla kwerend aktualizujących. Komenda ta modyfikuje istniejące dane w tabeli poprawiając je zgodnie z podanymi kryteriami. W tym przykładzie wszystkie wartości w kolumnie cena tabeli katalog są zwiększane o 10 procent co jest typowym zastosowaniem instrukcji aktualizującej. W praktyce takie zmiany są niezbędne w przypadku modyfikacji cen produktów lub aktualizacji informacji biznesowych. Stosowanie kwerend aktualizujących wymaga zachowania szczególnej ostrożności aby nie naruszyć integralności danych. Dobre praktyki obejmują przygotowanie backupu danych przed wykonaniem operacji oraz przetestowanie kwerendy na mniejszym zbiorze danych w celu uniknięcia błędów. Aktualizacja danych to jedna z najczęstszych operacji w systemach bazodanowych dlatego zrozumienie mechanizmu działania kwerend SQL tego typu jest kluczowe dla efektywnego zarządzania danymi w każdej organizacji. SQL jako język deklaratywny umożliwia łatwe definiowanie co chcemy osiągnąć bez konieczności szczegółowego opisywania jak to zrobić co ułatwia pracę z dużymi i złożonymi zbiorami danych.

Pytanie 2

Na tabeli dania, której wiersze zostały pokazane poniżej, wykonano przedstawioną kwerendę:

SELECT * FROM dania WHERE typ < 3 AND cena < 30 LIMIT 5;
Ile wierszy wybierze ta kwerenda?
idtypnazwacena
11Gazpacho20
21Krem z warzyw25
31Gulaszowa ostra30
42Kaczka i owoc30
52Kurczak pieczony40
63wierzbowy przysmak35
72Mintał w panierce30
82Alle kotlet30
93Owoce morza20
103Grzybki, warzywka, sos15
113Orzechy i chipsy10
123Tatar i jajo15
133Bukiet warzyw10
A. 2
B. 13
C. 5
D. 8
Twoja odpowiedź jest jak najbardziej trafna. To zapytanie SQL, które mamy, wybiera z tabeli 'dania' te wiersze, gdzie 'typ' jest mniejszy niż 3, a 'cena' nie przekracza 30. Wiem, że dodanie 'LIMIT 5' może wydawać się istotne, ale w tym przypadku tak naprawdę nie wpływa to na wynik, bo tylko jeden wiersz pasuje – danie 'Gazpacho'. Warto pamiętać, że w SQL, gdy używamy warunku 'WHERE', łączymy je z operatorem AND, co oznacza, że muszą być spełnione jednocześnie. Klauzula 'LIMIT' jest przydatna w różnych sytuacjach, ale tutaj, nawet z ograniczeniem do 5, i tak mamy tylko jeden wynik.

Pytanie 3

Aby przywrócić uszkodzoną tabelę w MySQL, jakie polecenie należy wykonać?

A. CHECK TABLE
B. REPAIR TABLE
C. FIX TABLE
D. RESOLVE TABLE
Aby naprawić uszkodzoną tabelę w MySQL, należy użyć polecenia REPAIR TABLE, które jest dedykowane do przywracania integralności i usuwania problemów z danymi w tabelach MyISAM. Kiedy tabela jest uszkodzona, na przykład wskutek awarii systemu lub błędów dysku, REPAIR TABLE analizuje strukturę tabeli i podejmuje się jej naprawy. Proces ten może przywrócić usunięte wiersze oraz naprawić inne ograniczenia. Przykładowe użycie polecenia to: REPAIR TABLE nazwa_tabeli; Warto zaznaczyć, że REPAIR TABLE nie działa na tabelach InnoDB, które wymagają innych procedur naprawczych. W przypadku MyISAM, to polecenie jest często pierwszą metodą diagnostyczną, gdy pojawiają się problemy z danymi. Zgodnie z dokumentacją MySQL, REPAIR TABLE jest jednym z podstawowych narzędzi do zarządzania integralnością danych, a jego prawidłowe użycie może uratować istotne dane przed ich całkowitą utratą. Z tego powodu znajomość tego polecenia jest kluczowa dla administratorów baz danych.

Pytanie 4

Które z przedstawionych usług są niezbędne w celu udostępnienia strony internetowej pod adresem https://zawodowe.edu.pl?

A. serwer WWW, SMTP, POP3
B. DNS, FTP
C. SMTP, FTP
D. DNS, serwer WWW, certyfikat SSL
Poprawnie wybrałeś zestaw usług, które są faktycznie niezbędne, żeby strona działała pod adresem https://zawodowe.edu.pl. Po pierwsze DNS – bez tej usługi użytkownik musiałby wpisywać w przeglądarce adres IP serwera, a nie przyjazną nazwę domenową. Serwer DNS przechowuje rekordy, np. typu A lub AAAA, które mapują nazwę „zawodowe.edu.pl” na konkretny adres IP. W praktyce konfigurujesz to u rejestratora domeny albo w panelu hostingowym i dopiero wtedy domena zaczyna „wskazywać” na serwer WWW. Drugi element to serwer WWW (HTTP/HTTPS), czyli oprogramowanie typu Apache, Nginx, LiteSpeed czy IIS, które obsługuje żądania HTTP od przeglądarki, zwraca pliki HTML, CSS, JS, grafiki i generuje odpowiedzi dynamiczne (np. z PHP). Bez działającego serwera WWW sama domena byłaby bezużyteczna – przeglądarka po prostu nie miałaby skąd pobrać treści strony. Trzeci składnik, często niedoceniany, to certyfikat SSL/TLS. Ponieważ adres zaczyna się od https://, połączenie musi być szyfrowane zgodnie ze standardem TLS. Certyfikat SSL potwierdza tożsamość serwera i umożliwia nawiązanie bezpiecznego kanału komunikacyjnego (szyfrowanie, integralność, uwierzytelnienie). W praktyce oznacza to brak ostrzeżeń w przeglądarce typu „Połączenie nie jest bezpieczne” oraz spełnienie aktualnych wymogów bezpieczeństwa i RODO, szczególnie jeśli na stronie są formularze logowania czy kontaktowe. Dobre praktyki branżowe mówią dziś jasno: każda strona z logowaniem, danymi użytkowników, a tak naprawdę praktycznie każda publiczna witryna powinna działać wyłącznie w HTTPS, najlepiej z automatycznym odnowieniem certyfikatu (np. Let’s Encrypt). Moim zdaniem warto od razu przyzwyczajać się do poprawnej konfiguracji: DNS ustawiony na właściwe rekordy, serwer WWW skonfigurowany pod daną domenę (VirtualHost/ServerName) oraz poprawnie zainstalowany certyfikat SSL z przekierowaniem z HTTP na HTTPS.

Pytanie 5

Który efekt został zaprezentowany na filmie?

A. Zmniejszenie kontrastu zdjęcia.
B. Zwiększenie ostrości zdjęcia.
C. Przenikanie zdjęć.
D. Zmiana jasności zdjęć.
Poprawnie wskazany efekt to przenikanie zdjęć, często nazywane też płynnym przejściem (ang. crossfade). Polega to na tym, że jedno zdjęcie stopniowo zanika, jednocześnie drugie pojawia się z narastającą widocznością. W praktyce technicznej realizuje się to najczęściej przez zmianę przezroczystości (opacity) dwóch warstw – jedna warstwa z pierwszym obrazem ma zmniejszaną wartość opacity z 1 do 0, a druga z kolejnym zdjęciem zwiększaną z 0 do 1. Na stronach WWW taki efekt robi się zwykle za pomocą CSS (transition, animation, keyframes) albo JavaScriptu, czasem z użyciem bibliotek typu jQuery czy gotowych sliderów. Moim zdaniem to jest jeden z podstawowych efektów, który warto umieć odtworzyć, bo pojawia się w galeriach, sliderach na stronach głównych, prezentacjach produktów czy prostych pokazach slajdów. W materiałach multimedialnych, np. w edycji wideo, dokładnie ten sam efekt nazywa się przejściem typu „cross dissolve” lub „fade”, i zasada działania jest identyczna – płynne nakładanie się dwóch klatek obrazu w czasie. Dobre praktyki mówią, żeby nie przesadzać z czasem trwania przenikania: zwykle 0,5–1,5 sekundy daje przyjemny, profesjonalny wygląd, bez wrażenia „zamulenia” interfejsu. Warto też pilnować spójności – jeśli na stronie używasz przenikania w jednym miejscu, dobrze jest utrzymać podobny styl animacji w innych elementach, żeby całość wyglądała konsekwentnie i nie rozpraszała użytkownika. W kontekście multimediów na WWW przenikanie jest też korzystne wydajnościowo, bo operuje głównie na właściwości opacity i transformacjach, które przeglądarki potrafią optymalizować sprzętowo.

Pytanie 6

Czym jest DBMS?

A. Strukturalny język zapytań do bazy danych
B. System zarządzania bazą danych
C. Kaskadowy arkusz stylów do opisu wyglądu witryny www
D. Obiektowy język programowania służący do tworzenia stron www
DBMS, czyli System Zarządzania Bazą Danych, to oprogramowanie, które umożliwia tworzenie, zarządzanie i manipulowanie danymi w bazach danych. Pozwala na efektywne przechowywanie, organizowanie i odzyskiwanie informacji, co jest kluczowe w każdej aplikacji wymagającej przetwarzania danych. Przykłady popularnych systemów DBMS to MySQL, PostgreSQL oraz Oracle Database. DBMS zapewnia nie tylko bezpieczeństwo danych, lecz także umożliwia współdzielenie informacji między użytkownikami. Stosuje mechanizmy kontroli dostępu, co chroni dane przed nieautoryzowanym dostępem. Dobre praktyki w zarządzaniu bazą danych obejmują normalizację danych, co zapobiega redundancji i poprawia integralność danych. W przypadku rosnących zbiorów danych, DBMS wspiera także skalowalność, co jest niezbędne w aplikacjach internetowych, gdzie liczba użytkowników może przeszło wzrosnąć. Ponadto, DBMS wykorzystuje język SQL (Structured Query Language) do wykonywania zapytań, co jest standardem branżowym dla interakcji z bazami danych.

Pytanie 7

Które z poniższych poleceń JavaScript zmieni kolor tekstu na niebieski w paragrafie oznaczonym w HTML?

<p id="jeden">Kwalifikacja EE.01</p>
A. document.getElementById("jeden").color = "blue";
B. document.getElementById("jeden").style.color = "blue";
C. document.getElementById("jeden").style.background-color = "blue";
D. document.getElementById("jeden").background-color = "blue";
W języku JavaScript do zmiany stylu elementu HTML używamy obiektu style powiązanego z danym elementem. W przypadku zmiany koloru tekstu w akapicie używamy właściwości color. Poprawna składnia to document.getElementById("jeden").style.color = "blue";. Funkcja getElementById pobiera element o podanym identyfikatorze w tym przypadku jeden. Następnie poprzez przypisanie wartości blue do style.color zmieniamy kolor tekstu wewnątrz tego elementu na niebieski. Jest to zgodne z praktykami programowania w JavaScript ponieważ separacja stylów od treści jest istotna dla czytelności i utrzymania kodu a użycie style pozwala na bezpośrednią modyfikację właściwości CSS. Dobre praktyki sugerują aby stylowanie umieszczać w plikach CSS jednak JavaScript daje możliwość dynamicznej modyfikacji stylów co jest użyteczne w interaktywnych aplikacjach webowych. Przykładowo podczas tworzenia dynamicznych interfejsów użytkownika możemy reagować na różne zdarzenia zmieniając style elementów w odpowiedzi na działania użytkownika co zwiększa responsywność i atrakcyjność aplikacji.

Pytanie 8

Który format graficzny najlepiej nadaje się do zapisu obrazu z przezroczystością do zastosowania w serwisie internetowym?

A. BMP
B. JPG
C. SVG
D. PNG
Format PNG (Portable Network Graphics) jest najlepszym wyborem do zapisu obrazów z przezroczystością przeznaczonych na strony internetowe. PNG obsługuje przezroczystość alpha, co oznacza, że można uzyskać dowolny stopień przezroczystości na pikselach, co jest szczególnie przydatne w przypadku grafik wymagających gładkich przejść lub cieni. Dzięki temu grafiki mogą być umieszczane na różnych tłach bez widocznych krawędzi, co jest kluczowe w designie stron internetowych. Warto również zauważyć, że PNG wykorzystuje kompresję bezstratną, co oznacza, że jakość obrazu nie ulega pogorszeniu podczas zapisu. W praktyce, format PNG jest idealny do logo, ikon, obrazów z tekstem oraz ilustracji, gdzie ważna jest jakość i przezroczystość. Standardy webowe, takie jak WCAG, również zalecają używanie formatów, które zapewniają dostępność, a PNG doskonale wpisuje się w te wymagania, umożliwiając tworzenie estetycznych i funkcjonalnych stron. Ponadto, wsparcie dla formatu PNG jest szerokie, co zapewnia jego uniwersalność w różnych przeglądarkach i na różnych urządzeniach.

Pytanie 9

W HTML, aby uzyskać rezultat jak w podanym przykładzie, należy użyć struktury `

Duży tekst zwykły tekst

A. <p><big>Duży tekst</big> zwykły tekst</p>
B. <p><strike>Duży tekst</strike> zwykły tekst</p>
C. <p><strike>Duży tekst zwykły tekst</p>
D. <p><big>Duży tekst</p> zwykły tekst
Odpowiedź <p><big>Duży tekst</big> zwykły tekst</p> jest poprawna, ponieważ wykorzystuje znacznik <big>, który jest zgodny z semantyką HTML i odpowiednio formatuje tekst, zwiększając jego rozmiar. Warto zauważyć, że użycie znacznika <big> jest zgodne z praktykami, które rekomendują wykorzystanie odpowiednich znaczników do modelowania treści w dokumentach HTML. Taki zabieg nie tylko pozwala na lepszą prezentację tekstu, ale także ułatwia dostępność strony, co jest istotne w kontekście WCAG (Web Content Accessibility Guidelines). Przykładem zastosowania może być sytuacja, w której chcemy wyróżnić istotne informacje w tekście, np. nagłówki sekcji lub kluczowe dane. Zastosowanie <big> w tym kontekście zwiększa czytelność oraz zwraca uwagę użytkowników, co jest szczególnie ważne w długich dokumentach. Warto również pamiętać, że stosowanie znaczników odpowiadających ich przeznaczeniu wspiera SEO, gdyż wyszukiwarki lepiej interpretują strukturę treści. Z tego powodu, używanie semantycznych i odpowiednich znaczników, takich jak <big>, jest kluczowe dla tworzenia poprawnych i funkcjonalnych stron internetowych.

Pytanie 10

Zaprezentowano tabelę stworzoną za pomocą kodu HTML, bez zastosowania stylów CSS. Który z poniższych fragmentów kodu HTML odnosi się do pierwszego wiersza tabeli?

Ilustracja do pytania
A. C
B. A
C. B
D. D
W przypadku odpowiedzi A zastosowano znaczniki <td> co jest błędną praktyką dla nagłówków tabeli. Znaczniki <td> służą do definiowania zwykłych komórek danych a nie komórek nagłówkowych. Użycie <td> w nagłówkach pozbawia tabelę odpowiednich walorów semantycznych co utrudnia jej późniejsze stylizowanie oraz dostępność. W odpowiedzi B użyto znacznika <i> jako części nagłówków co jest nieoptymalne ponieważ znacznik ten semantycznie oznacza zmianę tonu lub stylu i nie jest przeznaczony do formatowania komórek tabeli. Oznacza to że formatowanie takie może być odebrane jako nieodpowiednie przez czytniki ekranowe co dodatkowo wpływa na dostępność. Natomiast w odpowiedzi C zastosowano znacznik <center> wewnątrz <td> co jest przestarzałą techniką HTML oraz nie jest zalecane we współczesnym tworzeniu stron internetowych. Znacznik <center> został zdeprecjonowany w HTML 4.01 i nie powinien być używany ponieważ jego funkcjonalność można osiągnąć za pomocą CSS. Wszystkie te podejścia pomijają aspekty semantycznego tworzenia stron internetowych co jest kluczowe dla utrzymania prawidłowej struktury dokumentu oraz dostępności dla użytkowników z różnymi potrzebami.

Pytanie 11

ID_PracownikaNazwiskoImięStanowiskoWynagrodzenie
1KowalskiKrzysztofkasjer3215,76
2NowakAntonikierownik5350,00
3ZającAlicjaksięgowy4568,70
4KrólWitoldkasjer3045,00
5NowikGrzegorzkasjer2750,65
6KotulskiAndrzejkierowca3467,00
7TutkaKatarzynakierownik4935,33
8PoradaJakubmagazynier3321,56
Które zapytanie SQL należy wykonać na tabeli Pracownicy, aby otrzymać średnie wynagrodzenie dla pracownika na stanowisku kasjer?
A. SELECT AVG(kasjer.Wynagrodzenie) FROM Pracownicy;
B. SELECT SREDNIA(Wynagrodzenie) AND Stanowisko='kasjer' FROM Pracownicy;
C. SELECT SUM(*) FROM Pracownicy AND Stanowisko= 'kasjer';
D. SELECT AVG(Wynagrodzenie) FROM Pracownicy WHERE Stanowisko='kasjer';
Poprawne zapytanie to SELECT AVG(Wynagrodzenie) FROM Pracownicy WHERE Stanowisko='kasjer';, bo dokładnie robi to, o co chodzi w treści zadania. Funkcja AVG() w SQL jest standardową funkcją agregującą, która liczy średnią arytmetyczną z wartości liczbowych w danej kolumnie. W tym przypadku kolumna to Wynagrodzenie, czyli kwoty wypłat, a klauzula WHERE Stanowisko='kasjer' zawęża zestaw rekordów tylko do pracowników na stanowisku kasjera. Najpierw więc silnik bazy danych filtruje wiersze (kasjerów), a dopiero potem na tej ograniczonej grupie liczy średnią. To jest bardzo typowy i poprawny schemat pracy z danymi w SQL: najpierw filtrujesz, potem agregujesz. Moim zdaniem warto zauważyć, że taka konstrukcja jest uniwersalna – w praktyce w firmach często liczy się średnie wynagrodzenia dla różnych stanowisk, działów, lokalizacji. Wtedy zmienia się tylko warunek w klauzuli WHERE. Można też pójść krok dalej i użyć GROUP BY, np. SELECT Stanowisko, AVG(Wynagrodzenie) FROM Pracownicy GROUP BY Stanowisko; żeby dostać średnie dla wszystkich stanowisk naraz, co jest wygodne np. w raportach HR. To, co masz w odpowiedzi, to w zasadzie „wersja jednostanowiskowa” takiego raportu. Ważna dobra praktyka: zawsze filtrujemy w klauzuli WHERE, a nie próbujemy wpychać warunków do funkcji agregującej. Dzięki temu zapytanie jest czytelne, zgodne ze standardem SQL i dobrze optymalizowane przez silnik bazy. W realnych projektach staramy się też nadać alias wynikom agregacji, np. SELECT AVG(Wynagrodzenie) AS SredniaKasjera FROM Pracownicy WHERE Stanowisko='kasjer';, żeby w raportach i w kodzie aplikacji od razu było wiadomo, co oznacza zwracana kolumna.

Pytanie 12

W CSS zapis w formie: p{background-image: url"rysunek.jpg")} spowoduje, że rysunek.png stanie się

A. tłem każdego bloku tekstowego
B. wyświetlany obok każdego bloku tekstowego
C. pokazany, jeśli w kodzie użyty będzie znacznik img
D. tłem całej witryny
Zapis p{background-image: url('rysunek.jpg')} oznacza, że każdy <p>, czyli paragraf, dostanie jako tło obrazek o nazwie rysunek.jpg. To jest po prostu sposób, żeby nadać każdyemu paragrafowi ten sam wygląd. Działa to świetnie, gdy chcesz, żeby cały tekst miał spójny styl czy dodać coś wizualnego do treści. Ważne, żeby ten plik rysunek.jpg był w dobrym miejscu, bo jak go nie znajdziesz, to przeglądarka go nie wczyta. Można to wykorzystać, żeby strona wyglądała bardziej estetycznie i przyciągała wzrok – każdy paragraf z własnym tłem na pewno sprawi, że będzie się lepiej czytało. Możesz też bawić się dodatkowymi właściwościami w CSS, jak background-repeat czy background-size, bo to otwiera drzwi do jeszcze ciekawszych efektów wizualnych.

Pytanie 13

W przypadku uszkodzenia serwera bazy danych, aby jak najszybciej przywrócić pełną funkcjonalność bazy danych, należy skorzystać z

A. aktualnej wersji kopii zapasowej.
B. kompletnej listy użytkowników serwera.
C. opisów struktur danych w tabelach.
D. najnowszej wersji instalacyjnej serwera.
Wybór aktualnej wersji kopii zapasowej jako najefektywniejszej metody przywrócenia działania bazy danych po awarii serwera jest zgodny z najlepszymi praktykami w zarządzaniu danymi. Kopie zapasowe stanowią kluczowy element strategii ochrony danych i powinny być regularnie tworzone, aby minimalizować ryzyko utraty informacji. W przypadku uszkodzenia serwera bazy danych, przywrócenie z najnowszej kopii zapasowej, która zawiera wszystkie aktualne dane, jest najskuteczniejszym sposobem odzyskania sprawności systemu. Kopie zapasowe można tworzyć na różne sposoby, w tym pełne, przyrostowe i różnicowe, co pozwala na elastyczność w zarządzaniu danymi. Zgodnie z rekomendacjami takich standardów jak ISO 27001, organizacje powinny wdrażać procedury tworzenia i zarządzania kopiami zapasowymi. Przykładowo, w przypadku awarii, administratorzy mogą szybko przywrócić bazę danych do stanu sprzed awarii, co znacząco ogranicza przestoje i straty finansowe związane z utratą danych.

Pytanie 14

Zawarty w ramce fragment kodu w języku JavaScript

Ilustracja do pytania
A. wyświetli długość tekstu ze zmiennej t
B. przypisze do zmiennej s zmienną t
C. przypisze zmiennej s długość tekstu ze zmiennej t
D. przypisze do zmiennej s fragment tekstu ze zmiennej t o długości określonej przez zmienną length
Funkcja length w JavaScript jest prostą i potężną metodą, która zwraca długość łańcucha znaków. W przypadku zmiennej t przypisanej do wartości Ala ma kota., kiedy wywołujemy t.length, otrzymujemy liczbę znaków w tym łańcuchu, która wynosi 12, wliczając spacje i znak kropki. Przypisanie s=t.length; oznacza, że zmienna s przyjmie wartość liczbową 12. Jest to standardowy sposób mierzenia długości tekstu w większości języków programowania i jest szeroko stosowany w codziennym programowaniu, np. przy walidacji danych wejściowych, budowaniu dynamicznych interfejsów użytkownika czy przetwarzaniu tekstu. Metoda ta jest częścią podstawowej składni JavaScriptu i jest dobrze wspierana przez wszystkie współczesne przeglądarki, co czyni ją niezawodnym narzędziem w pracy z tekstem. Rozumienie tego mechanizmu jest kluczowe dla efektywnego zarządzania danymi tekstowymi i może być rozwijane poprzez praktyczne ćwiczenia w projektach związanych z analizą tekstu czy tworzeniem dynamicznych aplikacji webowych.

Pytanie 15

Przy użyciu komendy ALTER TABLE można

A. zmodyfikować strukturę tabeli
B. zmienić dane w rekordach
C. skasować tabelę
D. usunąć dane z rekordu
Kiedy mówimy o poleceniu ALTER TABLE w SQL, to jest to naprawdę ważne narzędzie, które pozwala na zmianę struktury tabeli w bazie danych. Możemy dzięki niemu dodać nowe kolumny, zmienić rodzaj danych w istniejących czy nawet usunąć niepotrzebne kolumny. Na przykład, gdybyśmy chcieli dodać kolumnę 'data_urodzenia' do tabeli 'pracownicy', to musielibyśmy użyć takiego polecenia: ALTER TABLE pracownicy ADD data_urodzenia DATE;. To wszystko jest kluczowe, żeby nasze aplikacje mogły się rozwijać i żeby baza danych spełniała coraz to nowe wymagania. Z mojego doświadczenia wynika, że najlepiej jest zawsze robić kopię zapasową danych przed wprowadzeniem jakichkolwiek zmian. Dobrze by też było testować zmiany w środowisku, które nie jest produkcyjne, zanim coś popsujemy. Warto pamiętać, że niektóre operacje mogą wymagać zablokowania tabeli, co może skutkować tym, że użytkownicy nie będą mogli korzystać z systemu, więc trzeba to mieć na uwadze.

Pytanie 16

Czym jest relacja w bazach danych?

A. algebraicznym połączeniem tabel
B. połączeniem dwóch pól w obrębie jednej tabeli
C. logicznym połączeniem tabel
D. kluczem głównym w relacji tabel
Relacja w bazach danych to logiczne połączenie tabel, które umożliwia organizację i zarządzanie danymi w sposób umożliwiający ich efektywne przetwarzanie. W kontekście baz danych relacyjnych, relacje tworzone są na podstawie kluczy, które pozwalają na łączenie danych z różnych tabel. Na przykład, w bazie danych e-commerce, tabela 'Klienci' może być połączona z tabelą 'Zamówienia' przez klucz klienta. Dzięki temu, gdy zapytamy o zamówienia konkretnego klienta, silnik bazy danych może wykonać zapytanie łączące te obie tabele, dostarczając spójny zestaw danych. Taki model relacyjny oparty jest na teorii zbiorów i algebrze relacyjnej, co pozwala na skomplikowane operacje, takie jak łączenie, filtrowanie i agregowanie danych. W praktyce, relacje w bazach danych są kluczowe dla zapewnienia integralności danych, eliminacji redundancji oraz zwiększenia wydajności operacji na danych. Standardy takie jak SQL oparte są na tych koncepcjach, co czyni je fundamentalnymi w programowaniu baz danych.

Pytanie 17

Funkcja zapisana w języku PHP wygląda tak patrz ramka): Jej celem jest

Ilustracja do pytania
A. zwrócenie wartości 1, gdy liczba jest parzysta
B. wypisanie liczby nieparzystej
C. zwrócenie wartości 0, gdy liczba jest parzysta
D. wypisanie liczby parzystej
Funkcja w języku PHP jest zapisana w taki sposób że przyjmuje jeden argument liczba i sprawdza czy jest on parzysty. Używa operatora modulo % który zwraca resztę z dzielenia. Jeśli liczba podzielona przez 2 daje resztę równą 0 oznacza to że jest parzysta. W takim przypadku funkcja zwraca wartość 1. W przeciwnym razie czyli gdy liczba jest nieparzysta funkcja zwraca 0. Takie podejście jest częstym wzorcem w programowaniu gdyż pozwala na szybkie i efektywne sprawdzenie parzystości liczby. Stosowanie operatora modulo jest standardem w wielu językach programowania dzięki czemu kod jest zrozumiały i łatwo go przenieść między różnymi platformami. W praktyce takie funkcje mogą być używane w algorytmach gdzie konieczne jest filtrowanie danych na podstawie parzystości lub innych podobnych kryteriów. Dobre praktyki w kodowaniu w PHP obejmują również jasne nazywanie funkcji i zmiennych co poprawia czytelność i utrzymanie kodu. Można także zastanowić się nad rozszerzeniem funkcji o dodatkowe sprawdzania lub logikę w zależności od potrzeb projektu.

Pytanie 18

Podaj właściwą sekwencję przy tworzeniu bazy danych?

A. Zdefiniowanie celu, normalizacja, utworzenie relacji, stworzenie tabel
B. Zdefiniowanie celu, normalizacja, utworzenie tabel, stworzenie relacji
C. Zdefiniowanie celu, utworzenie relacji, stworzenie tabel, normalizacja
D. Zdefiniowanie celu, stworzenie tabel, utworzenie relacji, normalizacja
Prawidłowa odpowiedź wskazuje, że pierwszym krokiem w procesie tworzenia bazy danych jest określenie celu, co jest kluczowe dla zrozumienia, jakie dane będą gromadzone i w jaki sposób będą one używane. Następnie, stworzenie tabel to fundament, na którym opiera się cała baza danych. Tabele definiują struktury danych, które będą przechowywane, a ich projektowanie powinno uwzględniać normalizację, czyli proces eliminowania redundancji danych i zapewniania ich integralności. Utworzenie relacji między tabelami jest kolejnym krokiem, który pozwala na efektywne łączenie danych w różnych tabelach, co z kolei umożliwia bardziej złożone zapytania. Normalizacja, będąca ostatnim krokiem, pozwala na optymalizację struktury bazy, co zwiększa wydajność operacji. Przykład zastosowania tej kolejności można zobaczyć w projektowaniu systemów zarządzania bazami danych w przedsiębiorstwach, gdzie dokładne określenie potrzeb biznesowych wpływa na przyszłe modele danych i ich relacje.

Pytanie 19

W języku HTML, aby stworzyć pole do wprowadzania hasła, w którym tekst jest maskowany (zastąpiony kropeczkami), należy zastosować znacznik

A. <input type="password" />
B. <form="password" type="password" />
C. <form input type="password" />
D. <input name="password" />
Aby utworzyć pole edycyjne do wpisywania hasła w HTML, należy użyć znacznika <input> z atrybutem type ustawionym na 'password'. Taki typ pola edycyjnego zapewnia, że wprowadzany tekst jest maskowany, co w praktyce oznacza, że jest on wyświetlany jako kropki lub gwiazdki, co znacząco podnosi poziom bezpieczeństwa. Stosując <input type='password' />, zalecane jest również dodanie atrybutu name, co ułatwi przesyłanie danych na serwer. Warto zwrócić uwagę, że zgodnie z tym, co definiuje specyfikacja HTML5, pole to jest standardowo obsługiwane przez wszystkie nowoczesne przeglądarki. Przykład użycia: <input type='password' name='user_password' placeholder='Wpisz swoje hasło' />. Ponadto, dobrym praktyką jest stosowanie odpowiednich mechanizmów walidacji po stronie serwera, aby upewnić się, że dane przesyłane z formularzy są bezpieczne i chronione przed nieautoryzowanym dostępem. Maskowanie hasła w polach edycyjnych jest kluczowym elementem ochrony danych użytkowników w aplikacjach internetowych oraz stronach, które wymagają logowania.

Pytanie 20

Z tabel Artykuly oraz Autorzy należy wyodrębnić tylko nazwiska autorów oraz tytuły ich artykułów, które uzyskały ocenę 5. Odpowiednia kwerenda do pozyskania tych informacji ma postać

Ilustracja do pytania
A. SELECT nazwisko, tytul FROM autorzy, artykuly WHERE ocena == 5;
B. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id;
C. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = artykuly.id;
D. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id WHERE ocena = 5;
Odpowiedź SELECT nazwisko tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id WHERE ocena = 5; jest poprawna ponieważ precyzyjnie wykorzystuje konstrukcję SQL do połączenia tabel Autorzy i Artykuly. JOIN łączy te tabele na podstawie klucza obcego autorzy_id w tabeli Artykuly który odpowiada kluczowi głównemu id w tabeli Autorzy. To pozwala na uzyskanie pełnej informacji o autorach i ich artykułach. Klauzula WHERE ocena = 5 filtruje wyniki i zwraca jedynie te które mają ocenę równą 5. Jest to standardowe podejście w SQL do pobierania danych na podstawie określonych kryteriów co jest bardzo efektywne w zarządzaniu dużymi zbiorami danych. Praktyczne zastosowanie tego typu kwerend obejmuje na przykład systemy rekomendacji artykułów gdzie tylko dobrze ocenione treści są pokazywane użytkownikom. Stosowanie takich kwerend zgodnie z najlepszymi praktykami pozwala na utrzymanie wydajności bazy danych oraz na zapewnienie integralności danych co jest kluczowe w profesjonalnym zarządzaniu bazami danych.

Pytanie 21

W znaczniku <meta ...> w sekcji <meta ...> na stronie internetowej nie zamieszcza się informacji o

A. typie dokumentu
B. kodowaniu
C. autorze
D. automatycznym odświeżaniu
Wszystkie wymienione odpowiedzi, z wyjątkiem informacji dotyczącej typu dokumentu, są poprawne i mogą być umieszczane w znaczniku <meta>. Informacja o autorze jest istotna, ponieważ pozwala wskazać osobę odpowiedzialną za treść na stronie, co może być ważne w kontekście cytowania i prawa autorskiego. Wyszukiwarki również mogą brać pod uwagę te informacje w kontekście wiarygodności źródła. Z kolei kodowanie jest kluczowe, ponieważ określa, w jaki sposób znaki są interpretowane przez przeglądarkę, co ma fundamentalne znaczenie dla prawidłowego wyświetlania treści, zwłaszcza w przypadku stron wielojęzycznych. Możliwość określenia kodowania w znaczniku <meta charset='UTF-8'> jest powszechnie stosowana, aby zapewnić, że wszystkie znaki są renderowane poprawnie. Automatyczne odświeżanie za pomocą znacznika <meta http-equiv='refresh' content='30'> jest przydatne, gdy strona potrzebuje być często aktualizowana, na przykład w przypadku stron informacyjnych czy serwisów newsowych. Dlatego też, umieszczanie tych informacji w znaczniku <meta> jest zgodne z praktykami webowymi i przyczynia się do poprawy działania strony oraz jej optymalizacji dla użytkowników i wyszukiwarek.

Pytanie 22

Wskaż NIEPRAWIDŁOWE stwierdzenie dotyczące normalizacji dźwięku

A. Opcja normalizacja znajduje się w menu programu do edycji dźwięku
B. Jeśli najgłośniejszy element dźwięku osiąga połowę skali, wszystko zostanie zwiększone razy dwa - tak, aby najgłośniejszy element dotarł do maksimum na skali
C. W wyniku normalizacji następuje wyrównanie poziomu głośności całego nagrania
D. Normalizacja polega na obniżeniu poziomu najgłośniejszej próbki w sygnale do ustalonej wartości, a następnie proporcjonalnym zwiększeniu głośności pozostałych części sygnału
Odpowiedź jest prawidłowa, ponieważ proces normalizacji sygnału dźwiękowego faktycznie polega na dostosowywaniu głośności nagrania w taki sposób, aby najgłośniejszy fragment osiągał maksymalny poziom na skali. W praktyce, jeżeli najgłośniejszy element sygnału osiąga połowę skali, program do obróbki dźwięku zwiększa głośność wszystkich innych fragmentów, aby najgłośniejszy osiągnął pełną głośność. To działanie jest zgodne z powszechnie przyjętymi standardami normalizacji dźwięku, które zapewniają, że nagrania mają spójny poziom głośności, co jest istotne w produkcji audio, aby nie występowały nagłe zmiany głośności pomiędzy różnymi utworami. Normalizacja jest szczególnie przydatna w kontekście przygotowywania materiałów do publikacji, takich jak albumy muzyczne czy podcasty, gdzie istotne jest, by słuchacz nie musiał regulować głośności podczas odtwarzania różnych nagrań. Przykładem może być album muzyczny, gdzie różne utwory mogą mieć różne poziomy nagrania, a normalizacja pozwala na ich wyrównanie w celu uzyskania jednolitego doświadczenia słuchowego.

Pytanie 23

Wskaż kod równoważny do przedstawionego kodu zapisanego językiem PHP.

$suma = 0;
for ($x = 10; $x <= 20; $x++) {
    $suma += $x;
}
Kod 1.
$suma = 0;
while ($x <= 20) {
    $suma += $x;
    $x++;
}
Kod 2.
$suma = 0;
$x = 10;
while ($x <= 20) {
    $suma += $x;
    $x++;
}
Kod 3.
$suma = 0;
$x = 1;
while ($x <= 10) {
    $suma += $x;
    $x++;
}
Kod 4.
$suma = 0;
$x = 10;
while ($x <= 20) {
    $suma = $x;
    $x++;
}
A. Kod 3.
B. Kod 2.
C. Kod 1.
D. Kod 4.
Gratulacje, Twoja odpowiedź jest poprawna! Wybrałeś Kod 2, który jest równoważny do kodu PHP przedstawionego w pytaniu. Kod ten składa się z pętli while, która jest zainicjowana wartością $x równą 10. Pętla ta jest wykonywana, aż wartość zmiennej $x osiągnie 20. Co ważne, za każdym obiegiem pętli wartość zmiennej $x jest inkrementowana, co jest równoważne do działania pętli for w kodzie PHP. Wykorzystanie różnych rodzajów pętli do osiągnięcia tego samego efektu jest dobrym przykładem na to, jak różne konstrukcje języka programowania mogą służyć do rozwiązania tego samego problemu. Pamiętaj, że wybór pętli zależy od kontekstu. Pętle for są zazwyczaj używane, kiedy z góry wiemy ile razy pętla ma być wykonana. Pętle while są często wykorzystywane, gdy nie wiemy ile razy pętla ma być wykonana, ale znamy warunek jej zakończenia. To praktyczna wiedza, którą możesz zastosować w codziennym programowaniu.

Pytanie 24

Kod w języku PHP przedstawia się następująco (patrz ramka): Zakładając, że zmienne a, b, c mają wartości numeryczne, wynik warunku będzie skutkował wypisaniem liczby:

if ($a > $b && $a > $c)
    echo $a;
else if ($b > $c)
    echo $b;
else
    echo $c;
A. najmniejszej.
B. największej.
C. nieparzystej.
D. parzystej.
Kod PHP używa instrukcji warunkowych if aby porównać wartości trzech zmiennych a b i c. Pierwsza instrukcja if sprawdza czy a jest większe od b i c. Jeśli tak to echo a wyświetla wartość a jako największą. Jeśli ten warunek nie jest spełniony sprawdzamy czy b jest większe od c za pomocą else if. Jeśli b jest rzeczywiście większe to echo b wyświetla wartość b. W przeciwnym razie instrukcja else zakłada że c jest największe i wyświetla echo c. To podejście jest powszechnie stosowane w programowaniu i opiera się na dobrej praktyce stopniowego eliminowania przypadków poprzez logiczne porównania. Znajomość takich konstrukcji jest kluczowa w codziennej pracy programisty umożliwiając tworzenie efektywnego i czytelnego kodu. Tego rodzaju struktura logiczna należy do podstawowych elementów algorytmiki w programowaniu proceduralnym i obiektowym. Rozumienie jak struktury kontrolne wpływają na przepływ programu jest podstawą efektywnego kodowania oraz rozwiązywania problemów poprzez algorytmy.

Pytanie 25

Aby na stronie internetowej umieścić logo z przezroczystym tłem, jaki format powinien być zastosowany?

A. JPG
B. CDR
C. BMP
D. PNG
Format PNG (Portable Network Graphics) jest preferowany do przechowywania obrazów z przezroczystym tłem, co czyni go idealnym wyborem dla logo. Główne zalety PNG to obsługa przezroczystości oraz wysoka jakość grafiki bez utraty danych, dzięki kompresji bezstratnej. W praktyce, kiedy logo jest umieszczane na różnych tłach, przezroczystość pozwala na harmonijne wpasowanie się w otoczenie, co zwiększa estetykę strony. Ponadto, PNG obsługuje różne poziomy przezroczystości (alfa), co daje projektantom więcej możliwości w zakresie efektów wizualnych. Użycie PNG w projektach internetowych jest zgodne z dobrymi praktykami w zakresie tworzenia responsywnych i estetycznych interfejsów, a także zapewnia kompatybilność z większością przeglądarek internetowych. Warto zauważyć, że PNG jest również często stosowany w grafikach wektorowych i ikonach, które wymagają przejrzystości. Korzystając z PNG, projektanci mogą być pewni, że ich grafiki będą wyglądać profesjonalnie na każdej platformie.

Pytanie 26

Która z list jest interpretacją podanego kodu?

Ilustracja do pytania
A. Rys. C
B. Rys. B
C. Rys. D
D. Rys. A
Częstym błędem przy interpretacji kodu HTML jest niepoprawne rozumienie zagnieżdżania list lub ich typów. W przypadku pytania mamy do czynienia z jedną listą uporządkowaną ol która zawiera inne listy nieuporządkowane ul W niektórych odpowiedziach przewidziano błędnie że wszystkie elementy są częścią jednej listy nieuporządkowanej co nie jest zgodne z przedstawionym kodem Listy ol i ul pełnią różne role w HTML Specyfikacja HTML jasno określa że uporządkowane listy ol są używane wtedy gdy kolejność elementów ma znaczenie zaś nieuporządkowane ul gdy kolejność jest nieważna Źle zidentyfikowanie tych typów może prowadzić do błędów w prezentacji danych i wpływać na ich semantyczne znaczenie w dokumentach Aby uniknąć takich błędów warto zapoznać się z dokumentacją W3C oraz stosować się do dobrych praktyk kodowania takich jak wyraźne zagnieżdżanie list i zachowanie ich semantycznego sensu Utrzymywanie przejrzystości kodu zwiększa również jego dostępność i SEO co jest ważne w profesjonalnym tworzeniu stron internetowych

Pytanie 27

Jakiego zdarzenia należy użyć, aby funkcja JavaScript była uruchamiana za każdym razem, gdy użytkownik wprowadzi jakikolwiek znak w polu edycji?

A. onclick
B. onmouseout
C. onkeydown
D. onload
Odpowiedź 'onkeydown' jest poprawna, ponieważ to zdarzenie jest wywoływane za każdym razem, gdy użytkownik naciśnie klawisz na klawiaturze, a zatem idealnie nadaje się do sytuacji, gdy chcemy reagować na wprowadzanie tekstu w polu edycji. W praktyce oznacza to, że nasza funkcja może być użyta do natychmiastowego przetwarzania danych wprowadzanych przez użytkownika, co jest szczególnie istotne w przypadku dynamicznych interfejsów użytkownika. Na przykład, możemy wykorzystać 'onkeydown' do implementacji funkcji autouzupełniania, gdzie na bieżąco prezentujemy możliwe opcje na podstawie wprowadzanego tekstu. Dobrą praktyką jest również umieszczanie dodatkowych warunków, aby nasza funkcja nie była wywoływana dla klawiszy, które nie mają znaczenia dla wprowadzania tekstu, takich jak klawisze funkcyjne czy kombinacje klawiszy. Warto również zrozumieć, że istnieją inne zdarzenia, takie jak 'input', które mogą być użyte w podobnym kontekście, ale 'onkeydown' daje bardziej bezpośrednią kontrolę nad interakcją użytkownika.

Pytanie 28

W jakim standardzie języka hipertekstowego wprowadzono do składni znaczniki sekcji <footer>, <header>, <nav>?

A. HTML5
B. HTML4
C. XHTML 2.0
D. XHTML1.0
HTML5 wprowadził nowe znaczniki semantyczne, takie jak <header>, <footer> oraz <nav>, które mają na celu poprawę struktury i czytelności kodu HTML. Te znaczniki pozwalają na lepsze określenie ról poszczególnych części dokumentu, co jest istotne zarówno dla programistów, jak i dla wyszukiwarek internetowych oraz oprogramowania asystującego. Przykładowo, znacznik <header> zazwyczaj zawiera nagłówki i metadane, podczas gdy <footer> jest przeznaczony na informacje końcowe, takie jak prawa autorskie czy linki do polityki prywatności. Z kolei <nav> wskazuje sekcję nawigacyjną, co ułatwia użytkownikom poruszanie się po stronie. Użycie tych znaczników zgodnie z ich zamierzonymi funkcjami poprawia semantykę dokumentu HTML5, co jest zgodne z najlepszymi praktykami w zakresie SEO i dostępności. Warto również zauważyć, że HTML5 wprowadza inne elementy, takie jak <article> czy <section>, które dodatkowo wspierają tworzenie dobrze zorganizowanej i zrozumiałej struktury dokumentu. W związku z tym, stosowanie nowych znaczników w HTML5 jest niezwykle korzystne zarówno dla twórców, jak i dla użytkowników stron internetowych.

Pytanie 29

W tabeli mieszkańcy zawierającej pola id, imie, nazwisko, ulica, numer, czynsz (wartość całkowita) należy zidentyfikować osoby zamieszkujące ulicę Mickiewicza pod numerami 71, 72, 80, których czynsz jest niższy niż
1000 zł. Jak będzie wyglądać klauzula WHERE w zapytaniu?

A. WHERE ulica = 'Mickiewicza' AND numer IN (71, 72, 80) OR czynsz < 1000
B. WHERE ulica = 'Mickiewicza' AND numer > 70 AND numer < 81 OR czynsz < 1000
C. WHERE ulica = 'Mickiewicza' OR numer IN (71, 72, 80) OR czynsz < 1000
D. WHERE ulica = 'Mickiewicza' AND numer IN (71, 72, 80) AND czynsz < 1000
Odpowiedź jest prawidłowa, ponieważ klauzula WHERE w zapytaniu SQL skutecznie filtruje dane zgodnie z wymaganiami. W tym przypadku, użycie operatora AND w połączeniu z IN i warunkiem < 1000 zapewnia, że zwrócone zostaną jedynie te rekordy, które spełniają wszystkie trzy kryteria: ulica musi być 'Mickiewicza', numer musi być jednym z 71, 72 lub 80, a czynsz musi być mniejszy niż 1000 zł. To jest zgodne z dobrą praktyką w SQL, gdzie łączenie warunków z użyciem operatorów logicznych pozwala na precyzyjne określenie zestawu danych, które nas interesują. Przy tak skonstruowanej klauzuli, zapytanie będzie wydajne i zrozumiałe, co jest kluczowe w pracy z bazami danych. Przykładowe zastosowanie to generowanie raportów dotyczących mieszkańców, co może być istotne dla zarządzania nieruchomościami lub analizy rynku wynajmu. Tego typu zapytania są powszechnie używane w aplikacjach webowych i systemach zarządzania danymi, co podkreśla znaczenie umiejętności formułowania precyzyjnych zapytań SQL.

Pytanie 30

Co można powiedzieć o stylu hiperłącza na podstawie opisu CSS, zakładając, że żadne inne style nie zostały zdefiniowane?

a:link {
  color: green;
  text-decoration: none;
}

a:hover {
  color: red;
  text-decoration: underline;
}
A. Gdy hiperłącze jest nieodwiedzone, jego tekst jest koloru niebieskiego z podkreśleniem.
B. Gdy kursor znajdzie się na obszarze hiperłącza, pojawia się podkreślenie i tekst przyjmuje kolor czerwony.
C. Tekst odwiedzonego hiperłącza jest koloru czerwonego.
D. Hiperłącze jest zawsze podkreślone.
Twoja odpowiedź jest poprawna. W przypadku hiperłącza, w momencie, gdy kursor znajduje się na obszarze hiperłącza, pojawia się podkreślenie i tekst przyjmuje kolor czerwony. Jest to efekt zastosowania stylu CSS w stanie 'hover'. Styl ten umożliwia dynamiczną zmianę wyglądu elementu, kiedy kursor myszy znajduje się nad nim. Jest to praktyka powszechnie stosowana w celu zwiększenia użyteczności i interaktywności stron internetowych. Dobrą praktyką jest również zapewnienie kontrastu między kolorem tła a tekstem dla lepszej czytelności. W tym przypadku, kolor tekstu zmienia się na czerwony, co zapewnia wyraźny kontrast i zwraca uwagę użytkownika. Równocześnie dodanie podkreślenia jest dodatkowym wizualnym wskaźnikiem, że dany element jest hiperłączem. Zastosowanie takiego stylu pozwala na intuicyjne i efektywne poruszanie się po stronie internetowej.

Pytanie 31

Wskaż właściwy sposób zapisu instrukcji w języku JavaScript.

A. document.write("Liczba π z dokładnością do 2 miejsc po przecinku ≈ " 3.14 );
B. document.write("Liczba π z dokładnością do 2 miejsc po przecinku ≈ " + 3.14 );
C. document.write("Liczba π z dokładnością do 2 miejsc po przecinku ≈ " ; 3.14 );
D. document.write("Liczba π z dokładnością do 2 miejsc po przecinku ≈ " . 3.14 );
Poprawna odpowiedź to 'document.write("Liczba π z dokładnością do 2 miejsc po przecinku ≈ " + 3.14);'. Ta instrukcja w języku JavaScript umożliwia wyświetlenie tekstu oraz wartości liczbowej na stronie internetowej. Kluczowym elementem jest operator konkatenacji '+', który służy do łączenia ze sobą dwóch lub więcej stringów. W tym przypadku łączymy tekst z wartością liczby π. Użycie podwójnych cudzysłowów do otoczenia tekstu jest poprawne, a znaki ucieczki (backslash) przed cudzysłowami wewnętrznymi zapewniają, że JavaScript prawidłowo interpretuje je jako część tekstu, a nie zakończenie stringa. W praktyce często korzysta się z tego typu zapisów do dynamicznego generowania treści na stronach internetowych, co jest zgodne z zasadami programowania obiektowego oraz dobrymi praktykami w zakresie czytelności kodu. Warto również zauważyć, że 'document.write' jest funkcją, którą należy stosować ostrożnie, gdyż może nadpisywać istniejącą zawartość strony, jeśli użyta zostanie po załadowaniu DOM. Dlatego w nowoczesnych aplikacjach webowych preferowane są inne metody, takie jak manipulacja DOM poprzez metody 'appendChild' lub 'innerHTML'.

Pytanie 32

Aby skutecznie stworzyć relację typu m…n, która będzie wolna od redundancji danych, konieczne jest

A. uporządkowanie przynajmniej jednej z tabel.
B. bezpośrednie połączenie kluczy podstawowych obu tabel.
C. bezpośrednie połączenie kluczy obcych z obu tabel.
D. zaprojektowanie tabeli pomocniczej.
Bezpośrednie połączenie kluczy obcych obu tabel w relacji m:n nie jest wystarczające, aby uniknąć redundancji danych. W rzeczywistości, klucze obce mają swoje zastosowanie w relacjach jeden do wielu, gdzie jedna z tabel zawiera odniesienia do drugiej. W przypadku relacji m:n, takie podejście prowadziłoby do powstania złożonych i nieczytelnych struktur, w których dane byłyby przetrzymywane wielokrotnie, co naruszałoby zasady normalizacji. Na przykład, gdybyśmy spróbowali bezpośrednio połączyć klucze obce studentów i kursów, każda kombinacja studenta i kursu byłaby wprowadzana do tej samej tabeli, co prowadziłoby do powielania informacji i wzrostu rozmiaru bazy danych bez rzeczywistej wartości. Ponadto, sortowanie jednej z tabel nie ma wpływu na strukturę relacji m:n; sortowanie jest operacją na poziomie zapytań, a nie na poziomie architektury bazy danych. Łączenie kluczy podstawowych także nie rozwiązuje problemu redundancji, ponieważ nie tworzy połączenia, które umożliwiłoby wielokrotne przypisanie tych samych elementów między tabelami. Właściwe podejście wymaga utworzenia tabeli pomocniczej, co jest powszechną praktyką w projektowaniu baz danych i zapewnia przejrzystość oraz efektywność operacyjną.

Pytanie 33

W języku PHP, aby nawiązać połączenie z bazą danych MySQL przy użyciu biblioteki mysqli, w poniższym zapisie w miejsce litery 'c' należy wpisać:

$a = new mysqli('b', 'c', 'd', 'e');
A. nazwa bazy danych
B. adres serwera bazy danych
C. nazwa użytkownika
D. hasło dla użytkownika
Odpowiedź 'nazwa użytkownika' jest na pewno właściwa, bo w konstruktorze klasy mysqli w PHP musimy podać nazwę użytkownika jako drugi argument. To ważne, bo bez tych danych, czyli nazwy użytkownika i hasła, nie da się połączyć z bazą danych. Używanie mysqli to dobra praktyka, zwłaszcza jeśli chodzi o bezpieczeństwo przed atakami SQL injection. Jak chcemy się połączyć, to zapisujemy to tak: $a = new mysqli('localhost', 'nazwa_użytkownika', 'hasło', 'nazwa_bazy'). Dzięki temu możemy na przykład ściągnąć dane z tabeli 'użytkownicy'. Warto też pamiętać o walidacji danych wejściowych i korzystaniu z przygotowanych zapytań, bo to naprawdę podnosi poziom bezpieczeństwa naszej aplikacji. I nie zapominaj, żeby zamknąć połączenie po zakończonej pracy, używając metody close().

Pytanie 34

Aby strona internetowa poprawnie dostosowała się do urządzeń mobilnych, należy określić rozmiar czcionki

A. tylko z wykorzystaniem znaczników big i small
B. w pikselach
C. w procentach
D. w milimetrach
Aby witryna internetowa prawidłowo skalowała się na urządzeniach mobilnych, zaleca się definiowanie wielkości czcionki w procentach. Używanie procentów zapewnia elastyczność i responsywność interfejsu użytkownika, co jest kluczowe w kontekście różnorodności rozmiarów ekranów. Procentowe jednostki (np. 100%, 150%) są relatywne do rodzica (elementu, w którym się znajdują), co pozwala na automatyczne dostosowywanie się do zmieniających się warunków wyświetlania. Takie podejście jest zgodne z zasadami responsywnego projektowania, które kładzie nacisk na dostosowanie zawartości do różnych rozmiarów ekranów. Ponadto, używanie procentów w połączeniu z jednostkami em i rem, które również są skalowalne, pozwala na tworzenie bardziej dostępnych i przyjaznych dla użytkownika interfejsów. Przykładem może być zdefiniowanie wielkości czcionki nagłówka jako 120%, co sprawi, że będzie ona 20% większa od wielkości czcionki tekstu bazowego, co poprawi czytelność na mniejszych urządzeniach. Warto również zauważyć, że takie podejście wspiera standardy dostępności, co jest istotne w kontekście SEO i doświadczenia użytkownika.

Pytanie 35

Jaką funkcję spełnia atrybut value w polu formularza XHTML?

<input type="text" name="name" value="value">
A. określa domyślną wartość
B. definiuje maksymalną długość pola
C. czyni pole jedynie do odczytu
D. określa nazwę pola
Atrybut value w polu formularza XHTML określa domyślną wartość, jaka pojawi się w polu tekstowym po załadowaniu strony. Jest to przydatne, gdy chcemy zasugerować użytkownikowi domyślne dane lub ułatwić wprowadzanie informacji. Przykładem może być formularz logowania, gdzie atrybut value jest używany do wczytywania zapisanego wcześniej adresu e-mail użytkownika. W formularzach XHTML stosuje się ten atrybut zgodnie z dobrymi praktykami, aby poprawić doświadczenie użytkownika i ułatwić interakcję z witryną. Warto zauważyć, że w przypadku innych typów pól formularzy, na przykład checkbox lub radio, atrybut value określa wartość, która zostanie przesłana, gdy dane pole zostanie zaznaczone. W kontekście dobrych praktyk należy także pamiętać o zabezpieczeniach formularzy, takich jak walidacja danych po stronie serwera, aby zapobiec potencjalnym lukom bezpieczeństwa wynikającym z nieoczekiwanych danych wejściowych. Stosowanie atrybutu value w sposób przemyślany pozwala również na lepszą integrację formularzy z mechanizmami autouzupełniania przeglądarek, co jest korzystne dla użytkowników

Pytanie 36

Podczas wykonywania zapytania można skorzystać z klauzuli DROP COLUMN

A. ALTER TABLE
B. DROP TABLE
C. CREATE TABLE
D. ALTER COLUMN
Pozostałe odpowiedzi odzwierciedlają nieprawidłowe zrozumienie kontekstu zapytań SQL i ich zastosowania. DROP TABLE jest poleceniem służącym do usunięcia całej tabeli, co oznacza, że wszystkie dane w tej tabeli zostaną bezpowrotnie skasowane. To podejście odnosi się do całkowitego likwidowania tabeli, a nie pojedynczych kolumn, co czyni je nieadekwatnym w kontekście zadania. W podobny sposób, ALTER COLUMN to niepoprawne określenie, ponieważ polecenie ALTER TABLE używa się do modyfikacji kolumn, a nie do ich usuwania. Użycie ALTER COLUMN wymagałoby określenia jakiejś zmiany w strukturze kolumny, a pytanie dotyczy usunięcia kolumny, co jest realizowane poprzez DROP COLUMN. Z kolei CREATE TABLE jest używane do tworzenia nowych tabel, co również jest niezgodne z wymaganiami pytania, które dotyczy modyfikacji istniejącej struktury. Te błędne wybory mogą wynikać z mylenia pojęć związanych z działaniem na bazach danych oraz z braku zrozumienia, jak odpowiednie polecenia SQL są stosowane w praktyce. Kluczowe jest zrozumienie, że każde z wymienionych poleceń ma swoje specyficzne zastosowanie, a ich pomylenie prowadzi do nieefektywnego zarządzania danymi.

Pytanie 37

Element lub zestaw elementów, który jednoznacznie identyfikuje każdy pojedynczy rekord w tabeli bazy danych, nazywamy kluczem

A. inkrementacyjny
B. przestawny
C. obcy
D. podstawowy
Klucz podstawowy (ang. primary key) jest to pole lub zbiór pól w tabeli bazy danych, które jednoznacznie identyfikują każdy row w tej tabeli. Klucz podstawowy nie może zawierać wartości NULL i musi być unikalny dla każdego rekordu, co zapewnia integralność danych w bazie. Przykładem klucza podstawowego może być identyfikator użytkownika w tabeli użytkowników, gdzie każdy użytkownik ma unikalny numer ID. Zgodnie z normami projektowania baz danych, klucz podstawowy powinien być prosty, a jego wartość nie powinna się zmieniać w czasie, aby zachować stabilność odniesień do tego rekordu w innych tabelach. W dobrych praktykach projektowania baz danych dla kluczy podstawowych często stosuje się typy danych takie jak INTEGER z automatycznym inkrementowaniem, co umożliwia wygodne dodawanie nowych rekordów bez ryzyka kolizji wartości. Używanie kluczy podstawowych ułatwia również tworzenie relacji z innymi tabelami, znanych jako klucze obce, co jest fundamentem relacyjnych baz danych.

Pytanie 38

W każdej iteracji pętli wartość aktualnego elementu tablicy jest przypisywana do zmiennej, a wskaźnik tablicy przesuwa się o jeden, aż do osiągnięcia ostatniego elementu tablicy. To stwierdzenie jest prawdziwe w kontekście instrukcji

A. next
B. if
C. switch
D. foreach
Instrukcja foreach w językach programowania takich jak PHP, Java, C# czy Java jest dedykowana do iteracji po elementach kolekcji, takich jak tablice, listy czy inne struktury danych. Umożliwia ona programiście wygodne przetwarzanie każdego elementu kolekcji bez konieczności ręcznego zarządzania wskaźnikiem lub indeksem. W przypadku foreach, podczas każdej iteracji wartość bieżącego elementu tablicy jest automatycznie przypisywana do zmiennej, co zwiększa czytelność kodu oraz redukuje ryzyko błędów związanych z indeksowaniem. Przykładowo, w języku PHP, zamiast używania tradycyjnej pętli for, możemy użyć: foreach ($array as $value) { // operacje na $value }. Dzięki temu kod jest bardziej zrozumiały i elegancki. Warto zaznaczyć, że foreach nie pozwala na modyfikację samej tablicy w trakcie jej iteracji, co jest istotne dla zachowania integralności danych. Standardy definicji tych instrukcji można znaleźć w dokumentacji każdego z wymienionych języków, co podkreśla ich powszechne zastosowanie oraz zalety w programowaniu.

Pytanie 39

Jaką wartość przyjmie zmienna a po wykonaniu poniższej sekwencji komend w PHP?

$a = 1;
$a++;
$a += 10;
--$a;
A. 12
B. 1
C. 10
D. 11
Zmienna a początkowo jest ustawiona na wartość 1. Instrukcja $a++ to postinkrementacja co oznacza że pierwotna wartość zmiennej a jest użyta w bieżącym wyrażeniu a dopiero potem zwiększana. Po wykonaniu tej instrukcji a staje się 2. Następnie $a += 10 zwiększa wartość o 10 co daje nam 12. Ostatecznie instrukcja --$a to predekrementacja co oznacza że zmniejsza wartość przed użyciem w wyrażeniu. W efekcie końcowym a wynosi 11. W praktyce zrozumienie różnic między inkrementacją a dekrementacją jest kluczowe dla efektywnego kodowania zwłaszcza przy operacjach na licznikach w pętlach. Dobre praktyki w programowaniu zalecają świadome stosowanie post- i preinkrementacji oraz zrozumienie jak te operacje wpływają na logikę programu. Umiejętność przewidywania efektów tych operacji jest jedną z podstawowych kompetencji programistycznych która znacząco wpływa na jakość i niezawodność tworzonego oprogramowania. Warto także zwrócić uwagę na zachowanie tych operatorów w różnych językach programowania ponieważ mimo pewnych podobieństw zachowanie może się różnić

Pytanie 40

Czy poniższy kod PHP działa poprawnie, wyświetlając na stronie dane pobrane z bazy danych? Ile pól zostanie zaprezentowanych?

$ile = mysqli_num_rows($zapytanie);
for ($i = 0; $i < $ile; $i++)
{
  $wiersz = mysqli_fetch_row($zapytanie);
  echo "<p>Klient: $wiersz[0] $wiersz[1], adres: $wiersz[2] </p>";
}
A. Z czterech pól
B. Z dwóch pól
C. Z jednego pola
D. Z trzech pól
Kod PHP wykorzystuje funkcję mysqli_fetch_row aby pobrać dane z bazy danych które są następnie wyświetlane. W funkcji tej każda wiersz z wyników zapytania jest reprezentowany jako tablica indeksowana liczbowo. W zaprezentowanym fragmencie kodu mamy dostęp do trzech indeksów: $wiersz[0] $wiersz[1] oraz $wiersz[2]. Oznacza to że z każdego wiersza wyniku kwerendy pobierane są trzy pola. Kod ten wyświetla dane w formacie paragrafu HTML zawierającego imię i nazwisko klienta oraz jego adres. W praktyce taka konstrukcja jest często wykorzystywana do generowania dynamicznych treści na stronie internetowej. Należy jednak pamiętać o zabezpieczeniach takich jak filtrowanie danych wejściowych aby uniknąć zagrożeń związanych z SQL injection. Warto również rozważyć wykorzystanie bardziej złożonych struktur danych jak tablice asocjacyjne które pozwalają na bardziej czytelne i zrozumiałe odwoływanie się do poszczególnych pól wiersza danych zwłaszcza w przypadku większych projektów. Użycie mysqli_fetch_row jest zgodne z dobrą praktyką jeśli chcemy uzyskać dostęp do danych w sposób sekwencyjny i wydajny