Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 8 czerwca 2026 08:16
  • Data zakończenia: 8 czerwca 2026 08:37

Egzamin zdany!

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

Wymagane minimum: 20 punktów (50%)

Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Co przechowuje w PHP predefiniowana zmienna $_SESSION?

A. zmienne zarejestrowane w bieżącej sesji
B. listę wszystkich sesji na serwerze
C. zmienne przesłane z formularza
D. zmienne przesłane przez ciasteczka
Superglobalna $_SESSION przechowuje zmienne zarejestrowane w BIEŻĄCEJ sesji użytkownika - dane utrzymywane między kolejnymi stronami, np. login zalogowanej osoby czy zawartość koszyka. Dlatego trzyma zmienne bieżącej sesji.

Pytanie 2

Które spośród poniższych zdań dotyczących definicji funkcji umieszczonej w ramce jest prawidłowe?

function czytajImie(){
var imie=null;
do{
imie=prompt("podaj imie: ");
if(imie.length<3) alert("wprowadzony tekst jest niepoprawny");
}while(imie.length<3);
}
A. Pętla wykona się tylko jeden raz
B. Funkcja zawiera pętlę, która powtarza się 3 razy
C. Tekst będzie odczytywany do chwili, gdy podana zostanie liczba większa niż 3
D. Wczytywanie tekstu zakończy się, gdy tekst będzie się składał przynajmniej z 3 znaków
Prawidłowa odpowiedź odnosi się do warunku zakończenia pętli do while w języku JavaScript. Pętla ta wykonuje się co najmniej raz, ponieważ najpierw wykonuje blok kodu, a dopiero potem sprawdza warunek. W tym przypadku, użytkownik jest proszony o wprowadzenie tekstu reprezentującego imię. Instrukcja if sprawdza, czy wprowadzone imię ma mniej niż 3 znaki. Jeśli tak, pojawia się komunikat, że tekst jest nieprawidłowy, a pętla ponownie prosi o podanie imienia. Proces ten powtarza się, dopóki użytkownik nie wprowadzi imienia o długości co najmniej 3 znaków. Jest to typowa technika walidacji danych wejściowych, zapewniająca, że użytkownik wprowadzi wartości spełniające określone kryteria. Taki sposób walidacji jest stosowany w aplikacjach wymagających dokładności danych wejściowych, zwłaszcza w formularzach internetowych, gdzie poprawność danych jest kluczowa. Praktyka ta pomaga w zapewnieniu, że dane są kompletne i zgodne z wymaganiami biznesowymi, co jest istotne w programowaniu front-end.

Pytanie 3

Jakim formatem plików dźwiękowych charakteryzuje się kompresja bezstratna?

A. MP3
B. WAW
C. FLAC
D. MPEG
FLAC, czyli Free Lossless Audio Codec, to format dźwiękowy, który kompresuje pliki, ale nie traci przy tym żadnych danych. Dzięki temu jakość dźwięku pozostaje taka sama jak w oryginale, co jest super ważne dla audiofilów i profesjonalnych producentów. Wiesz, FLAC jest popularny wśród miłośników muzyki, bo pozwala na przechowywanie wysokiej jakości utworów w mniejszych plikach niż WAV, który potrafi zająć naprawdę dużo miejsca. Poza tym wiele odtwarzaczy audio i programów do edycji dźwięku obsługuje ten format, więc jest naprawdę uniwersalny. Można też dodawać metadane, czyli informacje o wykonawcy czy albumie, co jest bardzo przydatne. No i nie zapominajmy, że FLAC jest otwartym standardem, co oznacza, że każdy może z niego korzystać bez opłat – to na pewno przyczynia się do jego popularności, zarówno wśród amatorów, jak i profesjonalistów.

Pytanie 4

Atrybut colspan służy do poziomego łączenia komórek tabeli, natomiast rowspan pozwala na łączenie ich w pionie. Którą z poniższych tabel ukazuje fragment kodu napisany w języku HTML?
<table border="1" cellspaing="0" cellpadding="10" >
<tr> <td rowspan="2"> </td> <td> </td> </tr>
<tr> <td> </td> </tr>
</table>

Ilustracja do pytania
A. rys. A
B. rys. B
C. rys. C
D. rys. D
W języku HTML atrybut rowspan w znaczniku <td> pozwala na scalanie komórek w pionie co oznacza że dana komórka zajmuje miejsce w kilku wierszach tabeli W podanym kodzie pierwsza komórka w pierwszym wierszu posiada atrybut rowspan z wartością 2 co sprawia że zajmuje ona miejsce w dwóch wierszach Pierwszy wiersz zawiera dwie komórki z czego pierwsza jest połączona pionowo z komórką w drugim wierszu Druga komórka w pierwszym wierszu oraz jedyna komórka w drugim wierszu nie posiadają atrybutu rowspan ani colspan dlatego nie są połączone z innymi komórkami Takie użycie rowspan jest zgodne z praktykami HTML które umożliwiają tworzenie bardziej złożonych układów tabeli dzięki czemu można lepiej zarządzać przestrzenią w interfejsie użytkownika Jako że kod tworzy tabelę z dwiema kolumnami i dwoma wierszami gdzie pierwsza komórka po lewej stronie zajmuje dwa wiersze przedstawia to układ jak na rysunku B Możliwości jakie daje rowspan są niezwykle przydatne w sytuacjach gdy chcemy aby dane w tabeli były czytelniejsze i bardziej zorganizowane szczególnie w raportach czy formularzach gdzie różne kategorie danych muszą być jasno oddzielone

Pytanie 5

Jakie polecenie HTML poprawnie odwzorowuje przedstawioną hierarchiczną strukturę tekstu, która została wyświetlona przez przeglądarkę w następujący sposób: Rozdział 1 tekst Podrozdział 1.1 tekst Podrozdział 1.2?

A. <h1>Rozdział 1<p>tekst<h2>Podrozdział 1.1<p>tekst<h2>Podrozdział 1.2
B. <ul><li>Rozdział 1<li>tekst<li>Podrozdział 1.1<li>tekst<li>Podrozdział 1.2</ul>
C. <big>Rozdział 1</big>tekst<big>Podrozdział 1.1</big>tekst<big>Podrozdział 1.2</big>
D. <h1>Rozdział 1</h1><p>tekst</p><h2>Podrozdział 1.1</h2><p>tekst</p><h2>Podrozdział 1.2</h2>
Pierwszy z zaproponowanych kodów posiada poważne błędy, ponieważ nie zamyka tagów <p> oraz <h2>. Poprawne HTML wymaga, aby wszystkie otwarte tagi były odpowiednio zamknięte, co czyni kod nieczytelnym dla przeglądarek i może prowadzić do nieprzewidywalnych wyników wyświetlania. Druga propozycja definiuje strukturę jako listę nieuporządkowaną, co jest nieadekwatne w kontekście przedstawionej hierarchii nagłówków. Lista nieuporządkowana (<ul>) ma na celu grupowanie elementów, a nie definiowanie nagłówków i podrozdziałów, co narusza zasady semantyki HTML. Ostatnia odpowiedź używa tagu <big>, który nie jest zalecany w nowoczesnym HTML, gdyż nie ma on semantycznego znaczenia i nie wpływa na SEO w sposób pożądany. Ponadto, tag <big> nie zapewnia struktury dokumentu, a jedynie zmienia rozmiar tekstu, co jest niewłaściwe w kontekście hierarchii treści. Wszelkie te błędy nie tylko wpływają negatywnie na czytelność strony, ale również mogą obniżać jej pozycjonowanie w wynikach wyszukiwania.

