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: 12 maja 2026 11:56
  • Data zakończenia: 12 maja 2026 12:05

Egzamin zdany!

Wynik: 27/40 punktów (67,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

Wskaż funkcję PHP, która umożliwia zapisanie odczytanej zawartości pliku do zmiennej, która reprezentuje ciąg znaków?

A. get_file()
B. file_get_contents()
C. eof()
D. fwrite()
Funkcja file_get_contents() jest podstawowym narzędziem w PHP, które umożliwia odczytanie zawartości pliku i zapisanie jej bezpośrednio do zmiennej jako ciągu znaków. Jest to niezwykle przydatne, gdyż pozwala na łatwe przetwarzanie tekstu z plików, takich jak pliki konfiguracyjne, dokumenty JSON lub XML. Przykład zastosowania: $content = file_get_contents('plik.txt');. Dzięki temu możemy szybko manipulować danymi, analizować je lub wyświetlać na stronie. Warto również zauważyć, że funkcja ta obsługuje różne źródła, w tym zdalne pliki, co czyni ją wszechstronnym narzędziem w programowaniu webowym. Z perspektywy dobrych praktyk, pamiętaj o sprawdzaniu, czy plik istnieje przed jego odczytem, aby uniknąć błędów. Użycie file_get_contents() jest zgodne z zasadami efektywnego zarządzania danymi w aplikacjach PHP, co czyni ją rekomendowanym podejściem do pracy z plikami tekstowymi.

Pytanie 2

Aby dostosować dźwięk do określonego poziomu głośności, trzeba zastosować efekt

A. usuwania szumów
B. wyciszenia
C. podbicia basów
D. normalizacji
Normalizacja to proces, który ma na celu dostosowanie głośności dźwięku do określonego poziomu, co jest kluczowe w produkcji audio. Poprawna normalizacja zapewnia, że dźwięk osiąga optymalny poziom głośności bez zniekształceń, co jest szczególnie ważne w kontekście emisji radiowych, telewizyjnych oraz przy tworzeniu materiałów audio dla platform strumieniowych. W praktyce normalizacja może być realizowana za pomocą różnych algorytmów, takich jak LUFS (Loudness Units Full Scale), które mierzą głośność w sposób, który uwzględnia percepcję ludzkiego ucha. Przykładowo, jeśli mamy nagranie, które jest znacznie cichsze od innych utworów w albumie, proces normalizacji podniesie jego głośność do poziomu zbliżonego do reszty utworów, co poprawia ogólne wrażenie słuchowe. Ponadto, normalizacja jest zgodna z dobrymi praktykami branżowymi, które zalecają utrzymanie spójności głośności między różnymi mediami, co znacząco zwiększa jakość odbioru słuchowego.

Pytanie 3

Który z poniższych fragmentów kodu HTML sformatuje tekst zgodnie z wymaganiami? (zauważ, że słowo "stacji" jest wyświetlane w większej czcionce niż pozostałe słowa w tej linii)

Ilustracja do pytania
A. Odpowiedź 3: C
B. Odpowiedź 2: B
C. Odpowiedź 1: A
D. Odpowiedź 4: D
Pozostałe odpowiedzi zawierają błędy w składni HTML lub zastosowane znaczniki nie spełniają wymagań zadania. W odpowiedzi A użyto znacznika big tylko dla pierwszego słowa stacji co powoduje że lokomotywa pozostaje w domyślnym rozmiarze czcionki. Odpowiedź C zawiera błąd składniowy ponieważ zamyka znacznik h1 używając p co jest niepoprawne w standardowej specyfikacji HTML. Taki błąd może prowadzić do nieprzewidywalnych rezultatów w wyświetlaniu treści przez różne przeglądarki. W odpowiedzi D zastosowano kombinację znaczników small i h1 co jest niezgodne z semantyką HTML ponieważ znacznik small jest używany do zmniejszania rozmiaru tekstu a nie zwiększania. Ponadto użycie h1 zagnieżdżonego wewnątrz small jest niezgodne z zasadami semantycznego HTML co może negatywnie wpływać na dostępność i SEO strony. Przy projektowaniu stron internetowych ważne jest by stosować właściwe znaczniki zgodnie z ich przeznaczeniem co zwiększa kompatybilność i poprawność kodu oraz ułatwia jego dalsze utrzymanie i rozwój. Użycie CSS do zarządzania stylami jest zalecane jako nowoczesne i elastyczne rozwiązanie w porównaniu do starszych metod formatowania tekstu w HTML.

Pytanie 4

Który z poniższych znaczników jest używany do definiowania list w HTML?

A. <th>
B. <td>
C. <ul>
D. <tr>
<ul> jest znacznikami HTML, które definiuje nieuporządkowaną listę. Użycie tego znacznika pozwala na przedstawienie elementów listy w formie graficznej, gdzie każdy element jest oznaczony punktem. Jest to podstawowy element w HTML, który jest zgodny z wytycznymi W3C i szeroko stosowany w tworzeniu responsywnych i estetycznych interfejsów użytkownika. Przykładowe zastosowanie <ul> może obejmować listy składników, funkcji, czy też elementów menu na stronie internetowej. Stosując <ul>, można także użyć znacznika <li>, aby określić poszczególne elementy listy, co zwiększa czytelność i strukturalizację treści. Znajomość i umiejętność stosowania tych znaczników jest kluczowa dla każdego web developera, aby tworzyć dostępne i zrozumiałe dla użytkowników interfejsy, a także wspierać praktyki SEO poprzez odpowiednią organizację treści.

Pytanie 5

W języku SQL, jaki będzie efekt wykonania poniższego zapytania?

ALTER TABLE osoba DROP COLUMN grupa;
A. Dodana zostanie kolumna grupa.
B. Usunięta zostanie kolumna grupa.
C. Zmieniona zostanie nazwa kolumny na grupa.
D. Zmieniona zostanie nazwa tabeli na grupa.
Gratulacje, wybrałeś poprawną odpowiedź. W zaprezentowanym pytaniu skupiliśmy się na instrukcji 'ALTER TABLE' w języku SQL, a dokładniej na jej konkretnej odmianie, tj. 'DROP COLUMN'. Ta instrukcja służy do usunięcia kolumny z istniejącej tabeli. W tym konkretnym przypadku, użyto jej do usunięcia kolumny o nazwie 'grupa' z tabeli 'osoba'. Jest to przydatne narzędzie w przypadku, gdy chcemy usunąć dane z bazy bez usuwania całej tabeli. Pamiętaj jednak o skutkach utraty wszystkich danych z tej kolumny. Zawsze warto zrobić backup bazy danych przed taką operacją. Dobrą praktyką jest także sprawdzenie, jakie inne elementy bazy są zależne od usuwanej kolumny, aby uniknąć niespodziewanych problemów.

Pytanie 6

Jakie jest oznaczenie typu stało-znakowego w SQL?

A. time
B. text
C. char
D. bool
Typ stało-znakowy char w języku SQL jest używany do przechowywania łańcuchów znaków o stałej długości. Oznacza to, że każdy zapisany ciąg będzie miał dokładnie taką samą liczbę znaków, co jest definiowane podczas tworzenia tabeli. Najczęściej stosowana długość to 1 do 8000 znaków, chociaż w niektórych bazach danych ta ilość może być różna. Typ char jest szczególnie przydatny, gdy z góry wiadomo, że wszystkie wartości w danej kolumnie będą miały tę samą długość, co pozwala na efektywniejsze przechowywanie danych i optymalizację wydajności. Na przykład, jeśli tworzymy tabelę użytkowników, w której każdy użytkownik ma przypisany identyfikator w postaci stałej długości, można użyć char(10) do przechowywania tych identyfikatorów. Ważne jest również, aby zwrócić uwagę na różnice między typem char a typem varchar, który przechowuje zmienną długość łańcuchów, co może prowadzić do większego zużycia pamięci w przypadkach, gdy długość przechowywanych danych jest różna. Typ char jest zgodny z wieloma standardami SQL, co czyni go powszechnie stosowanym rozwiązaniem w relacyjnych bazach danych.

Pytanie 7

Plik graficzny powinien być zapisany w formacie GIF, gdy

A. jest konieczność zapisu obrazu bez kompresji
B. jest to grafika wektorowa
C. jest potrzeba zapisu obrazu lub animacji
D. jest to obraz stereoskopowy
Format GIF (Graphics Interchange Format) jest szeroko stosowany do zapisu obrazów oraz animacji. GIF obsługuje do 256 kolorów w palecie, co czyni go idealnym do grafiki komputerowej o prostych kolorach, takich jak ikony czy grafiki internetowe. Kluczową cechą GIF-a jest możliwość kompresji bezstratnej, co pozwala na zachowanie jakości obrazu przy stosunkowo niskiej wadze pliku. Jest to szczególnie istotne w przypadku animacji, gdzie różne klatki mogą być przechowywane w jednym pliku, umożliwiając płynne przejścia. GIF jest również kompatybilny z większością przeglądarek internetowych, co czyni go doskonałym wyborem do zastosowań internetowych. Przykładowo, animowane GIF-y są często wykorzystywane w mediach społecznościowych i na stronach internetowych do przyciągania uwagi, a ich prosta struktura sprawia, że są łatwe w implementacji i odtwarzaniu. Dodatkowo, standard GIF został ustalony przez Compuserve w 1987 roku i od tego czasu stał się jednym z najpopularniejszych formatów graficznych w sieci.

Pytanie 8

W instrukcjach mających na celu odtwarzanie dźwięku na witrynie internetowej jako podkładu muzycznego nie stosuje się atrybutu

A. href="C:/100.wav">
B. loop="10"
C. balance="-10"
D. volume="-100"
Wybór atrybutów, takich jak 'volume="-100"', 'balance="-10"' oraz 'loop="10"', może prowadzić do nieporozumień dotyczących ich zastosowania w kontekście odtwarzania dźwięku na stronach internetowych. Atrybut 'volume', w rzeczywistości, nie jest standardowym atrybutem HTML. Wprowadzenie atrybutu 'volume' z wartością '-100' sugeruje błędne podejście do zarządzania głośnością, gdyż głośność powinna być regulowana w sposób programowy, często przy użyciu JavaScript, aby zapewnić bardziej precyzyjną kontrolę nad poziomem dźwięku. Z kolei 'balance' także nie jest standardowym atrybutem HTML i nie istnieje możliwość bezpośredniego jego zastosowania w tagach HTML dla dźwięku. Aby zrównoważyć dźwięk, należy skorzystać z dedykowanych narzędzi audio w JavaScript lub edytorów audio. Warto również zauważyć, że 'loop="10"' jest błędnym wykorzystaniem atrybutu 'loop', który w HTML działa jako prosty przełącznik, bez możliwości określenia liczby powtórzeń. Przykład wartości boolean 'loop' w tagu <audio> polega na tym, że plik audio będzie powtarzany w nieskończoność, a nie przez 10 razy. Te nieporozumienia mogą prowadzić do rozczarowania wśród deweloperów, jeśli nie są świadomi funkcji i ograniczeń atrybutów HTML. Kluczowe jest zrozumienie, że użycie atrybutów powinno być zgodne z ich przeznaczeniem w standardach HTML, aby zapewnić prawidłowe działanie aplikacji webowych.

Pytanie 9

Jaką wartość uzyska zmienna x po wykonaniu poniższego kodu PHP?

mysqli_query($db, "DELETE FROM produkty WHERE status < 0");
$x = mysqli_affected_rows($db);
A. Liczbę wierszy przetworzonych przez zapytanie DELETE FROM.
B. Liczbę wierszy w tabeli produkty, dla których pole status przekracza zero.
C. Liczbę wierszy, które znajdują się w bazie danych.
D. Liczbę wierszy, które zostały dodane do tabeli produkty.
Poprawna odpowiedź dotyczy liczby wierszy przetworzonych przez zapytanie DELETE FROM w bazie danych. Funkcja mysqli_affected_rows($db) zwraca liczbę wierszy, które zostały zmodyfikowane przez ostatnie wykonane zapytanie na danym połączeniu z bazą danych. W przypadku zapytania DELETE, zwróci ona liczbę wierszy, które zostały usunięte w wyniku działania tego zapytania. W kontekście dobrych praktyk, zawsze warto sprawdzać, jakie operacje zostały wykonane na bazie danych, aby zrozumieć wpływ zapytań na dane. Na przykład, w aplikacjach e-commerce, przed usunięciem produktów, można wykorzystać tę informację do potwierdzenia, że usunięcie danych nie wpływa negatywnie na inne elementy systemu. Użycie tej funkcji pozwala na efektywne zarządzanie danymi oraz na utrzymanie spójności w bazie danych, co jest kluczowe w kontekście bezpieczeństwa i integralności danych.

Pytanie 10

Co to jest AJAX?

A. Biblioteka JavaScript do obsługi animacji i efektów wizualnych
B. Język programowania służący do tworzenia stron internetowych
C. System zarządzania bazą danych używany do przechowywania i manipulacji danymi
D. Technologia umożliwiająca asynchroniczne przesyłanie danych między klientem a serwerem bez przeładowania strony
Wiele osób mylnie sądzi, że AJAX to język programowania. W rzeczywistości AJAX to technologia, która w połączeniu z JavaScript, HTML i CSS pozwala na tworzenie dynamicznych stron internetowych. JavaScript jest rzeczywiście językiem programowania, ale AJAX to raczej technika, która wykorzystuje jego możliwości. Kolejny błąd to utożsamianie AJAX z biblioteką do animacji. Podczas gdy biblioteki JavaScript, jak jQuery, mogą wspierać AJAX i oferować efekty wizualne, same animacje nie są związane z przesyłaniem danych. Z kolei system zarządzania bazą danych to całkiem odmienna dziedzina. Bazy danych są używane do przechowywania i zarządzania danymi, ale AJAX nie jest narzędziem do tego celu. Często błędnie kojarzy się to ze względu na fakt, że AJAX może pobierać dane z serwera, który z kolei korzysta z bazy danych. Takie myślenie prowadzi do nieprawidłowych wniosków, ponieważ AJAX jest jedynie sposobem komunikacji między klientem a serwerem, a nie narzędziem do zarządzania danymi. Kluczem do zrozumienia AJAX jest jego rola w poprawie interakcji użytkownika z aplikacją webową poprzez asynchroniczne przesyłanie danych.

Pytanie 11

Aby zrealizować łamanie linii w tekście, na przykład w zmiennej typu string, należy wykorzystać symbol

A. t
B. slash
C. b
D. n
Aby zdefiniować łamanie linii tekstu w zmiennych napisowych, stosuje się znak "n" (newline), który jest często reprezentowany jako \n w kodzie. Jest to standardowy sposób na wprowadzenie nowej linii w wielu językach programowania, na przykład w Pythonie, C, czy JavaScript. Użycie znaku \n pozwala na formatowanie tekstu w sposób czytelny, dzieląc dłuższe ciągi na mniejsze fragmenty, co poprawia jego przejrzystość. W praktyce, gdy chcemy stworzyć wieloliniowy tekst, stosujemy \n, aby oddzielić poszczególne wiersze, co jest kluczowe w tworzeniu raportów, komunikatów użytkownika lub w interfejsach graficznych. Dobrą praktyką jest również pamiętanie o kontekście, w jakim używamy łamania linii, gdyż różne systemy operacyjne mogą mieć różne konwencje dotyczące znaków końca linii (np. w systemie Windows używa się kombinacji \r\n). Zrozumienie tego mechanizmu jest istotne dla każdego programisty, by skutecznie zarządzać formatowaniem tekstu oraz jego prezentacją.

Pytanie 12

Wskaż fragment kodu CSS, który odpowiada układowi bloków 2 - 5, zakładając, że są one oparte na poniższym kodzie HTML.

Ilustracja do pytania
A. C
B. A
C. D
D. B
Niepoprawne odpowiedzi często wynikają z błędnego zrozumienia działania właściwości float oraz szerokości elementów w układzie blokowym. Float jest potężnym narzędziem które pozwala na pływające rozmieszczenie elementów ale wymaga precyzyjnego planowania aby uniknąć niepożądanych efektów takich jak elementy wychodzące poza przewidywane miejsca. Przy wyborze błędnych odpowiedzi można zauważyć że nieodpowiednie użycie float może prowadzić do nieprawidłowego wyświetlania bloków. Na przykład brak odpowiedniego ustawienia float left lub right dla niektórych bloków może skutkować ich przesunięciem poza zamierzony układ. Dodatkowo nieprawidłowe zarządzanie szerokością bloków może spowodować że układ przekroczy dostępny obszar wyświetlania co szczególnie jest problematyczne w responsywnym projektowaniu stron. Typowym błędem jest również brak uwzględnienia clearfix co może prowadzić do nieprawidłowego przepływu kolejnych elementów w układzie. Zrozumienie jak float wpływa na otaczające elementy oraz jak kontrolować szerokość i przepływ elementów jest kluczowe w tworzeniu stabilnych i przewidywalnych układów stron internetowych. Poprawne zastosowanie tych zasad jest kluczowe dla zgodnego z dobrymi praktykami projektowania stron które są nie tylko estetyczne ale i funkcjonalne w różnych kontekstach urządzeń i środowisk użytkownika.

Pytanie 13

Walidator W3C zgłosił błąd walidacji: Zakończony tag p został znaleziony, jednak były otwarte elementy. Który element kodu to dotyczy?

A. <p>Ala ma kota</p>
B. <p>Ala ma <b>kota</p></b>
C. <p>Ala ma <b>kota</b></p>
D. <p>Ala ma kota
Wybrana odpowiedź odnosi się do sytuacji, w której niepoprawnie zamknięto elementy HTML. W niniejszym przykładzie, tag <b> otwarty przed tagiem <p> jest niepoprawnie zamknięty w złą stronę. Poprawny kod HTML powinien najpierw zamknąć element <b>, zanim zamknie element <p>. Oznacza to, że powinien on wyglądać tak: <p>Ala ma <b>kota</b></p>. Standardy W3C, które dotyczą walidacji HTML, podkreślają znaczenie poprawnego zagnieżdżania elementów. Gdy nieprzestrzegamy tej zasady, pojawią się błędy walidacji, co może prowadzić do problemów z wyświetlaniem strony lub interpretacją przez przeglądarki. Zrozumienie zasad poprawnego zagnieżdżania elementów HTML jest kluczowe, aby tworzyć strony internetowe, które są zarówno semantyczne, jak i dostępne. Dlatego ważne jest, by zawsze zwracać uwagę na poprawną strukturę kodu HTML, co zwiększa jego wydajność i użyteczność.

Pytanie 14

Błędy w interpretacji kodu PHP są rejestrowane

A. w logu, o ile odpowiedni parametr jest ustawiony w pliku php.ini
B. pomijane przez przeglądarkę oraz interpreter PHP
C. w oknie edytora, w którym tworzony jest kod PHP
D. w dzienniku zdarzeń systemu Windows
Błędy interpretacji kodu PHP są kluczowym zagadnieniem w procesie programowania w tym języku. Gdy wystąpi błąd, jego zapisanie w logu jest niezwykle istotne dla późniejszej analizy i debugowania. W celu umożliwienia takiej funkcjonalności, programista musi odpowiednio skonfigurować plik php.ini, który jest centralnym plikiem konfiguracyjnym dla PHP. Ustawienia związane z logowaniem błędów obejmują dyrektywy takie jak 'error_reporting', 'log_errors' oraz 'error_log'. Na przykład, aby włączyć logowanie błędów, należy ustawić 'log_errors' na 'On', a 'error_log' wskazuje lokalizację pliku, w którym błędy będą zapisywane. Przykładowo, ustawienie 'error_log = /var/log/php_errors.log' spowoduje, że wszystkie błędy będą trafiały do wskazanego pliku. To podejście jest zgodne z zaleceniami najlepszych praktyk w programowaniu, które wskazują na konieczność monitorowania i analizy błędów w aplikacjach. Takie logowanie może obejmować zarówno błędy krytyczne, jak i ostrzeżenia, co pozwala na lepszą kontrolę nad działaniem aplikacji i szybsze lokalizowanie problemów.

Pytanie 15

Zapytanie: SELECT imie, pesel, wiek FROM dane WHERE wiek IN (18,30) spowoduje zwrócenie:

A. imion, numerów PESEL oraz wieku osób, które mają więcej niż 30 lat
B. imion, numerów PESEL oraz wieku osób, których wiek wynosi 18 lub 30 lat
C. imion, nazwisk oraz numerów PESEL osób mających mniej niż 18 lat
D. imion, numerów PESEL oraz wieku osób w przedziale od 18 do 30 lat
Zapytanie SQL, które zostało podane, wykorzystuje klauzulę WHERE z operatorem IN, co oznacza, że wybiera tylko te rekordy, które spełniają określone warunki. W tym przypadku, filtrujemy osoby na podstawie ich wieku, wybierając tylko te, które mają 18 lub 30 lat. W związku z tym, wynik zapytania będzie zawierał imiona, numery PESEL oraz wiek osób, które mają dokładnie 18 lub 30 lat. W praktyce, takie zapytania są niezwykle użyteczne w bazach danych, gdzie często potrzebujemy uzyskać dane dla konkretnej grupy wiekowej. Dobrą praktyką jest również stosowanie takich filtrów, aby unikać błędów w analizach danych i zapewnić, że wyniki są zgodne z oczekiwaniami. Na przykład, jeśli prowadzisz badania demograficzne, możesz chcieć skupić się na określonych grupach wiekowych, co pozwala na bardziej szczegółowe wnioski i lepsze zrozumienie danej populacji."}

Pytanie 16

Zawartość kodu w języku HTML umieszczona w ramce ilustruje zestaw

<ol>
<li>Pierwszy</li>
<li>Drugi</li>
<li>Trzeci</li>
</ol>
A. numerowanej
B. skróconych
C. linków
D. wypunktowanej
Fragment kodu HTML używa tagu <ol> co oznacza listę numerowaną. Tag <ol> jest skrótem od ordered list i jest używany do tworzenia listy elementów, które są automatycznie numerowane przez przeglądarkę. Wewnątrz tego tagu znajdują się tagi <li>, które oznaczają poszczególne elementy listy. Każdy z tych elementów będzie wyświetlany z kolejnym numerem w przeglądarce internetowej. Na przykład w przypadku zamieszczonego kodu HTML przeglądarka wyświetli listę z numerami 1 2 3 przed elementami Pierwszy Drugi Trzeci. Listy numerowane są użyteczne w sytuacjach gdy ważna jest kolejność elementów na przykład w instrukcjach krok po kroku lub rankingach. Tworzenie list numerowanych z użyciem <ol> jest zgodne ze standardami HTML i jest dobrym rozwiązaniem gdyż pozwala na łatwe zarządzanie kolejnością elementów bez konieczności ręcznego numerowania co redukuje ryzyko błędów i automatycznie aktualizuje numerację w przypadku dodania bądź usunięcia elementów z listy.

Pytanie 17

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 użytkownika
B. nazwa bazy danych
C. hasło dla użytkownika
D. adres serwera bazy danych
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 18

W bazie danych znajduje się tabela o nazwie pracownicy z kolumnami: nazwisko, imię, pensja, wiek. Jak powinna wyglądać składnia polecenia do obliczenia średniej pensji pracowników?

A. select AVG (pensja) from pracownicy
B. select AVG (nazwisko) into pensja
C. select VAR (pensja) from nazwisko
D. select VAR (pracownicy) into pensja
Poprawna odpowiedź, czyli polecenie 'select AVG (pensja) from pracownicy', wykorzystuje funkcję agregującą AVG, która jest standardowo stosowana w SQL do obliczania średniej wartości w kolumnie. W tym przypadku, polecenie to oblicza średnią pensję pracowników zapisanych w tabeli 'pracownicy'. Użycie funkcji AVG jest zgodne z dobrymi praktykami SQL, które zalecają stosowanie odpowiednich funkcji agregujących w celu efektywnego przetwarzania danych. Wartości w kolumnie 'pensja' są analizowane, a wynik zwraca jedną wartość — średnią pensję, co jest niezwykle użyteczne w kontekście raportowania czy analizy wynagrodzeń. Przykładowo, jeśli tabela zawiera pensje 3000, 4000 i 5000, funkcja AVG zwróci 4000. Tego rodzaju zapytania są powszechnie stosowane w raportach kadrowych oraz podczas analizy budżetu w organizacjach, co czyni je niezbędnym elementem wiedzy dla analityków danych oraz programistów baz danych.

Pytanie 19

Prezentowany fragment dokumentu HTML z użyciem JavaScript spowoduje, że po naciśnięciu przycisku

<img src="obraz1.png">
<img src="obraz2.png" id="id1">
<button onclick="document.getElementById('id1').style.display='none'">Przycisk</button>
A. obraz2.png zostanie wymieniony przez obraz1.png
B. obraz1.png zostanie zniknięty
C. obraz1.png zostanie wymieniony przez obraz2.png
D. obraz2.png zostanie zniknięty
Błędne odpowiedzi opierają się na nieporozumieniach dotyczących działania JavaScript i manipulacji DOM. Wskazanie, że 'obraz1.png' zostanie ukryty, jest niepoprawne, ponieważ w kodzie nie ma żadnej instrukcji odnoszącej się do tego elementu; zmiany dotyczą tylko 'obraz2.png'. Innym błędnym wnioskiem jest twierdzenie, że 'obraz2.png' zostanie zastąpiony przez 'obraz1.png'. Taki scenariusz wymagałby zmiany źródła obrazu, a nie ukrycia elementu. Ponadto, stwierdzenie, że 'obraz1.png' zostanie zastąpiony przez 'obraz2.png', również ignoruje fakt, że w kodzie nie ma operacji przypisania ani zmiany źródła. Zrozumienie, jak JavaScript interaguje z HTML, jest kluczowe dla efektywnego tworzenia stron internetowych. Programiści muszą być świadomi, że ukrywanie elementów nie wpływa na inne elementy w dokumencie, a jedynie zmienia ich styl wyświetlania. Dlatego ważne jest, aby dobrze zrozumieć koncepcje manipulacji DOM oraz różnice między ukrywaniem elementów a ich usuwaniem, co pozwala na bardziej złożone i interaktywne doświadczenia na stronach internetowych.

Pytanie 20

Do czego służy znacznik <i> w języku HTML?

A. zdefiniowania nagłówka w treści
B. zmiany kroju pisma na pochylony
C. umieszczania obrazu
D. zdefiniowania formularza
Znacznik <i> w języku HTML jest używany do przedstawienia tekstu w stylu kursywy. Jest to jeden z najprostszych znaczników, który jest często stosowany do podkreślenia pewnych elementów tekstowych, takich jak tytuły książek, nazwy filmów czy inne wyrazy, które mają znaczenie kontekstowe. Użycie tego znacznika jest zgodne z zasadami semantyki HTML, co oznacza, że zachowuje on znaczenie treści, a nie tylko jej wygląd. Warto również zauważyć, że w CSS istnieje wiele możliwości stylizacji tekstu, a znacznik <i> jest jednym z elementów, które w łatwy sposób można połączyć z regułami stylów, aby stworzyć atrakcyjne wizualnie strony internetowe. Przykładem zastosowania może być: <p>Ostatnio przeczytałem <i>Harry'ego Pottera</i> i bardzo mi się podobał.</p>. W tym przypadku tytuł książki jest wyróżniony, co przyciąga uwagę czytelnika. Warto pamiętać, że w nowoczesnym HTML zamiast <i> dla stylizacji można używać CSS, jednak <i> pozostaje ważnym elementem dla zachowania semantyki treści.

Pytanie 21

Która funkcja PHP obsługi bazy danych służy do kodowania polskich znaków?

A. mysqli_fetch_assoc()
B. mysqli_connect()
C. mysqli_query()
D. mysqli_set_charset()
Prawidłowa odpowiedź to mysqli_set_charset(), bo właśnie ta funkcja ustawia zestaw znaków (charset) dla połączenia z bazą danych w rozszerzeniu mysqli. W praktyce oznacza to, że dzięki niej PHP i serwer bazy danych (np. MySQL) „dogadują się”, w jakim kodowaniu mają być przesyłane i zapisywane teksty – w tym polskie znaki typu ą, ę, ł, ś itd. Bez poprawnie ustawionego charsetu bardzo łatwo o krzaczki, znaki zapytania zamiast liter albo problemy z sortowaniem tekstu. Moim zdaniem dobrą praktyką jest zawsze po nawiązaniu połączenia mysqli_connect natychmiast wywołać mysqli_set_charset($conn, 'utf8mb4'). Ten konkretny charset (utf8mb4) jest obecnie standardem de facto: obsługuje pełne Unicode, w tym emotikony, różne alfabety, a przy okazji bez problemu radzi sobie z polskimi znakami. Przykładowy, poprawny fragment kodu może wyglądać tak: $conn = mysqli_connect('localhost', 'user', 'haslo', 'baza'); mysqli_set_charset($conn, 'utf8mb4'); Dzięki temu każda instrukcja mysqli_query, każde pobieranie danych mysqli_fetch_assoc będzie już działać w odpowiednim kodowaniu. Warto pamiętać, że ustawienie charsetu powinno być spójne na wszystkich poziomach: konfiguracja bazy (collation i charset tabel), ustawienia połączenia (właśnie mysqli_set_charset) oraz nagłówki HTTP/HTML (meta charset="utf-8"). Dopiero takie podejście zgodne z dobrymi praktykami branżowymi zmniejsza ryzyko błędów związanych z kodowaniem tekstu, zwłaszcza w większych aplikacjach webowych. Jeśli robi się projekty komercyjne, to ignorowanie tej funkcji bardzo szybko mści się przy migracjach danych czy integracjach z innymi systemami.

Pytanie 22

Proces przetwarzania sygnału wejściowego w czasie, wykorzystujący zasadę superpozycji, jest związany z filtrem

A. przyczynowym
B. liniowym
C. o skończonej odpowiedzi impulsowej
D. niezmiennym w czasie
Filtr liniowy to taki, który w procesie przetwarzania sygnału spełnia zasadę superpozycji. Oznacza to, że wynik działania filtru na sumie sygnałów wejściowych jest równy sumie wyników działania filtru na poszczególne sygnały. W praktyce, filtry liniowe są powszechnie stosowane w różnych zastosowaniach, takich jak audio, telekomunikacja czy przetwarzanie obrazu, co wynika z ich zdolności do efektywnej analizy sygnałów. Przykładowo, w systemach audio, filtry liniowe mogą być używane do eliminacji szumów czy wzmacniania określonych częstotliwości, co pozwala na uzyskanie lepszej jakości dźwięku. Zgodnie z dobrą praktyką inżynieryjną, projektowanie filtrów liniowych opiera się na zrozumieniu ich charakterystyki częstotliwościowej oraz odpowiedzi impulsowej, co jest kluczowe dla osiągnięcia zamierzonych efektów w przetwarzaniu sygnałów.

Pytanie 23

Wskaż prawidłową definicję funkcji w języku JavaScript?

A. function nazwa_funkcji(argumenty) {instrukcje;}
B. new nazwa_funkcji(argumenty) {instrukcje;}
C. typ_funkcji nazwa_funkcji(argumenty) {instrukcje;}
D. nazwa_funkcji(argumenty) {instrukcje;}
Definicja funkcji w języku JavaScript przy użyciu słowa kluczowego 'function' jest standardowym sposobem deklaracji funkcji. Poprawny zapis 'function nazwa_funkcji(argumenty) {instrukcje;}' jasno wskazuje, że tworzona jest nowa funkcja, której nazwa oraz argumenty są zdefiniowane. Przykładowo, można stworzyć funkcję dodającą dwie liczby: 'function dodaj(a, b) { return a + b; }'. Funkcje w JavaScript mogą być wywoływane w dowolnym miejscu w kodzie, co czyni je niezwykle elastycznymi. Dodatkowo, dzięki temu, że JavaScript obsługuje funkcje jako obiekty pierwszej klasy, można je przekazywać jako argumenty do innych funkcji, przypisywać do zmiennych oraz zwracać z innych funkcji. Warto również zauważyć, że w kontekście dobrych praktyk, używanie funkcji z jasnymi nazwami i dobrze zdefiniowanymi argumentami zwiększa czytelność oraz utrzymanie kodu, co jest istotne w pracy zespołowej oraz przy rozwijaniu większych aplikacji.

Pytanie 24

Jak wybrać nazwy produktów z tabeli sprzet zawierającej pola: nazwa, cena, liczbaSztuk, dataDodania, które zostały dodane w roku 2021, a ich cena jest poniżej 100 zł lub liczba sztuk przekracza 4, w sekcji WHERE?

A. WHERE dataDodania LIKE '2021%' AND (cena < 100 OR liczbaSztuk > 4)
B. WHERE dataDodania LIKE '2021%' AND cena < 100 AND liczbaSztuk > 4
C. WHERE dataDodania LIKE '2021%' OR (cena < 100 AND liczbaSztuk > 4)
D. WHERE dataDodania LIKE '2021%' OR cena < 100 OR liczbaSztuk > 4
W analizowanych odpowiedziach błędy wynikają z niepoprawnego rozumienia operatorów logicznych oraz ich zastosowania w kontekście filtracji danych. Pierwsza z propozycji, która używa operatora OR w każdym warunku, powoduje, że zapytanie obejmie zbyt szeroki zakres danych. Oznacza to, że każdy produkt dodany w 2021 roku, niezależnie od ceny czy liczby sztuk, zostanie uwzględniony, co jest sprzeczne z zamierzonym celem. Operator OR w tym przypadku nie spełnia wymagań, ponieważ musimy mieć produkty, które są jednocześnie związane z danym rokiem oraz spełniają przynajmniej jeden z dwóch dodatkowych kryteriów. Odpowiedzi korzystające z operatora AND w każdym warunku również są błędne, ponieważ wykluczą z wyników produkty, które mogą mieć cenę wyższą niż 100 zł, ale liczba sztuk przekracza 4. Taki sposób myślenia prowadzi do zbyt restrykcyjnych filtrów, co może uniemożliwić pozyskanie wartościowych danych. Ważne jest, aby w zapytaniach SQL stosować operator AND do łączenia warunków, gdzie wszystkie muszą być spełnione, oraz operator OR w sytuacjach, gdy wystarczy spełnienie jednego z warunków. Poprawny dobór tych operatorów ma kluczowe znaczenie dla wydajności zapytań oraz dokładności wyników, zwłaszcza w kontekście dużych zbiorów danych, takich jak bazy danych produktów.

Pytanie 25

W przedstawionym kodzie PHP, co powinno się wyświetlić zamiast znaków zapytania?

$x = mysql_query('SELECT * FROM mieszkancy');
if(!$x)
echo "???????????????????????";
A. Niepoprawna nazwa bazy danych
B. Błąd w trakcie przetwarzania zapytania
C. Zapytanie zostało zrealizowane pomyślnie
D. Nieprawidłowe hasło do bazy danych
Odpowiedź 2 czyli Błąd przetwarzania zapytania jest poprawna ponieważ w kodzie PHP używana jest funkcja mysql_query do wykonania zapytania SQL Funkcja ta zwraca false w przypadku niepowodzenia co oznacza że blok if(!x) zostanie wykonany tylko wtedy gdy wystąpi błąd w przetwarzaniu zapytania Komunikat Błąd przetwarzania zapytania jest więc właściwy ponieważ odzwierciedla sytuację w której zapytanie nie mogło zostać wykonane poprawnie co może być wynikiem wielu czynników takich jak błędy składniowe w zapytaniu brak połączenia z serwerem bazy danych lub nieodpowiednie uprawnienia użytkownika Praktyczne podejście do obsługi błędów w PHP często obejmuje logowanie szczegółowych komunikatów błędów lub przekazywanie ich użytkownikowi w sposób przyjazny dla użytkownika co jest zgodne z najlepszymi praktykami w zakresie programowania Dodatkowo warto wspomnieć że funkcja mysql_query jest przestarzała i nie jest zalecana do użycia w nowych projektach Zaleca się używanie bardziej nowoczesnych funkcji takich jak mysqli_query lub PDO co poprawia bezpieczeństwo i wydajność aplikacji

Pytanie 26

Którą wartość atrybutu name znacznika <meta> wykorzystuje się do kontrolowania obszaru widzialnego na różnych urządzeniach, na których jest wyświetlana strona internetowa?

A. description
B. viewport
C. generator
D. keywords
W tym zadaniu kluczowe jest zrozumienie, że tylko meta o name="viewport" ma realny wpływ na sposób, w jaki przeglądarka wyznacza obszar widzialny strony na różnych urządzeniach. To właśnie ten atrybut informuje silnik renderujący, jak interpretować szerokość i skalę dokumentu HTML na ekranach o różnych rozdzielczościach i gęstościach pikseli. Pozostałe podane opcje pełnią zupełnie inne role i ich pomylenie z viewportem wynika zwykle z tego, że wszystkie są „jakimiś metadanymi” w <head>. Atrybut name="keywords" był kiedyś używany głównie dla wyszukiwarek do opisu słów kluczowych strony. Obecnie większość wyszukiwarek go ignoruje, bo był masowo nadużywany do spamowania słowami kluczowymi. Nie ma on żadnego związku z responsywnością, skalowaniem strony czy dopasowaniem do ekranu telefonu. To tylko tekstowa informacja, która nie wpływa na sposób renderowania layoutu. Podobnie meta name="description" służy do przekazania krótkiego opisu strony, który często pojawia się jako fragment w wynikach wyszukiwania (snippet). To ważny element SEO i użyteczności, ale ponownie – nie steruje szerokością widoku, nie zmienia zoomu i nie mówi przeglądarce, jak ma „ułożyć” stronę na małym ekranie. To czysta informacja opisowa. Z kolei meta name="generator" jest używana głównie przez systemy CMS (np. WordPress, Joomla) do wpisania nazwy i wersji narzędzia, którym strona została wygenerowana. Ma znaczenie informacyjne, czasem diagnostyczne, ale z punktu widzenia użytkownika końcowego i wyglądu strony nie wnosi nic. Nie wpływa ani na skalę, ani na szerokość, ani na responsywność. Typowym błędem jest wrzucanie wszystkich metatagów do jednego worka i zakładanie, że skoro „meta coś tam”, to pewnie ma wpływ na wyświetlanie strony. W rzeczywistości tylko meta viewport wprost steruje parametrami widoku na urządzeniach mobilnych. Dlatego przy projektowaniu stron responsywnych warto oddzielić w głowie metadane SEO (keywords, description, generator) od metadanych technicznych związanych z renderowaniem (właśnie viewport).

Pytanie 27

Podane w ramce polecenie SQL ma za zadanie

UPDATE Uczen SET id_klasy = id_klasy + 1;
A. zwiększyć o jeden wartość w kolumnie id_klasy dla wszystkich rekordów tabeli Uczen
B. ustawić wartość w kolumnie id_klasy na 1 dla wszystkich rekordów tabeli Uczen
C. ustawić wartość pola id_klasy na 1 dla wszystkich rekordów tabeli Uczen
D. zwiększyć o jeden wartość pola id_klasy w jednym rekordzie tabeli Uczen
Analizując to polecenie SQL, warto na spokojnie rozłożyć je na części, bo większość nieporozumień bierze się z mylenia stałej wartości z wyrażeniem oraz z niezauważenia braku klauzuli WHERE. W zapisie UPDATE Uczen SET id_klasy = id_klasy + 1; po lewej stronie znaku równości mamy kolumnę, którą aktualizujemy, a po prawej – wyrażenie, które określa nową wartość. To wyrażenie nie jest stałą liczbą 1, tylko operacją: bieżąca wartość id_klasy plus 1. Dlatego nie można tego interpretować jako „ustaw wartość na 1”. Gdyby celem było ustawienie identycznej wartości dla wszystkich uczniów, składnia wyglądałaby np. tak: UPDATE Uczen SET id_klasy = 1; i wtedy rzeczywiście każdemu rekordowi przypisano by dokładnie 1, bez użycia dotychczasowej wartości. Druga częsta pomyłka dotyczy zakresu działania UPDATE. W SQL to klauzula WHERE zawęża liczbę modyfikowanych rekordów. Jeśli WHERE nie ma, silnik bazy danych zgodnie ze standardem SQL przyjmuje, że operacja dotyczy wszystkich wierszy tabeli. Nie istnieje domyślne założenie „tylko jeden rekord”, chyba że jawnie wskażemy warunek, który zwróci pojedynczy wiersz, np. WHERE id_ucznia = 5. Dlatego interpretacja, że polecenie zmienia tylko jeden rekord, jest po prostu sprzeczna z tym, jak działa mechanizm UPDATE. Z mojego doświadczenia typowy błąd myślowy polega na tym, że ktoś patrzy na przykład z dokumentacji, gdzie często pojawia się WHERE, i podświadomie zakłada, że on tam „zawsze jest”. A tu go po prostu nie ma, więc działanie jest globalne. Drugi błąd to utożsamianie zapisu „+ 1” z „ustaw na 1”, co jest bardzo niebezpieczne w prawdziwych systemach, bo łatwo wtedy masowo popsuć dane. Dobre praktyki w pracy z SQL mówią jasno: zawsze dokładnie analizuj część SET oraz obecność lub brak WHERE, a przed wykonaniem złożonego UPDATE warto najpierw uruchomić SELECT z tym samym warunkiem, żeby zobaczyć, które rekordy zostaną zmienione. Taka systematyka pozwala uniknąć właśnie takich nieporozumień, jakie widać w błędnych odpowiedziach.

Pytanie 28

Atrybut wskazujący na lokalizację pliku graficznego w znaczniku <img> to

A. href
B. alt
C. src
D. link
Atrybut 'src' (source) jest kluczowym elementem znacznika <img>, ponieważ wskazuje lokalizację pliku graficznego, który ma być wyświetlony na stronie internetowej. Użycie tego atrybutu jest niezbędne, aby przeglądarka mogła zlokalizować i załadować odpowiedni obraz. Na przykład, jeśli chcesz wyświetlić grafikę logo na stronie, możesz użyć znacznika <img src='logo.png'>, gdzie 'logo.png' jest ścieżką do pliku graficznego. Ważne jest, aby pamiętać o dokładnym podaniu ścieżki, która może być względna lub absolutna. Zgodnie z najlepszymi praktykami, ważne jest również użycie atrybutu 'alt', który opisuje obraz dla osób z problemami wzrokowymi oraz w przypadku, gdy obraz nie może być załadowany. Przestrzeganie standardów W3C w zakresie HTML zapewnia lepszą dostępność i użyteczność stron internetowych.

Pytanie 29

W ramce przedstawiono kod JavaScript z błędem logicznym. Program powinien wypisywać informację, czy liczby są sobie równe czy nie, lecz nie wykonuje tego. Wskaż odpowiedź, która dotyczy błędu.

var x = 5;
var y = 3;
if (x = y)     document.getElementById("demo").innerHTML = 'zmienne są równe';
else         document.getElementById("demo").innerHTML = 'zmienne się różnią';
A. Nieprawidłowo zadeklarowano zmienne.
B. Instrukcje wewnątrz sekcji if oraz else powinny być zamienione miejscami.
C. Przed klauzulą else nie powinno być średnika.
D. W klauzuli if występuje przypisanie zamiast porównania.
Z rozważanych odpowiedzi można zauważyć pewne nieporozumienia dotyczące składni języka JavaScript. Po pierwsze, deklaracja zmiennych w prezentowanym kodzie jest prawidłowa. W JavaScript, zmienne można zadeklarować za pomocą słów kluczowych var, let lub const. W tym przypadku, zmienne x i y są prawidłowo zadeklarowane za pomocą słowa kluczowego var. Co więcej, klauzula else w JavaScript nie powinna być poprzedzona średnikiem. Średnik w JavaScript jest używany do oddzielenia instrukcji i nie jest wymagany po klauzuli else. Również instrukcje wewnątrz sekcji if i else nie powinny być zamienione miejscami - błąd polega na używaniu operatora przypisania zamiast operatora porównania. Nieporozumienie dotyczące operatorów jest częstym błędem, który można uniknąć poprzez zrozumienie różnicy między operatorem przypisania (=) a operatorem porównania (== lub ===) w JavaScript.

Pytanie 30

Jaką właściwość należy zastosować w stylu CSS, aby określić krój czcionki?

A. font-style
B. text-style
C. font-family
D. text-family
Odpowiedź 'font-family' jest poprawna, ponieważ w CSS to właśnie ta właściwość służy do określenia rodziny czcionek, które mają być używane w danym elemencie. Właściwość 'font-family' pozwala na zdefiniowanie podstawowych czcionek, a także alternatywnych, które mogą być użyte, jeśli preferowana czcionka nie jest dostępna. Przykładowo, zapisywanie: `font-family: Arial, sans-serif;` wskazuje, że przeglądarka powinna używać czcionki Arial, a w przypadku jej braku - czcionki z rodziny sans-serif. To podejście jest szczególnie ważne w kontekście tworzenia responsywnych i dostępnych interfejsów użytkownika, gdzie różne urządzenia mogą obsługiwać różne czcionki. Dodatkowo, zgodnie z wytycznymi W3C i zasadami projektowania, zaleca się określanie co najmniej dwóch czcionek: głównej i alternatywnej, aby zapewnić odpowiednią estetykę i czytelność tekstu. Znajomość właściwości 'font-family' jest kluczowa dla każdego, kto zajmuje się projektowaniem stron internetowych, pozwalając na lepsze dostosowanie wyglądu i funkcjonalności serwisów oraz aplikacji webowych.

Pytanie 31

W PHP, aby stworzyć obiekt pkt dla klasy Punkt, której definicja znajduje się poniżej, należy użyć polecenia

class Punkt {
  public $x;
  public $y;
}
A. pkt Punkt;
B. pkt Punkt();
C. Punkt() pkt;
D. pkt = new Punkt();
W języku PHP tworzenie obiektu z zdefiniowanej klasy wymaga użycia słowa kluczowego new. Poprawna instrukcja to pkt = new Punkt();. Słowo new jest używane do dynamicznego alokowania pamięci na nowy obiekt klasy Punkt. W tym przypadku Punkt jest klasą, która została wcześniej zdefiniowana w kodzie i zawiera właściwości publiczne takie jak $x i $y. Kiedy wykonujemy new Punkt(), wywoływany jest konstruktor klasy, który w tym przypadku jest domyślny, ponieważ klasa Punkt nie definiuje własnego konstruktora. Warto zauważyć, że zgodnie z dobrymi praktykami programowania w PHP, każda deklaracja nowego obiektu powinna być poprzedzona słowem new, co zapewnia czytelność i jednoznaczność kodu. Ten sposób tworzenia obiektów jest zgodny ze standardem PSR-12. Praktyczne zastosowanie tworzenia obiektów w PHP jest szerokie i obejmuje m.in. modelowanie danych w aplikacjach, obsługę struktur danych oraz implementację wzorców projektowych, takich jak singleton czy fabryka. Korzystanie z obiektów pozwala na przejrzyste i zorganizowane zarządzanie kodem oraz łatwą jego rozbudowę o nowe funkcje.

Pytanie 32

Na ilustracji przedstawiono schemat rozmieszczenia elementów na stronie WWW. W której z jej sekcji zazwyczaj znajduje się stopka strony?

Ilustracja do pytania
A. 4
B. 1
C. 2
D. 5
Odpowiedź 5 jest poprawna ponieważ w standardach projektowania stron internetowych stopka strony zazwyczaj znajduje się na dole każdej podstrony. Stopka to miejsce gdzie umieszczane są informacje takie jak prawa autorskie prywatność i linki do kontaktu. Dobrze zaprojektowana stopka może także zawierać skróty nawigacyjne które pomagają użytkownikowi szybko przemieszczać się po stronie. W praktyce projektanci stron WWW stosują podejście oparte na responsywnym designie co oznacza że stopka powinna być łatwo dostępna i czytelna na różnych urządzeniach. Wykorzystanie CSS Grid lub Flexbox pozwala na elastyczne zarządzanie układem strony co jest szczególnie przydatne przy projektowaniu stopki. Ponadto stopki są elementami które odpowiadają za spójność wizualną całej strony internetowej zapewniając użytkownikowi intuicyjne doświadczenie. Umieszczanie stopki w dolnej części strony jest zgodne z oczekiwaniami użytkowników co zwiększa użyteczność serwisu i pozytywnie wpływa na jego odbiór. Praktyczne zastosowanie tego podejścia można zauważyć na wielu profesjonalnych stronach gdzie stopka jest wyraźnie oddzielona i przejrzysta co ułatwia użytkownikowi odnalezienie potrzebnych informacji.

Pytanie 33

Na podstawie tabeli Towar wykonano następujące zapytanie SQL. Jaki będzie wynik tej operacji?

 SELECT nazwa_towaru FROM `Towar` WHERE cena_katalogowa < 65 ORDER BY waga DESC;
IDnazwa_towarucena_katalogowawagakolor
1Papier ksero A4112.3biel
2Zeszyt A54.20.13wielokolorowy
3Zeszyt A5 w linie3.50.12niebieski
4Kredki 24 kolory90.3wielokolorowy
5Plecak szkolny65.51.3zielony
A. Papier ksero A4, Kredki 24 kolory, Zeszyt A5, Zeszyt A5 w linie
B. Zeszyt A5 w linie, Zeszyt A5, Kredki 24 kolory, Papier ksero A4
C. Papier ksero A4, Kredki 24 kolory, Zeszyt A5 w linie, Zeszyt A5
D. Zeszyt A5, Zeszyt A5 w linie, Kredki 24 kolory, Papier ksero A4
Twoja odpowiedź jest poprawna. Wykonane zapytanie SQL zwracałoby nazwy towarów, które spełniają warunek ceny katalogowej mniejszej niż 65. Listę tych towarów następnie sortuje od najcięższego do najlżejszego. W przypadku podanej tabeli towary, które spełniają te warunki to: Papier ksero A4 (waga 2.3), Kredki 24 kolory (waga 0.3), Zeszyt A5 (waga 0.13) i Zeszyt A5 w linie (waga 0.12). To jest kluczowy aspekt zrozumienia zapytań SQL, które obejmują selekcję i sortowanie danych. W praktyce, umiejętność filtrowania i organizowania danych jest niezbędna do analizy danych i tworzenia raportów w systemach baz danych. Zrozumienie jak zapytania SQL działa na poziomie podstawowym, umożliwi Ci przewidywanie wyników zapytań, co jest kluczowe dla dobrze zaprojektowanych systemów baz danych.

Pytanie 34

Na ilustracji przedstawiono rezultat stosowania stylów CSS oraz odpowiadający mu kod HTML, który generuje ten przykład. Przyjmując, że marginesy wewnętrzne mają wartość 50 px, natomiast zewnętrzne wynoszą 20 px, styl CSS dla tego obrazu wygląda następująco

Ilustracja do pytania
A. Odpowiedź D
B. Odpowiedź C
C. Odpowiedź B
D. Odpowiedź A
W niepoprawnych odpowiedziach pojawiają się pewne niedociągnięcia, które mogą prowadzić do nieodpowiedniego wyświetlania elementów na stronie. Przykładowo, ustawienie marginesów i paddingów w nieodpowiedni sposób zmienia przestrzenność wokół obrazu, co może wpłynąć na jego rozmieszczenie i estetykę na stronie. Wybór nieodpowiedniego stylu obramowania, jak np. linia przerywana zamiast solidnej, może znacząco wpłynąć na odbiór wizualny i profesjonalizm projektu. Takie aspekty mogą być istotne w przypadku projektowania stron dla branż, które kładą nacisk na elegancję i prostotę. Ponadto, niespójne użycie kolorów tła i ramki może wprowadzać wizualny chaos, co jest przeciwieństwem dobrych praktyk projektowych. Edukując się z zakresu CSS warto zwrócić uwagę na to, jak różne właściwości stylów interakcji wpływają na ogólną harmonię projektu. Uwzględnianie wszelkich standardów i konwencji pozwala na tworzenie stron internetowych, które nie tylko będą estetyczne, ale również funkcjonalne i zgodne z oczekiwaniami użytkowników.

Pytanie 35

Który z poniższych sposobów na komentarz jednoliniowy jest akceptowany w języku JavaScript?

A. #
B. !
C. //
D. <!
W JavaScript, jeśli chcesz dodać komentarz jednoliniowy, musisz użyć podwójnych ukośników, czyli '//' na początku linii. Te komentarze są naprawdę przydatne, bo pozwalają ci opisać, co robi dany kawałek kodu, albo czasami wyłączyć fragmenty podczas testowania. Co fajne, to że wszystko, co napiszesz za '//' zostanie zignorowane przez interpreter, więc nie będzie miało wpływu na działanie skryptu. Przykład: masz linijkę 'let x = 5; // Ustawia wartość x na 5', i wszystko po '//' nie będzie brane pod uwagę przez JavaScript. Komentarze są zgodne z ECMAScript, który jest takim standardem dla tego języka. Szczerze mówiąc, dobrze jest używać komentarzy do dokumentacji, bo to ułatwia czytanie kodu i pracę z innymi programistami. Pamiętaj, żeby robić je zwięzłe, ale muszą też dobrze tłumaczyć, co miał na myśli autor kodu.

Pytanie 36

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. B
C. D
D. A
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 37

Który efekt został zaprezentowany na filmie?

A. Zmiana jasności zdjęć.
B. Przenikanie zdjęć.
C. Zwiększenie ostrości zdjęcia.
D. Zmniejszenie kontrastu zdjęcia.
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 38

Która metoda JavaScript służy do dodawania nowego elementu na końcu tablicy?

A. shift()
B. pop()
C. push()
D. unshift()
Metoda <code>pop()</code> jest często mylona z <code>push()</code>, ale jej działanie jest odwrotne. <code>pop()</code> usuwa ostatni element z tablicy i zwraca go, co oznacza, że nie dodaje żadnych nowych elementów. Jest to użyteczne, gdy chcesz manipulować danymi poprzez usuwanie, ale nie w kontekście dodawania nowych elementów. <code>shift()</code> z kolei usuwa pierwszy element z tablicy, a nie ostatni, i przesuwa wszystkie pozostałe elementy o jedno miejsce do przodu. Jest to przydatne, gdy musisz przetwarzać elementy tablicy w kolejności FIFO, ale nie ma zastosowania przy dodawaniu nowych elementów. Natomiast <code>unshift()</code> dodaje nowe elementy na początku tablicy, co zmienia indeksy wszystkich istniejących elementów, przesuwając je w prawo. Choć może być użyteczne w niektórych scenariuszach, nie jest to metoda dodawania elementów na końcu tablicy. Wszystkie wymienione metody mają swoje specyficzne zastosowania, ale tylko <code>push()</code> jest właściwym wyborem, gdy chcemy dodać elementy na końcu tablicy. Typowe błędy myślowe obejmują mylenie kierunków zmian w tablicach i wybór niewłaściwej metody manipulacji w zależności od wymagań aplikacji.

Pytanie 39

Która z metod komentowania kodu nie jest używana w PHP?

A. <!-- komentarz -->
B. # komentarz
C. /* komentarz */
D. // komentarz
Odpowiedź <!-- komentarz --> jest prawidłowa, ponieważ w PHP nie używa się tego rodzaju komentarzy w kodzie źródłowym. W PHP komentarze są oznaczane przy pomocy dwóch głównych metod: // dla komentarzy jednoliniowych oraz /* ... */ dla komentarzy wieloliniowych. Komentarze są niezwykle istotnym elementem programowania, ponieważ pozwalają na dokumentację kodu, co ułatwia jego zrozumienie i konserwację. Chociaż <!-- ... --> jest składnią używaną w HTML do komentowania, w kontekście PHP nie jest ona rozpoznawana i nie będzie miała wpływu na kod. Używanie odpowiednich typów komentarzy w PHP jest zgodne z najlepszymi praktykami, ponieważ zapewnia czytelność kodu i ułatwia współpracę w zespole deweloperskim. Ważne jest również, aby unikać niepoprawnych praktyk, które mogą prowadzić do błędów w interpretacji kodu, szczególnie w projektach, gdzie HTML i PHP są łączone.

Pytanie 40

W języku JavaScript, aby zweryfikować, czy liczba leży w zakresie (100, 200>, należy użyć następującego zapisu:

A. If (liczba > 100 || liczba <=200)
B. If (liczba < 100 && liczba <=200)
C. If (liczba > 100 && liczba <=200)
D. If (liczba < 100 || liczba >=200)
Patrząc na błędne podejścia w odpowiedziach, można zauważyć kilka istotnych nieporozumień związanych z operatorami logicznymi i porównawczymi. Na przykład przy 'if (liczba > 100 || liczba <= 200)' użycie operatora '||' (OR) prowadzi do tego, że warunek może być spełniony nawet wtedy, gdy liczba jest poniżej 100. To znaczy, że każda liczba mniejsza niż 100 oraz każda większa niż 200 będzie się kwalifikować, co kompletnie mija się z celem. Podobnie 'if (liczba < 100 || liczba >= 200)' pomija wartości w przedziale od 100 do 200. Tutaj użycie '&&' byłoby kluczowe, bo wymaga spełnienia obu warunków jednocześnie. Trzeba też zauważyć, że 'if (liczba < 100 && liczba <= 200)' wprowadza dodatkowe zamieszanie, bo pierwszy warunek koliduje z drugim, co czyni go logicznie błędnym. Dlatego poprawne formułowanie warunków w JavaScript jest podstawą dla każdego programisty. Jakiekolwiek błędne zrozumienie operatorów może prowadzić do poważnych problemów w działaniu aplikacji, więc warto to dobrze przyswoić.