Pytanie 6

W systemie baz danych sklepu komputerowego znajduje się tabela o nazwie komputery. Aby stworzyć raport, który wyświetli dane dla konkretnego zestawu informacji z tej tabeli, zawierający tylko te komputery, które mają co najmniej 8 GB pamięci RAM oraz procesor Intel, można wykorzystać zapytanie:

A. SELECT * FROM komputery WHERE procesor= 'Intel' OR pamiec<8
B. SELECT * FROM komputery WHERE procesor= 'Intel' OR pamiec>=8
C. SELECT * FROM komputery WHERE procesor= 'Intel' AND pamiec<8
D. SELECT * FROM komputery WHERE procesor= 'Intel' AND pamiec>=8
Aby stworzyć kwerendę, która wyświetli wszystkie komputery w tabeli 'komputery', spełniające określone warunki, musimy użyć odpowiednich operatorów logicznych oraz porównań. W tym przypadku chcemy uzyskać sprzęt, którego procesor to 'Intel' oraz pamięć RAM wynosi co najmniej 8 GB. Kluczowym elementem jest tutaj użycie operatora 'AND', który zapewnia, że muszą być spełnione oba warunki jednocześnie. Kwerenda 'SELECT * FROM komputery WHERE procesor= 'Intel' AND pamiec>=8;' w pełni odpowiada tym wymaganiom. Operator 'AND' jest istotny, ponieważ bez niego moglibyśmy otrzymać komputery z procesorem Intel, ale z pamięcią RAM mniejszą niż 8 GB, co jest sprzeczne z naszym celem. Tego rodzaju zapytania są powszechne w analizie danych i często wykorzystywane w raportowaniu i wizualizacji danych. Odpowiednia struktura kwerendy zapewnia, że wyniki będą precyzyjne i zgodne z oczekiwaniami użytkowników, co jest kluczowe w zarządzaniu bazami danych oraz w tworzeniu systemów informacyjnych dla sklepów komputerowych.

Pytanie 7

Rozważ tabelę pracownicy. Jakie jest polecenie MySQL, które usuwa wszystkie wpisy z tabeli, gdzie pole rodzaj_umowy jest puste?

A. DROP pracownicy FROM rodzaj_umowy = 0
B. DROP pracownicy WHERE rodzaj_umowy IS NULL
C. DELETE pracownicy WHERE rodzaj_umowy ='brak'
D. DELETE FROM pracownicy WHERE rodzaj_umowy IS NULL
Aby usunąć wszystkie rekordy z tabeli pracownicy, dla których pole rodzaj_umowy pozostaje puste, czyli ma wartość NULL, używamy polecenia DELETE FROM pracownicy WHERE rodzaj_umowy IS NULL. Klauzula DELETE FROM jest standardowym poleceniem SQL, które służy do usuwania danych z bazy danych. W tym przypadku warunek IS NULL jest kluczowy, ponieważ wskazuje, że chcemy usunąć jedynie te rekordy, w których pole rodzaj_umowy nie zawiera żadnej wartości. Warto zauważyć, że NULL w SQL oznacza brak wartości, co różni się od innych typów wartości, jak na przykład 0 czy pusty ciąg tekstowy. Przykład praktyczny użycia tego polecenia: jeśli w tabeli mamy pracowników z różnymi rodzajami umowy, w tym także takich, którzy nie mają przypisanego rodzaju, to powyższe polecenie usunie ich z bazy danych. Tego rodzaju operacje są niezwykle ważne w kontekście utrzymania bazy danych, gdyż pozwalają na eliminację nieaktualnych lub niekompletnych danych, co w efekcie prowadzi do poprawy jakości przechowywanych informacji i ułatwia późniejsze zapytania do bazy. Takie podejście jest zgodne z dobrymi praktykami w zakresie zarządzania danymi i normami ANSI SQL.

Pytanie 8

Aby naprawić uszkodzoną tabelę w bazie MySQL, należy wykonać polecenie:

A.
FIX TABLE
B.
CHECK TABLE
C.
REPAIR TABLE
D.
RESOLVE TABLE
Trzy pozostałe odpowiedzi albo nie istnieją, albo robią coś innego. FIX TABLE i RESOLVE TABLE brzmią sensownie, ale takich poleceń w MySQL po prostu nie ma - serwer zwróciłby błąd składni. CHECK TABLE to realna komenda, jednak służy wyłącznie do sprawdzenia, czy tabela nie jest uszkodzona; sama niczego nie poprawia. Faktyczną naprawę przeprowadza REPAIR TABLE, które próbuje odtworzyć uszkodzoną strukturę i indeksy tabeli - dlatego to ono jest poprawną odpowiedzią.

Pytanie 9

Jaką wartość w formacie szesnastkowym ma kolor rgb(255, 16, 8)?

A. #FF0F80
B. #801008
C. #FF1008
D. #800F80
Składowe przelicza się osobno na zapis szesnastkowy: 255 = FF, 16 = 10, 8 = 08, więc rgb(255, 16, 8) to #FF1008. Wartość 255 (maksimum składowej) zawsze daje FF. Zapamiętaj: FF = 255, 00 = 0 - to dwa skrajne punkty każdej składowej.

Pytanie 10

Tabela naprawy ma kolumny klient i czyNaprawione. Jak usunąć rekordy, w których czyNaprawione jest prawdą?

A.
DELETE FROM naprawy;
B.
DELETE naprawy WHERE czyNaprawione = TRUE;
C.
DELETE FROM naprawy WHERE czyNaprawione = TRUE;
D.
DELETE klient FROM naprawy WHERE czyNaprawione = TRUE;
Usuwanie wierszy spełniających warunek ma składnię DELETE FROM <tabela> WHERE <warunek>. Zapis DELETE FROM naprawy WHERE czyNaprawione = TRUE; skasuje tylko rekordy z prawdziwą wartością pola. Dlatego poprawne jest DELETE FROM naprawy WHERE czyNaprawione = TRUE;.

Pytanie 11

Jaką wartość w systemie RGB uzyskamy dla koloru zapisanego w kodzie heksadecymalnym: #1510FE?

A. rgb(15,10,FE)
B. rgb(21,16,FE)
C. rgb(21,16,254)
D. rgb(21,16,255)
Odpowiedź rgb(21,16,254) jest poprawna, ponieważ kolor zapisany w systemie heksadecymalnym #1510FE można rozłożyć na składowe RGB. W kodzie heksadecymalnym każdy z trzech kolorów (czerwony, zielony, niebieski) jest reprezentowany przez dwie cyfry. W przypadku #1510FE, pierwsze dwie cyfry (15) odnoszą się do wartości czerwonej, drugie dwie (10) do wartości zielonej, a ostatnie dwie (FE) do wartości niebieskiej. Te wartości musimy przeliczyć na system dziesiętny: czerwony to 21 (15 w systemie szesnastkowym to 21 w dziesiętnym), zielony to 16 (10 w szesnastkowym to 16 w dziesiętnym), a niebieski to 254 (FE w szesnastkowym to 254 w dziesiętnym). Tak więc końcowy wynik to rgb(21,16,254). W praktyce, znajomość konwersji kolorów jest kluczowa w projektowaniu graficznym, stron internetowych oraz aplikacji, gdzie precyzyjne odwzorowanie kolorów jest niezbędne dla uzyskania poprawnej estetyki i spójności wizualnej. Warto zaznaczyć, że standardy takie jak sRGB są powszechnie stosowane do definiowania kolorów w cyfrowych mediach, co zapewnia zgodność i przewidywalność w różnych urządzeniach wyświetlających te kolory.

Pytanie 12

Podaj nazwę Systemu Zarządzania Treścią, którego logo jest pokazane na dołączonym rysunku?

Ilustracja do pytania
A. Drupal
B. Joomla!
C. WordPress
D. MediaWiki
Odpowiedź Joomla! jest poprawna ponieważ logo przedstawione na rysunku jest oficjalnym znakiem identyfikacyjnym tego systemu zarządzania treścią CMS. Joomla! to jeden z najpopularniejszych systemów CMS używany do tworzenia stron internetowych oraz aplikacji. Dzięki swojej elastyczności i dużej liczbie dostępnych rozszerzeń Joomla! pozwala na tworzenie zarówno prostych stron wizytówkowych jak i zaawansowanych serwisów e-commerce. Główne zalety Joomla! to intuicyjny interfejs użytkownika który ułatwia zarządzanie treściami oraz silna społeczność użytkowników zapewniająca wsparcie techniczne i rozwój oprogramowania. Joomla! jest zgodna z wieloma standardami webowymi co czyni ją wszechstronnym narzędziem do wdrażania profesjonalnych projektów internetowych. Korzystanie z Joomla! umożliwia szybkie i efektywne tworzenie responsywnych stron które dobrze współdziałają na różnych urządzeniach mobilnych. Praktyczne zastosowanie Joomla! obejmuje tworzenie stron korporacyjnych portali społecznościowych oraz serwisów informacyjnych. Dzięki modulowej architekturze użytkownicy mogą łatwo dostosowywać funkcjonalność swoich stron do specyficznych potrzeb branżowych co jest zgodne z dobrymi praktykami projektowania zorientowanego na użytkownika. Platforma Joomla! obsługuje także wielojęzyczność i różne metody uwierzytelniania co czyni ją idealnym rozwiązaniem dla międzynarodowych projektów.

Pytanie 13

Definicja formularza została użyta na stronie internetowej, która przesyła dane do pliku napisanego w języku PHP. W jakiej tablicy będą dostępne dane z tego formularza?

Ilustracja do pytania
A. $_GET
B. $_POST
C. $_COOKIE
D. $_ACTION
Tablica $_POST w PHP służy do przechwytywania danych przesyłanych za pomocą metody POST. Jest to standardowa praktyka w przypadku formularzy, które zawierają dane wrażliwe lub dużą ilość informacji. Metoda POST przesyła dane w treści żądania HTTP, co oznacza, że nie są one widoczne w adresie URL, co zwiększa bezpieczeństwo w porównaniu do metody GET. Przykładem zastosowania mogą być formularze logowania czy przesyłania plików. W PHP dostęp do danych z formularza można uzyskać poprzez prostą składnię, na przykład $_POST['nazwa_pola']. Ważne jest, aby zawsze walidować i filtrować dane wejściowe, aby zabezpieczyć aplikację przed atakami typu SQL Injection czy XSS. Zastosowanie metody POST jest zgodne z ogólnymi zasadami bezpieczeństwa i standardami projektowania aplikacji webowych, które zalecają ograniczanie widoczności danych przesyłanych przez użytkownika. Dobre praktyki obejmują również stosowanie HTTPS, aby dodatkowo zaszyfrować dane przesyłane pomiędzy klientem a serwerem.

Pytanie 14

Której właściwości CSS należy użyć, aby ustawić marginesy wewnętrzne elementu?

A.
hight
B.
width
C.
margin
D.
padding
Marginesy WEWNĘTRZNE - odstęp między treścią elementu a jego obramowaniem - ustawia w CSS padding, np. padding: 10px; daje 10 px wolnego miejsca dookoła treści wewnątrz ramki. To część modelu pudełkowego (box model). Zapamiętaj różnicę: padding jest WEWNĄTRZ ramki, a margin na ZEWNĄTRZ.

Pytanie 15

Język HTML oferuje nagłówki, które służą do tworzenia hierarchii zawartości. Te nagłówki występują wyłącznie w zakresie

A. h1 - h4
B. h1 - h6
C. h1 - h8
D. h1 - h10
Odpowiedź h1 - h6 jest poprawna, ponieważ w języku HTML nagłówki są definiowane w ramach sześciu poziomów, od h1 do h6. Nagłówki te pełnią kluczową rolę w organizacji treści na stronie internetowej, umożliwiając tworzenie hierarchii oraz struktury dokumentu. h1 jest najważniejszym nagłówkiem i powinien być używany do oznaczania głównego tytułu strony, podczas gdy h2, h3, h4, h5 i h6 służą do tworzenia podtytułów i hierarchii treści w miarę potrzeby. Na przykład, nagłówek h2 może być użyty do oznaczenia sekcji podrzędnej w stosunku do h1, a h3 do następnej sekcji podrzędnej. Takie zrozumienie hierarchii nagłówków jest istotne z punktu widzenia SEO, ponieważ wyszukiwarki korzystają z tych struktur do indeksowania treści. Dobrze zorganizowane nagłówki poprawiają również dostępność strony, co jest zgodne z najlepszymi praktykami webowymi, a także ułatwiają nawigację użytkownikom, zarówno ludziom, jak i robotom wyszukiwarek.

Pytanie 16

Pętla while powinna działać tak długo, jak zmienna x ma wartości z przedziału obustronnie otwartego -2, 5). Zapis tego warunku w nagłówku pętli za pomocą języka PHP wygląda następująco

A. ($x > -2) && ($x < 5)
B. ($x == -2) && ($x < 5)
C. ($x < -2) || ($x > 5)
D. ($x > -2) || ($x > 5)
Prawidłowa odpowiedź, czyli ($x > -2) && ($x < 5), odzwierciedla logiczny warunek, który jest zgodny z opisanym przedziałem otwartym (-2, 5). Pętla while w języku PHP powinna wykonywać blok kodu, dopóki wartość zmiennej x jest większa od -2 oraz jednocześnie mniejsza od 5. Tego rodzaju warunek jest kluczowy w programowaniu, gdyż pozwala na przeprowadzanie iteracji, które są ograniczone do konkretnego zakresu wartości. Przykładowo, jeśli chcielibyśmy zrealizować program, który przetwarza dane tylko w tym przedziale, taki warunek umożliwiłby nam uniknięcie obliczeń dla wartości spoza tego zakresu, co może być istotne w kontekście optymalizacji wydajności. Praktycznym zastosowaniem byłoby zrealizowanie algorytmu, który zbiera dane pomiarowe w zadanym zakresie, co jest częstym przypadkiem w analizie danych. Dobrą praktyką jest także stosowanie odpowiednich komentarzy w kodzie, które wyjaśniają logikę warunków, co sprzyja późniejszej konserwacji; w tym przypadku komentarz mógłby brzmieć "Iteruj, gdy x jest w przedziale (-2, 5)".

Pytanie 17

Która reguła dotycząca sekcji <head> w HTML jest poprawna?

A. w <head> definiuje się szablon strony znacznikami <div>
B. w <head> zawiera się sekcję <body>
C. w <head> nie można umieszczać CSS, tylko odwołanie do pliku
D. w <head> mogą wystąpić <meta>, <title>, <link>
Sekcja <head> nie zawiera widocznej treści strony, lecz informacje O niej - metadane i powiązania z zasobami. Poprawnie mogą się w niej znaleźć <meta> (np. kodowanie znaków, opis dla wyszukiwarek), <title> (tytuł widoczny na karcie przeglądarki) oraz <link> (np. dołączenie zewnętrznego arkusza CSS). Dlatego poprawne jest stwierdzenie o <meta>, <title> i <link>.

Pytanie 18

Tabela przedmioty ma pola ocena i uczenID. Która kwerenda policzy ŚREDNIĄ ocen ucznia o ID 7?

A.
SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7;
B.
AVG SELECT ocena FROM przedmioty WHERE uczenID = 7;
C.
SELECT COUNT(ocena) FROM przedmioty WHERE uczenID = 7;
D.
COUNT SELECT ocena FROM przedmioty WHERE uczenID = 7;
Średnią wartości z kolumny liczy funkcja agregująca AVG. Zapis SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7; najpierw warunkiem WHERE wybiera oceny ucznia o ID 7, a potem AVG(ocena) je uśrednia. Dlatego ta kwerenda jest poprawna.

Pytanie 19

Po wykonaniu poniższego kodu JavaScript, co będzie przechowywać zmienna str2?

var str1 = "JavaScript";
var str2 = str1.substring(2,6);
A. avaS
B. vaScri
C. nvaScr
D. vaSc
Wykorzystując metodę substring w JavaScript możemy wyodrębnić fragmenty łańcucha znaków bazując na indeksach początkowym i końcowym. Indeksowanie w JavaScript zaczyna się od zera co oznacza że pierwszy znak ma indeks 0 drugi 1 i tak dalej. W przypadku zmiennej str1 przechowującej łańcuch JavaScript wywołanie str1.substring(2 6) zwraca fragment zaczynający się od znaku o indeksie 2 do znaku o indeksie 5 włącznie. Oznacza to że metoda wybiera znaki od trzeciego do szóstego nie wliczając znaku o indeksie 6. W praktyce oznacza to że z napisu JavaScript wybierane są znaki aScr co tworzy łańcuch vaSc. Zrozumienie działania metody substring jest kluczowe przy pracy z łańcuchami znaków w JavaScript. Jest to standardowa metoda używana powszechnie do manipulacji tekstem co ma zastosowanie w wielu dziedzinach programowania frontendowego i backendowego. Ważne jest aby pamiętać o zeroindeksowaniu co pozwala uniknąć typowych błędów związanych z nieprawidłowym określeniem zakresu znaków.

Pytanie 20

W pliku CSS znajdują się poniższe style. Kiedy klikniemy na hiperłącze i wrócimy na stronę, jego kolor zmieni się na

a { color: Brown; }
a:link { color: Green; }
a:visited { color: Red; }
a:hover { color: Yellow; }
A. zielony
B. żółty
C. brązowy
D. czerwony
W stylach CSS dla hiperłączy istnieją różne pseudoklasy które określają ich wygląd w zależności od stanu. W tym przypadku kolor czerwony przypisany jest do pseudoklasy a:visited co oznacza że po odwiedzeniu i późniejszym powrocie na stronę hiperłącze przyjmie kolor czerwony. Pseudoklasa a:visited jest używana aby oznaczyć linki które użytkownik już odwiedził co jest przydatne w nawigacji i pozwala użytkownikom zidentyfikować które strony już odwiedzili. Dobre praktyki w projektowaniu stron internetowych zalecają użycie wyraźnych i kontrastujących kolorów aby użytkownicy mogli łatwo rozpoznać odwiedzone linki co poprawia doświadczenie użytkownika. Warto pamiętać że przeglądarki mają różne poziomy wsparcia dla pseudoklasy a:visited w kontekście stylizacji innych właściwości niż kolor co wynika z wymogów prywatności. Dlatego w standardowych przypadkach kolorowe oznaczenie linków przynosi pożądany efekt zapewniając zgodność z wytycznymi WCAG dotyczącymi dostępności stron internetowych. Bardzo ważne jest aby projektując strony internetowe dbać o klarowność i intuicyjność nawigacji co zwiększa satysfakcję z użytkowania serwisu.

Pytanie 21

W załączonym kodzie CSS, kolor został zapisany w formacie

color: #008000;
A. HSL
B. dziesiętnej
C. szesnastkowej
D. CMYK
W CSS kolory często zapisywane są w postaci szesnastkowej ponieważ jest to krótki i precyzyjny sposób definiowania koloru. Kod szesnastkowy składa się zazwyczaj z sześciu znaków poprzedzonych znakiem hash (#) gdzie pierwsze dwa znaki odpowiadają czerwonej składowej następne dwa zielonej a ostatnie dwa niebieskiej. Na przykład #008000 oznacza kolor zielony gdzie czerwona składowa wynosi 0 zielona 128 a niebieska 0. Wartości te są zapisane w systemie szesnastkowym co oznacza że mogą przyjmować wartości od 00 do FF odpowiadające wartościom dziesiętnym od 0 do 255. Korzystanie z formatu szesnastkowego jest powszechnie uznawane za dobrą praktykę w web designie ponieważ jest szeroko wspierane przez przeglądarki internetowe i umożliwia łatwe definiowanie szerokiej gamy kolorów. Dzięki swojej zwięzłości i jednoznaczności jest preferowane w projektach gdzie każda linijka kodu ma znaczenie. Przy wyborze koloru warto korzystać z narzędzi które mogą pomóc w konwersji wartości RGB na szesnastkowe co ułatwia dokładne odwzorowanie wybranych kolorów

Pytanie 22

Który z poniższych obrazów został sformatowany przy użyciu zaprezentowanego stylu CSS?

Ilustracja do pytania
A. A
B. B
C. C
D. D
Odpowiedź A jest prawidłowa, ponieważ zastosowane style CSS dokładnie odzwierciedlają podany kod. Styl img { padding: 5px; border: 1px solid grey; border-radius: 10px; } oznacza, że obrazek otrzymuje wewnętrzny margines o wartości 5 pikseli, szary, jednopikselowy, ciągły obramowanie oraz zaokrąglenie narożników o promieniu 10 pikseli. Efektem tego jest estetyczny wygląd, który umożliwia lepszą prezentację treści graficznych w projektach webowych. Padding pozwala na uzyskanie równowagi wizualnej, natomiast border-radius zapewnia miękkość krawędzi, co jest często stosowane w nowoczesnym web designie. Praktycznym zastosowaniem takich stylów jest m.in. tworzenie kart wizualnych na stronach internetowych, gdzie estetyka i czytelność są kluczowe. Dobrym przykładem jest stosowanie tych technik w responsywnych projektach, gdzie obrazy muszą dobrze współgrać z różnymi elementami interfejsu użytkownika. CSS umożliwia tworzenie atrakcyjnych wizualnie stron, które przyciągają uwagę i poprawiają interakcję użytkownika z treścią.

Pytanie 23

Jakie polecenie HTML powinno być zastosowane, aby sformatować akapit tekstu?

Tekst może być zaznaczony albo istotny dla autora
A. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny dla autora</p>
B. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny</em> dla autora</p>
C. <p>Tekst może być <mark>zaznaczony albo <em>istotny</em> dla autora</mark></p>
D. <p>Tekst może być <mark>zaznaczony albo <i>istotny</i> dla autora</mark></p>
Odpowiedź druga jest prawidłowa, ponieważ stosuje poprawną składnię HTML do oznaczenia fragmentów tekstu z różnym formatowaniem. Element <p> służy do definiowania paragrafu, w którym tekst jest umieszczony. Element <mark> używany jest do oznaczania tekstu, który powinien być zwrócony uwagę czytelnika, poprzez podkreślenie go kolorem tła. Z kolei <em> jest przeznaczony do oznaczenia tekstu, który ma zostać wyróżniony jako istotny, zazwyczaj poprzez użycie kursywy. Użycie tych elementów w połączeniu z zamykającymi tagami, jak w odpowiedzi drugiej, jest zgodne z zaleceniami standardów HTML5, które kładą nacisk na semantyczne znaczenie znaczników. To podejście wspiera dostępność oraz SEO, ponieważ pomaga czytnikom ekranowym i wyszukiwarkom lepiej zrozumieć strukturę i znaczenie treści. Praktyczne zastosowanie tych znaczników można zobaczyć na stronach internetowych, gdzie kluczowe informacje muszą być odpowiednio wyróżnione, aby poprawić doświadczenie użytkownika i przekazać istotne dane w czytelny sposób.

Pytanie 24

W przedstawionym stylu CSS w ramce zdefiniowano klasę uzytkownik. Tekst na stronie będzie wyświetlany czcionką w kolorze niebieskim dla

p.uzytkownik { color: blue; }
A. wyłącznie znaczników tekstowych takich jak <p>, <h1>
B. wszystkich akapitów
C. akapitów, którym przypisano klasę uzytkownik
D. dowolnych znaczników w sekcji <body>, które mają przypisaną klasę uzytkownik
Styl CSS przedstawiony w ramce definiuje regułę, która stosuje kolor tekstu niebieski do wszystkich elementów <p> posiadających klasę uzytkownik. W CSS selektory klasowe są reprezentowane przez kropkę (.), co oznacza, że tylko te elementy, które mają przypisaną daną klasę, zostaną sformatowane zgodnie z regułami stylu. W tym przypadku, ponieważ selektor to p.uzytkownik, dotyczy on tylko paragrafów oznaczonych klasą uzytkownik. To precyzyjne zastosowanie selektorów umożliwia projektantom stron internetowych dokładne dostosowanie wyglądu poszczególnych elementów. Takie podejście zapewnia większą elastyczność w projektowaniu i ułatwia zarządzanie wyglądem strony. Praktyką jest stosowanie klas, aby stylować specyficzne elementy w różny sposób, co zwiększa użyteczność i przejrzystość kodu CSS. Warto zaznaczyć, że używanie selektorów klasowych w ten sposób jest zgodne z zasadą separacji treści od prezentacji, co jest kluczowym aspektem w tworzeniu nowoczesnych i responsywnych stron internetowych.

Pytanie 25

Aby ustawić wewnętrzne marginesy dla elementu: margines górny 50px, dolny 40px, prawy 20px oraz lewy 30px, powinno się zastosować składnię CSS

A. padding: 50px, 40px, 20px, 30px;
B. padding: 20px, 40px, 30px, 50px;
C. padding: 50px, 20px, 40px, 30px;
D. padding: 40px, 30px, 50px, 20px;
Odpowiedź "padding: 50px, 20px, 40px, 30px;" jest poprawna, ponieważ zgodnie z konwencją CSS, wartości paddingu są podawane w następującej kolejności: górny, prawy, dolny i lewy. W twoim przypadku margines górny wynosi 50px, prawy 20px, dolny 40px i lewy 30px. Właściwość padding określa wewnętrzny odstęp między zawartością elementu a jego granicą, co jest kluczowe dla właściwego układu i estetyki strony. Przykładowo, zastosowanie takiego paddingu w praktyce pozwala na uzyskanie odpowiednich odstępów, co wpływa na czytelność tekstu oraz ogólną estetykę elementów na stronie. Stosowanie paddingu w CSS jest uważane za dobre praktyki, ponieważ pozwala na precyzyjne kontrolowanie układu elementów, co jest szczególnie ważne w responsywnym projektowaniu stron internetowych. Warto również pamiętać, że używanie właściwego odstępu wewnętrznego poprawia dostępność treści, dzięki czemu użytkownicy z różnymi potrzebami mogą łatwiej interakcjonować z interfejsem.

Pytanie 26

Pętla while ma działać, dopóki zmienna x należy do przedziału otwartego (-2, 5). Który warunek to zapisuje (PHP)?

A.
($x == -2) && ($x < 5)
B.
($x > -2) || ($x > 5)
C.
($x > -2) && ($x < 5)
D.
($x < -2) || ($x > 5)
Przedział otwarty (-2, 5) to liczby WIĘKSZE od -2 i jednocześnie MNIEJSZE od 5, więc warunek to ($x > -2) && ($x < 5) - oba muszą być spełnione naraz, stąd iloczyn logiczny &&. Pętla while działa, dopóki ten warunek jest prawdziwy. Zapamiętaj: przedział otwarty = ostre nierówności (>, <) połączone &&.

Pytanie 27

Język JavaScript wspiera

A. klasy abstrakcyjne
B. funkcje wirtualne
C. obiekty DOM
D. wysyłanie ciasteczek z identycznymi informacjami do wielu klientów witryny
JavaScript to język skryptowy, który ma wbudowaną obsługę obiektowego modelu dokumentu (DOM), co umożliwia dynamiczne manipulowanie strukturą HTML oraz CSS stron internetowych. Dzięki DOM programiści mogą dodawać, usuwać lub modyfikować elementy na stronie w czasie rzeczywistym, co czyni aplikacje bardziej interaktywnymi. Przykładem może być zmiana tekstu przycisku po jego kliknięciu, co można osiągnąć dzięki metodom takim jak `getElementById` oraz `innerHTML`. JavaScript jest nieodłącznym elementem nowoczesnego podejścia do tworzenia aplikacji webowych, a jego kompatybilność z DOM sprawia, że jest to kluczowa umiejętność dla programistów. Wiedza na temat manipulacji DOM jest fundamentem dla technologii takich jak React czy Angular, które opierają się na zasadach wydajnego zarządzania interfejsem użytkownika przez wirtualny DOM. Współczesne standardy, takie jak ECMAScript, rozwijają możliwości JavaScript, a znajomość DOM jest niezwykle cenna na rynku pracy.

Pytanie 28

W HTML atrybut alt elementu img służy do określenia

A. parametrów grafiki, takich jak wymiary, ramka, wyrównanie
B. treści, która zostanie pokazana, gdy grafika nie może być załadowana
C. opisu, który pojawi się pod grafiką
D. lokalizacji i nazwy pliku źródłowego grafiki
Atrybut <b>alt</b> znacznika <b>img</b> w języku HTML jest niezwykle istotnym elementem, który ma na celu zapewnienie dostępności treści wizualnych dla użytkowników. Gdy obrazek nie może zostać załadowany (np. z powodu problemów z siecią lub błędnej ścieżki do pliku), tekst zawarty w atrybucie <b>alt</b> zostaje wyświetlony zamiast obrazu. W praktyce oznacza to, że osoba korzystająca z technologii asystujących, takich jak czytniki ekranu, będzie miała możliwość zrozumienia, co miało się pojawić w danym miejscu na stronie. Zgodnie z wytycznymi WCAG (Web Content Accessibility Guidelines), stosowanie atrybutu <b>alt</b> jest kluczowe dla zapewnienia dostępności stron internetowych. Przykładem może być sytuacja, w której na stronie internetowej znajduje się obrazek przedstawiający produkt. Atrybut <b>alt</b> powinien zawierać opis tego produktu, co pozwoli użytkownikom, którzy nie widzą obrazu, zrozumieć jego znaczenie. Prawidłowe użycie atrybutu <b>alt</b> nie tylko poprawia dostępność, ale także może wpłynąć na SEO strony, ponieważ wyszukiwarki traktują ten atrybut jako dodatkowy kontekst dla treści wizualnych.

Pytanie 29

Po uruchomieniu kodu PHP

echo date("Y-m");
na ekranie pojawi się bieżąca data w formacie:
A. tylko roku
B. roku oraz miesiąca
C. dnia i roku
D. dnia, miesiąca, roku
Odpowiedź 'rok i miesiąc' jest prawidłowa, ponieważ funkcja 'date' w PHP formatuje datę na podstawie podanego wzorca. W przypadku użycia wzorca 'Y-m', 'Y' oznacza pełny rok (np. 2023), a 'm' oznacza dwucyfrowy miesiąc (np. 03 dla marca). W wyniku działania 'echo date("Y-m");' na ekranie zostanie wyświetlona aktualna data w formacie YYYY-MM, co jest niezwykle przydatne w wielu aplikacjach, takich jak generowanie raportów miesięcznych, archiwizacja danych czy implementacja systemów zarządzania treścią. Użycie tego wzorca jest zgodne z najlepszymi praktykami programistycznymi, które zalecają właściwe formatowanie daty w celu jej późniejszej analizy lub prezentacji. Ponadto, umiejętność manipulacji datami w PHP jest kluczowa w kontekście tworzenia aplikacji webowych, które często wymagają interakcji z użytkownikami w czasie rzeczywistym, a także integracji z bazami danych, gdzie prawidłowe formatowanie daty ma kluczowe znaczenie dla integralności danych.

Pytanie 30

Funkcji session_start() w PHP należy używać podczas realizacji

A. ładowania danych z zewnętrznych plików
B. wielostronicowej strony internetowej, która wymaga dostępu do danych przy przechodzeniu między stronami
C. każdej strony, która wykorzystuje ciasteczka
D. przetwarzania formularzy
Funkcja session_start() jest kluczowym elementem zarządzania sesjami w PHP, co jest niezbędne w kontekście wielostronicowych witryn internetowych. Jej głównym zadaniem jest inicjalizacja sesji, która pozwala na przechowywanie i udostępnianie danych użytkownika pomiędzy różnymi stronami serwisu. Gdy wywołasz session_start(), PHP sprawdza, czy istnieje już aktywna sesja. Jeśli tak, został załadowany odpowiedni identyfikator sesji, co umożliwia dostęp do danych przechowywanych w superglobalnej tablicy $_SESSION. Przykładami zastosowania mogą być koszyki zakupowe, gdzie użytkownik dodaje produkty na różnych stronach, a dane o tych produktach muszą być zachowane i dostępne na każdej z nich. Dobre praktyki zalecają, aby session_start() było wywoływane na początku skryptu, przed jakimkolwiek wyjściem na ekran, aby uniknąć problemów z nagłówkami HTTP. Ponadto, zarządzanie sesjami powinno być realizowane z uwzględnieniem bezpieczeństwa, np. poprzez regenerację identyfikatorów sesji po zalogowaniu oraz zabezpieczenie przed atakami CSRF.

Pytanie 31

Wskaż blok, który jest sformatowany zgodnie z podanym stylem CSS.

background: linear-gradient(to right, LightBlue, DarkBlue);
Ilustracja do pytania
A. Blok 1
B. Blok 2
C. Blok 3
D. Blok 4
Blok 2 jest poprawną odpowiedzią ponieważ wykorzystuje styl CSS background linear-gradient(to right LightBlue DarkBlue) co oznacza że gradient kolorów rozciąga się od lewej do prawej strony elementu CSS linear-gradient pozwala na tworzenie gładkich przejść między kolorami co jest popularną techniką w projektowaniu stron internetowych Styl ten dodaje wizualnej atrakcyjności i może być użyty w różnych częściach witryny takich jak przyciski nagłówki czy tła sekcji Właściwość gradientu pozwala na zastosowanie wielu kolorów i kontrolowanie ich punktów początkowych i końcowych co zwiększa elastyczność projektowania Ponadto gradienty są wspierane przez wszystkie nowoczesne przeglądarki co czyni je doskonałym wyborem dla responsywnych stron internetowych Wykorzystanie gradientów zamiast obrazów tła pomaga także w optymalizacji strony zmniejszając czas ładowania co jest zgodne z najlepszymi praktykami branżowymi i wpływa pozytywnie na doświadczenie użytkownika CSS oferuje również inne typy gradientów takie jak radial-gradient i conic-gradient które mogą być używane w zależności od potrzeb projektowych

Pytanie 32

W programie do edytowania grafiki rastrowej zmieniono krzywe kolorów w sposób zaznaczony ramką na pokazanym obrazie. Jakie jest to działanie?

Ilustracja do pytania
A. rozjaśnienie całego obrazu
B. przyciemnienie całego obrazu
C. wygładzenie krawędzi na obrazie
D. modyfikację najjaśniejszych i najciemniejszych kolorów obrazu
Modyfikacja krzywych kolorów w programach do obróbki grafiki rastrowej jest zaawansowanym narzędziem służącym do precyzyjnej regulacji tonalnej obrazu. Krzywe pozwalają na kontrolę nad najjaśniejszymi i najciemniejszymi partiami obrazu poprzez modyfikację kanałów RGB lub wartości jasności. W zaznaczonej na obrazku ramce widać, że punkty kontrolne krzywej zostały przesunięte, co wskazuje na zmianę tonacji skrajnych wartości jasności. Tego typu operacja jest często stosowana w celu poprawy kontrastu i ogólnego wyglądu zdjęcia. Standardową praktyką jest tu podnoszenie i opuszczanie punktów na krzywej, co daje możliwość uwydatnienia szczegółów w cieniach oraz światłach bez wpływu na średnie tony. Modyfikacja krzywych jest zgodna z profesjonalnymi standardami edycji, ponieważ umożliwia uzyskanie efektów niedostępnych przy użyciu prostych suwaków jasności lub kontrastu. Praktyczne zastosowanie znajduje m.in. w fotografii portretowej, gdzie często konieczne jest subtelne dostosowanie tonacji skóry oraz w krajobrazach, gdzie ważne jest zachowanie detali w jasnych niebie i ciemnych cieniach ziemi. Stosując krzywe, można precyzyjnie regulować każdy aspekt tonalny obrazu, co jest kluczowe w profesjonalnej edycji graficznej.

Pytanie 33

Kwalifikatory dostępu private, protected i public definiują mechanizm

A. przeładowania
B. polimorfizmu
C. hermetyzacji
D. rekurencji
Słowa private, protected i public określają, kto ma dostęp do składowych klasy - to mechanizm HERMETYZACJI, czyli ukrywania wewnętrznych danych obiektu. Dlatego definiują hermetyzację.

Pytanie 34

Jaką funkcję w edytorze grafiki rastrowej trzeba wykorzystać, żeby przygotować rysunek do publikacji na stronie tak, aby widoczne było jedynie to, co znajduje się w obrębie ramki?

Ilustracja do pytania
A. Odbicie
B. Skalowanie
C. Kadrowanie
D. Perspektywa
Kadrowanie w edytorze grafiki rastrowej pozwala na wycięcie określonego fragmentu obrazu aby skupić uwagę na jego najważniejszej części. Proces kadrowania jest niezbędny w sytuacjach gdy chcemy przedstawić tylko wybrany obszar grafiki co jest powszechną praktyką w przygotowywaniu ilustracji do publikacji online. Poprzez kadrowanie eliminujemy zbędną przestrzeń wokół istotnych elementów dzięki czemu obraz staje się bardziej czytelny i estetyczny. Jest to szczególnie ważne w kontekście ograniczonej przestrzeni na stronach internetowych oraz chęci optymalizacji rozmiarów plików graficznych co wpływa na szybkość ładowania witryny. Dobrze wykonane kadrowanie pozwala również na zachowanie estetyki kompozycji obrazu poprzez zastosowanie zasad takich jak reguła trójpodziału co zwiększa atrakcyjność wizualną. Warto również pamiętać że w kontekście norm branżowych kadrowanie jest podstawowym narzędziem w arsenale każdego grafika co znajduje odzwierciedlenie w większości współczesnych aplikacji do edycji grafiki rastrowej.

Pytanie 35

Na przedstawionej grafice znajduje się struktura sekcji dla witryny internetowej. Przyjmując, że blok5 nie ma przypisanej szerokości, a bloki są określone w dokumencie HTML w kolejności ich numeracji, jak powinno wyglądać zdefiniowanie opływania?

Ilustracja do pytania
A. bloki 1, 2, 4 float: left; blok 3, 5 float: right;
B. bloki 1, 2, 3, 4 float: right; blok 5 clear: right;
C. bloki 1, 2, 4 float: left; blok 3 float: right; blok 5 clear: both;
D. blok 1 float: left; bloki 2, 4 float: center; blok 3 float: right; blok 5 clear: both;
Odpowiedź 3 jest poprawna, ponieważ odpowiada układowi bloków na stronie i ich pozycjonowaniu. Użycie właściwości CSS float: left; dla bloków 1, 2 i 4 pozwala im ułożyć się w linii po lewej stronie. Blok 3 z float: right; zostanie umieszczony po prawej stronie, co jest zgodne z przedstawionym układem. Blok 5 natomiast, znajdujący się na dole i rozciągający się na całą szerokość, wymaga użycia clear: both;, aby nie opływały go inne bloki i mógł zająć całą dostępną przestrzeń poziomą. Takie zastosowanie float i clear jest zgodne z najlepszymi praktykami w projektowaniu układów stron internetowych. Stylowanie za pomocą float jest powszechnie używane w CSS do tworzenia dynamicznych układów, a właściwość clear zapewnia, że element nie będzie opływany przez poprzedzające elementy pływające, co jest szczególnie istotne dla elementów podsumowujących lub końcowych na stronie.

Pytanie 36

Co należy zrobić, aby strona internetowa była dostępna dla osób z niepełnosprawnościami, zgodnie z wytycznymi WCAG?

A. używać tylko akapitów, bez nagłówków h1-h6
B. testować stronę wyłącznie w najpopularniejszej przeglądarce
C. opisywać obrazy tekstem alternatywnym, a kontrolki etykietami
D. stosować tylko jedną barwę i jej odcienie
Pozostałe odpowiedzi nie poprawiają dostępności, a część wręcz jej szkodzi. Rezygnacja z nagłówków h1-h6 odbiera czytnikom ekranu plan dokumentu, przez co trudniej się po nim poruszać. Testowanie tylko w jednej, najpopularniejszej przeglądarce dotyczy zgodności technicznej, a nie potrzeb osób z niepełnosprawnościami. Ograniczenie palety do jednego koloru i jego odcieni nie gwarantuje odpowiedniego kontrastu ani czytelności. Dostępność zapewnia opisywanie obrazów tekstem alternatywnym oraz etykietowanie kontrolek formularza, dlatego to ta odpowiedź jest poprawna.

Pytanie 37

Który fragment definicji dwukolumnowej tabeli odpowiada efektowi scalenia komórki 1 i 3, przedstawionemu na ilustracji?

Ilustracja do pytania
A. <td colspan="2">komórka1+3</td>
B. <td colspan="3">komórka1+3</td>
C. <td rowspan="2">komórka1+3</td>
D. <td rowspan="3">komórka1+3</td>
W tym zadaniu kluczowe jest rozróżnienie dwóch atrybutów HTML: colspan i rowspan. Oba służą do scalania komórek w tabeli, ale działają w zupełnie różnych kierunkach. Colspan łączy komórki w poziomie, czyli wzdłuż kolumn, natomiast rowspan scala komórki w pionie, wzdłuż wierszy. Na ilustracji widać, że „komórka1+3” zajmuje całą pierwszą kolumnę w dwóch pierwszych wierszach. To oznacza, że jedna komórka rozciąga się na dwa wiersze, a nie na dwie kolumny. Stąd logicznie wynika, że użycie colspan w ogóle nie pasuje do tej sytuacji. Gdybyśmy wpisali <td colspan="2">, przeglądarka potraktowałaby tę komórkę jako rozciągającą się na dwie kolumny w jednym wierszu. Efekt byłby taki, że komórki z drugiej kolumny zostałyby przesunięte, a układ z obrazka zupełnie by się rozjechał. Z kolei wartość colspan="3" w dwukolumnowej tabeli jest po prostu nielogiczna: próbujemy zająć trzy kolumny, gdy istnieją tylko dwie. W praktyce takie nadmiarowe wartości często kończą się chaotycznym renderowaniem tabeli, bo przeglądarka stara się „naprawić” błędny kod. Zostaje jeszcze rowspan z wartością 3. To też nie pasuje do przykładu, bo nasza scalona komórka obejmuje tylko dwa wiersze, nie trzy. Ustawienie rowspan="3" spowodowałoby, że komórka próbowałaby zająć miejsce również w trzecim wierszu, co zaburzyłoby pozycję „komórki5”. Typowym błędem myślowym jest mylenie liczby kolumn z liczbą wierszy: wiele osób patrzy na liczbę pól, które wizualnie wydają się połączone, i automatycznie wybiera colspan, bo kojarzy im się to z „większą szerokością”. Tymczasem trzeba zawsze zadać sobie jedno proste pytanie: czy komórka ma być szersza (więcej kolumn – colspan), czy wyższa (więcej wierszy – rowspan). W tym zadaniu odpowiedź jest jednoznaczna: chodzi o połączenie komórek pionowo w dół, więc poprawne może być tylko rowspan z wartością równą liczbie wierszy, które faktycznie zajmuje scalona komórka, czyli 2.

Pytanie 38

W dokumentacji CMS WordPress znajduje się zdanie:
"Enable comments for this post"
Co oznacza to zdanie?

A. Włącz edycję wpisu.
B. Włącz publikację wpisu.
C. Włącz możliwość dodawania komentarzy do wpisu.
D. Włącz formatowanie wpisu.
Poprawnie – komunikat „Enable comments for this post” w WordPressie oznacza dokładnie włączenie możliwości dodawania komentarzy do konkretnego wpisu. W praktyce jest to po prostu przełącznik, który decyduje, czy pod danym postem będzie widoczny formularz komentowania i lista komentarzy użytkowników. Z mojego doświadczenia to jedna z podstawowych opcji zarządzania interakcją z czytelnikami w systemach CMS. WordPress ma wbudowany system komentarzy i dla każdego wpisu z osobna można zdecydować, czy chcesz dopuścić dyskusję, czy raczej ma to być „statyczna” treść bez opinii użytkowników. Włączenie komentarzy nie wpływa na możliwość edycji, publikacji ani formatowania treści – to zupełnie osobne funkcje. Edycja odbywa się w edytorze blokowym lub klasycznym, publikacja jest kontrolowana przyciskiem „Opublikuj” / „Zaktualizuj”, a formatowanie dotyczy układu tekstu, nagłówków, obrazków, list itd. Włączanie komentarzy to raczej kwestia konfiguracji modułu dyskusji. W dobrych praktykach administracji WordPressa zaleca się świadome zarządzanie komentarzami: włączać je tam, gdzie istotna jest interakcja (np. blog, poradniki, aktualności), a wyłączać na stronach typu regulamin, polityka prywatności czy strony czysto informacyjne. W ustawieniach dyskusji można też ustawić moderację, wymóg zatwierdzania komentarzy, filtrowanie spamu czy ograniczenia dla niezalogowanych. W poważniejszych serwisach często łączy się natywne komentarze WordPressa z dodatkowymi wtyczkami (np. antyspam, integracja z social media), ale podstawowy przełącznik zawsze oznacza to samo: czy ten konkretny wpis ma mieć aktywną sekcję komentarzy, czy nie.

Pytanie 39

Którą kwerendę należy wykonać, aby zaktualizować wszystkim rekordom z tabeli pracownicy wartość w kolumnie plec na K, przyjmując na potrzeby zadania, że każde imię żeńskie kończy się literą a?

A. UPDATE pracownicy SET plec='K' WHERE imie='%a';
B. ALTER TABLE pracownicy SET plec='K' WHERE imie='%a';
C. UPDATE pracownicy SET plec='K' WHERE imie LIKE '%a';
D. ALTER TABLE pracownicy SET plec='K' WHERE imie LIKE '%a';
W tym zadaniu łatwo się potknąć na dwóch rzeczach: pomyleniu operacji na strukturze tabeli z operacjami na danych oraz na nieprawidłowym użyciu wzorca tekstowego. W SQL istnieje dość wyraźny podział na instrukcje służące do definiowania struktury bazy (DDL) oraz te, które manipulują rekordami (DML). ALTER TABLE należy do tej pierwszej grupy. Używa się go do dodawania kolumn, zmiany typu danych, ustawiania kluczy obcych, czasem indeksów. Nie ma on mechanizmu typu SET kolumna='wartość' z warunkiem WHERE, który modyfikuje poszczególne wiersze. Próba napisania ALTER TABLE ... SET plec='K' WHERE imie LIKE '%a' po prostu nie jest zgodna ze składnią SQL i nie zadziała w żadnym normalnym systemie bazodanowym.
Drugi typ błędu dotyczy użycia WHERE imie='%a'. W wielu językach programowania znak % kojarzy się z operacjami na łańcuchach albo z formatowaniem, ale w czystym SQL porównanie z operatorem = oznacza ścisłą równość, bez żadnych wildcardów. Wyrażenie imie = '%a' oznacza: imie ma być dokładnie dwuznakowym ciągiem składającym się z procenta i litery „a”. Żadne „dowolne znaki przed a” się tu nie pojawiają. Do dopasowywania wzorców tekstowych służy operator LIKE, a dopiero przy LIKE znaczek % ma specjalne znaczenie – „dowolny ciąg znaków”. To jest bardzo typowe nieporozumienie: ktoś pamięta, że w LIKE używa się % i _ jako wildcardów, i odruchowo wrzuca % także przy zwykłym =.
Z mojego doświadczenia wynika, że dobrym nawykiem jest rozdzielenie w głowie: UPDATE + SET + WHERE – do zmiany danych; ALTER TABLE – tylko do zmian struktury. A przy wyszukiwaniu tekstów: jeśli chcę sztywne porównanie, używam =, jeśli szukam po fragmencie, używam LIKE z % (wieloznak) lub _ (pojedynczy znak). W praktyce webowej błędne użycie tych konstrukcji może prowadzić do sytuacji, że kwerenda nic nie zwraca albo nie aktualizuje żadnego rekordu, a programista długo szuka błędu np. po stronie PHP czy JavaScript, zamiast zacząć od samego SQL-a. Warto też pamiętać, że aktualizacje bez poprawnego WHERE są niebezpieczne, bo mogą zmienić wszystkie rekordy w tabeli, więc warunek oparty na właściwie użytym LIKE jest kluczowy zarówno dla poprawności, jak i bezpieczeństwa danych.

Pytanie 40

Jednoznacznym identyfikatorem rekordu w bazie danych jest pole

A. klucza obcego.
B. klucza głównego.
C. wyłącznie typu logicznego.
D. wyłącznie typu tekstowego.
Poprawna jest odpowiedź dotycząca klucza głównego, bo to właśnie pole (lub zestaw pól) oznaczone jako PRIMARY KEY w tabeli pełni rolę jednoznacznego identyfikatora rekordu. W praktyce oznacza to, że dla każdej krotki (wiersza) w tabeli wartość klucza głównego musi być unikalna i nie może być pusta (NULL). Systemy baz danych, takie jak MySQL, PostgreSQL, SQL Server czy Oracle, egzekwują te zasady automatycznie – jeśli spróbujesz wstawić drugi rekord z tą samą wartością klucza głównego, dostaniesz błąd naruszenia unikalności. Moim zdaniem to jedna z kluczowych zasad normalnego projektowania baz danych: zawsze projektujemy tabelę zaczynając od przemyślania klucza głównego. W aplikacjach webowych bardzo często używa się prostego klucza głównego typu liczbowego (np. INT AUTO_INCREMENT lub SERIAL), który jest technicznym identyfikatorem rekordu. Dzięki temu łatwo się odwołać do konkretnego użytkownika, zamówienia czy produktu po jego ID. Klucz główny jest też podstawą do definiowania kluczy obcych w innych tabelach – relacje typu 1:N czy N:M opierają się właśnie na odwołaniach do wartości PRIMARY KEY. Z mojego doświadczenia wynika, że stosowanie sztucznych (surrogate) kluczy głównych, zamiast kombinowania z wieloma polami naturalnymi, upraszcza później zapytania SQL, modyfikacje struktury i integrację z kodem w PHP czy JavaScript. W dobrze zaprojektowanej bazie danych każda tabela relacyjna powinna mieć jasno zdefiniowany klucz główny, bo bez tego trudno mówić o porządnym zarządzaniu danymi, spójności referencyjnej i wydajnym indeksowaniu.