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 10:43
  • Data zakończenia: 8 czerwca 2026 11:05

Egzamin zdany!

Wynik: 34/40 punktów (85,0%)

Wymagane minimum: 20 punktów (50%)

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

Który model barw stosuje się do wyświetlania kolorów na ekranie monitora?

A. HLS
B. RGB
C. CMY
D. CMYK
Do wyświetlania kolorów na ekranie stosuje się model RGB - obraz powstaje z mieszania trzech barw światła: czerwonej, zielonej i niebieskiej (model addytywny). Dlatego na monitorze używa się RGB.

Pytanie 2

Które z wymienionych NIE jest wykonywane po stronie serwera?

A. ASP
B. CSS
C. PHP
D. Perl
CSS działa po stronie KLIENTA - to przeglądarka interpretuje arkusz stylów i renderuje wygląd u użytkownika. Nie jest przetwarzany na serwerze. Dlatego po stronie serwera nie wykonuje się CSS.

Pytanie 3

Jakiego języka można użyć do obsługi połączenia z bazą danych MySQL podczas tworzenia aplikacji internetowej?

A. CSS
B. PHP
C. HTML
D. XHTML
Do obsługi bazy danych MySQL w aplikacji internetowej używa się języka działającego po stronie serwera - najczęściej PHP. To w nim nawiązuje się połączenie (np. funkcją mysqli_connect lub przez PDO), wysyła zapytania SQL i przetwarza wyniki, zanim gotowa strona trafi do przeglądarki. HTML, XHTML i CSS odpowiadają wyłącznie za wygląd i strukturę strony. Dlatego do współpracy z MySQL służy PHP.

Pytanie 4

Metainformacja "Description" zawarta w pliku HTML powinna zawierać


<head>
   <meta name="Description" content="...">
</head>
A. opis zawartości strony
B. informację o autorze strony
C. listę kluczowych fraz używanych przez wyszukiwarki internetowe
D. nazwę aplikacji, w której stworzono stronę
Wybór niepoprawnych odpowiedzi wskazuje na nieporozumienie dotyczące funkcji metainformacji 'Description'. Informacja o autorze strony nie jest ujęta w tej sekcji; zamiast tego, powinna być umieszczona w metatagach takich jak 'author', które podają dane o osobie lub organizacji odpowiedzialnej za stronę. Wyszukiwarki nie korzystają z tej informacji przy indeksowaniu treści, co czyni ją nieistotną dla opisu strony. Również wykazy kluczowe, takie jak metatagi 'keywords', stały się przestarzałe w kontekście SEO; dzisiejsze algorytmy wyszukiwarek skupiają się na głębszym zrozumieniu treści, a nie na prostym wskaźniku słów kluczowych. Ostatnią kwestią jest nazwa programu, przy użyciu którego strona została stworzona. Tego rodzaju informacja jest zbędna i nie wpływa na zawartość strony ani jej ocenę w wyszukiwarkach. W praktyce, metainformacja 'Description' powinna jasno przedstawiać, co użytkownik znajdzie na stronie, a nie zawierać danych o autorze, słowach kluczowych czy narzędziach użytych do jej stworzenia.

Pytanie 5

Jak powinien być zapisany kolor 255 12 12 w modelu RGB na stronie www?

A. #2551212
B. #EE0C0C
C. #AB1A1D
D. #FF0C0C
Kolor 255, 12, 12 w modelu RGB oznacza maksymalne nasycenie koloru czerwonego oraz bardzo niskie wartości zielonego i niebieskiego. Zapis w postaci heksadecymalnej, który jest stosowany w projektowaniu stron internetowych, polega na konwersji wartości RGB do formatu szesnastkowego. W tym przypadku, wartość 255 w systemie dziesiętnym odpowiada FF w systemie szesnastkowym, co oznacza maksymalne nasycenie koloru czerwonego. Wartość 12 w systemie dziesiętnym odpowiada 0C, co jest zbyt niską wartością zarówno dla zielonego, jak i niebieskiego. Dlatego pełny zapis koloru RGB 255, 12, 12 w formacie heksadecymalnym to #FF0C0C. Użycie standardu heksadecymalnego (hex) jest powszechne w CSS, gdzie kolory są definiowane za pomocą szesnastkowych wartości. Przykładowo, aby ustawić tło elementu w CSS na ten kolor, można użyć zapisu: 'background-color: #FF0C0C;'. Warto zrozumieć, że poprawne użycie systemów kolorów RGB i hex jest kluczowe w projektowaniu graficznym i webowym, ponieważ wpływa na estetykę i użyteczność interfejsów użytkownika.

Pytanie 6

Którego znacznika HTML użyć, aby wstawić poziomą linię?

A.
<line>
B.
<br>
C.
<hl>
D.
<hr>
Poziomą linię (oddzielającą treść) wstawia znacznik <hr> - to element pusty, bez znacznika zamykającego. Dlatego poziomą linię daje <hr>.

Pytanie 7

Co PRZYSPIESZA wyszukiwanie danych, ale może spowolnić operacje zapisu (INSERT/UPDATE)?

A. reguły
B. indeksy
C. wartości domyślne
D. klucze podstawowe
Indeksy przyspieszają WYSZUKIWANIE danych (szybciej odnajdują wiersze), ale spowalniają zapis - przy każdym INSERT/UPDATE trzeba też zaktualizować indeks. Dlatego tę cechę mają indeksy.

Pytanie 8

Który z wymienionych frameworków stworzono dla języka PHP?

A. Spring
B. Angular
C. Symfony
D. ASP.NET
Pozostałe frameworki należą do innych języków i technologii. Spring to framework języka Java, używany w aplikacjach serwerowych i korporacyjnych. Angular to framework frontendowy oparty na TypeScript/JavaScript, służący do budowy interfejsów działających w przeglądarce. ASP.NET to platforma firmy Microsoft do tworzenia aplikacji webowych w językach .NET (np. C#). Dla PHP przeznaczony jest Symfony, dlatego ta odpowiedź jest poprawna.

Pytanie 9

Która kwerenda wybierze z tabeli Uczniowie tylko osoby o imieniu „Aleksandra” urodzone PO 1998 roku?

A.
SELECT * FROM Uczniowie WHERE imie = "Aleksandra" AND rok_urodzenia > "1998";
B.
SELECT * FROM Uczniowie WHERE imie = "Aleksandra" OR rok_urodzenia < "1998";
C.
SELECT * FROM Uczniowie WHERE imie = "Aleksandra" OR rok_urodzenia > "1998";
D.
SELECT * FROM Uczniowie WHERE imie = "Aleksandra" AND rok_urodzenia < "1998";
Zadanie stawia dwa warunki, które muszą być spełnione JEDNOCZEŚNIE: imię „Aleksandra” oraz urodzenie po 1998 - takie połączenie zapewnia operator AND, a „po roku” to rok_urodzenia > "1998". Daje to SELECT * FROM Uczniowie WHERE imie = "Aleksandra" AND rok_urodzenia > "1998";. Dlatego ta kwerenda jest poprawna.

Pytanie 10

Co musi zawierać kolumna pełniąca funkcję klucza głównego w tabeli?

A. ciągłą numerację
B. wartości unikalne
C. wyłącznie liczby
D. inny typ niż pozostałe kolumny
Klucz główny musi jednoznacznie identyfikować każdy wiersz, więc jego wartości muszą być UNIKALNE (i niepuste). Dzięki temu da się bez pomyłki wskazać konkretny rekord. Dlatego kolumna klucza głównego musi zawierać wartości unikalne.

Pytanie 11

Co spowoduje

DELETE FROM mieszkania WHERE status = 1;
?
A. usunięcie rekordów z status = 1 z tabeli mieszkania
B. usunięcie całej tabeli mieszkania
C. usunięcie pola status z tabeli
D. usunięcie tabel z bazy mieszkania
DELETE FROM mieszkania WHERE status = 1; usuwa z tabeli mieszkania tylko te WIERSZE, w których pole status ma wartość 1. Struktura tabeli i pozostałe rekordy zostają nienaruszone. Dlatego polecenie usunie rekordy ze status = 1.

Pytanie 12

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 13

Jak wygląda prawidłowy zapis samozamykającego się znacznika w zgodzie ze standardem języka XHTML, który odpowiada za łamanie linii?

A. </ br>
B. <br />
C. <br> </br>
D. </br/>
Odpowiedź <br /> jest prawidłowym zapisem samozamykającego się znacznika w standardzie XHTML. XHTML, czyli eXtensible HyperText Markup Language, wymaga, aby znaczniki były poprawnie zamknięte. W przypadku znaczników, które nie mają zawartości, jak <br />, stosuje się specjalną składnię. Oznaczenie <br /> wskazuje na przełamanie linii w dokumencie HTML. Ważne jest, aby podać ukośnik przed zakończeniem znacznika, co jest zgodne z zasadami XHTML. Przykładowo, w dokumentach XHTML, prawidłowe użycie <br /> może wyglądać tak: <p>Tekst przed łamaniem linii.<br />Tekst po łamaniu linii.</p>. Przestrzeganie tych zasad zapewnia, że dokumenty będą poprawnie interpretowane przez przeglądarki oraz będą zgodne z standardami W3C, co jest kluczowe dla zachowania wysokiej jakości kodu oraz jego dostępności.

Pytanie 14

Wskaź poprawną formę kodowania polskich znaków w pliku HTML?

A. <meta content='UTF8'>
B. <meta "content=UTF-8">
C. <meta charset="UTF-8">
D. <meta char set= "UTF-8">
Odpowiedź <meta charset="UTF-8"> to strzał w dziesiątkę! To zgodny z nowoczesnymi standardami HTML sposób na określenie kodowania znaków w dokumencie. Dzięki temu, że używamy atrybutu 'charset' z wartością 'UTF-8', mówimy przeglądarkom, że tekst powinien być interpretowany według tego kodowania. UTF-8 jest super popularne, bo obsługuje wszystkie znaki w Unicode. To oznacza, że możemy pisać wszystkie polskie znaki diakrytyczne, czyli te jak ą, ć, ę, ł itd., bez obaw o błędy w wyświetlaniu. Jeśli wstawisz ten tag w sekcji <head> swojego dokumentu HTML, masz pewność, że strona będzie dobrze wyglądać w różnych przeglądarkach i na różnych urządzeniach. Dobrze jest umieszczać go na początku sekcji <head>, żeby uniknąć problemów z pokazywaniem treści. Co więcej, korzystanie z UTF-8 jest rekomendowane przez W3C, więc to naprawdę dobry wybór dla nowoczesnych aplikacji webowych.

Pytanie 15

Co wykonuje poniższy fragment kodu w JavaScript?

n = "Napis1";
s = n.length;
A. Przypisze zmiennej s fragment tekstu ze zmiennej n, o długości określonej przez zmienną length
B. Przypisze zmiennej s wartość, która odpowiada długości tekstu ze zmiennej n
C. Przypisze zmienną n do zmiennej s
D. Wyświetli długość tekstu ze zmiennej n
W języku JavaScript właściwość length dla obiektów typu String zwraca liczbę znaków w danym napisie. W przedstawionym fragmencie skryptu zmiennej n przypisano wartość stringa 'Napis1'. Kiedy używamy n.length uzyskujemy długość tego stringa czyli liczbę 6 ponieważ są w nim dokładnie sześć znaków. Następnie tę wartość przypisujemy zmiennej s co oznacza że s przechowuje liczbę 6. Jest to użyteczne w wielu sytuacjach takich jak walidacja danych wejściowych w formularzach sprawdzanie czy dany tekst mieści się w określonych limitach lub po prostu kontrola poprawności danych w procesach biznesowych. Wartość length jest często stosowana w pętlach do iteracji przez każdy znak w stringu lub w operacjach takich jak odcinanie fragmentów tekstu. Praktyka korzystania z length jest standardem w programowaniu webowym i zaliczana jest do dobrych praktyk ponieważ umożliwia łatwą manipulację tekstowymi danymi i kontrolę ich wymiaru co bywa krytyczne zwłaszcza w aplikacjach o dużej skali gdzie efektywność i klarowność kodu mają znaczenie kluczowe.

Pytanie 16

Która metoda obiektu location zastępuje bieżący dokument dokumentem spod podanego adresu?

A.
open();
B.
close();
C.
replace();
D.
reload();
Pozostałe metody robią co innego. reload() odświeża bieżącą stronę, a open() i close() dotyczą okien (obiektu window), nie zastępowania dokumentu. Zastąpienie strony daje location.replace().

Pytanie 17

Co robi funkcja przedstawiona w kodzie JavaScript?

function tekst() {
var h = location.hostname;
document.getElementById("info").innerHTML = h;
}
A. umożliwić przejście do wskazanej lokalizacji hosta
B. pokazać na przycisku lokalizację hosta, a po jego naciśnięciu umożliwić przejście do określonej lokalizacji
C. wyświetlić w elemencie o id = "info" adres hosta wskazany przez pierwszy odnośnik
D. wyświetlić w elemencie o id = "info" nazwę hosta, z którego pochodzi wyświetlona strona
Prawidłowa odpowiedź wskazuje, że kod JavaScript wywołuje metodę location.hostname, która zwraca nazwę hosta aktualnie odwiedzanej strony. Hostname jest częścią obiektu Location, który reprezentuje bieżący URL dokumentu. Kod przypisuje wynik tej metody do zmiennej h, a następnie ustawia innerHTML elementu o id info na wartość tej zmiennej. Dzięki takim operacjom, kod efektywnie wyświetla nazwę hosta w elemencie o konkretnym identyfikatorze na stronie HTML. Jest to częsta technika używana w aplikacjach webowych, gdzie istotne jest dynamiczne wyświetlanie informacji o aktualnym połączeniu. Znajomość obiektu Location oraz jego właściwości, takich jak hostname, to podstawowa umiejętność w pracy z językiem JavaScript, szczególnie w kontekście manipulacji DOM. Takie podejście jest zgodne z dobrymi praktykami, gdyż unika bezpośredniego wpisywania danych w kodzie, co zwiększa elastyczność i ułatwia utrzymanie aplikacji.

Pytanie 18

Jaki jest najłatwiejszy i najmniej czasochłonny sposób przetestowania strony w różnych przeglądarkach i ich wersjach?

A. użycie emulatora przeglądarek (np. usługi typu Browser Sandbox)
B. instalacja różnych przeglądarek na kilku komputerach i testowanie
C. użycie walidatora kodu HTML
D. test tylko w jednej przeglądarce, zakładając zgodność pozostałych
Najszybszym sposobem sprawdzenia strony w wielu przeglądarkach i ich wersjach jest emulator przeglądarek (np. usługa typu Browser Sandbox) - bez instalowania każdej z nich osobno otrzymujemy podgląd w różnych środowiskach. Dlatego najwygodniejsze jest użycie emulatora przeglądarek.

Pytanie 19

SELECT ocena FROM oceny WHERE ocena > 2 ORDER BY ocena;
Załóżmy, że istnieje tabela oceny zawierająca kolumny id, nazwisko, imię oraz ocena. Przykładowe zapytanie ilustruje:
A. łączenie.
B. selekcję.
C. rekurencję.
D. sumę.
Zapytanie SQL przedstawione w pytaniu jest przykładem selekcji ponieważ wykorzystuje klauzulę WHERE do filtrowania danych. Selekcja w kontekście baz danych oznacza wybieranie konkretnych wierszy z tabeli które spełniają określone kryteria. W tym przypadku kryterium to ocena większa niż 2. Takie podejście jest bardzo powszechne i użyteczne w analizie danych pozwalając na uzyskanie tylko istotnych informacji spośród dużych zbiorów danych. Klauzula WHERE jest jednym z podstawowych narzędzi SQL wykorzystywanym w praktycznie każdym systemie zarządzania bazami danych jak MySQL PostgreSQL czy Oracle. Umożliwia ona tworzenie elastycznych i złożonych zapytań które mogą zawierać różnorodne warunki logiczne takie jak porównania czy wyrażenia regularne. Dobre praktyki w zakresie projektowania baz danych zalecają używanie selekcji do ograniczania ilości przetwarzanych danych co zwiększa wydajność systemów. Zrozumienie mechanizmu selekcji jest kluczowe dla skutecznego zarządzania i optymalizacji baz danych szczególnie w projektach o dużej skali.

Pytanie 20

Który kod jest alternatywny do kodu zamieszczonego w ramce?

<?php
for($x = 1; $x <= 55; $x++)
{
  if($x % 2 != 0) continue;
  echo $x . " ";
}
?>
A. for($x = 2; $x <= 54; $x += 2) {echo $x." ";}
B. for($x = 1; $x <= 55; $x++) {echo $x." ";}
C. for($x = 2; $x <= 56; $x += 2) {echo $x." ";}
D. for($x = 1; $x <= 55; $x += 1) {echo $x." ";}
Brawo! Wybrałeś odpowiedź A, która jest poprawna. Kod zawarty w tej odpowiedzi jest alternatywą dla kodu zamieszczonego w ramce. W obydwu przypadkach mamy do czynienia z pętlą, która operuje na liczbach. W pętli zamieszczonej w ramce, instrukcja 'continue' powoduje, że pętla pomija operacje na liczbach parzystych. Tym samym, końcowy efekt tego kodu to operacje na liczbach nieparzystych. W odpowiedzi A, pętla została skonstruowana w taki sposób, że operacje wykonywane są tylko na liczbach parzystych (pętla zaczyna od liczby 2 i zwiększa wartość o 2 za każdym razem). Tą technikę możemy wykorzystać, kiedy chcemy zbudować kod, który nie uwzględnia pewnego podzbioru danych. W tym przypadku, jeśli chcemy stworzyć kod, który operuje tylko na liczbach nieparzystych, możemy zastosować instrukcję 'continue' w połączeniu z warunkiem sprawdzającym parzystość liczby.

Pytanie 21

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 22

Gdzie należy umieścić znacznik metajęzyka HTML?

A. w dolnej części witryny internetowej
B. pomiędzy znacznikami <body> ... </body>
C. pomiędzy znacznikami paragrafu
D. w sekcji nagłówkowej witryny internetowej
Znacznik metajęzyka HTML, czyli tag <meta>, jest kluczowym elementem w sekcji nagłówkowej (head) dokumentu HTML. To tutaj umieszczamy informacje dotyczące dokumentu, takie jak jego tytuł, opis, słowa kluczowe oraz dane dotyczące kodowania i viewportu. Na przykład, aby ustawić kodowanie znaków na UTF-8, używamy znacznika <meta charset="UTF-8">. Jest to zgodne z wytycznymi W3C i najlepszymi praktykami SEO, ponieważ odpowiednie metadane pomagają wyszukiwarkom w zrozumieniu treści witryny. Inny przykład to <meta name="viewport" content="width=device-width, initial-scale=1.0">, który zapewnia, że strona jest responsywna na urządzeniach mobilnych. Umieszczając te znaczniki w nagłówku, można poprawić zarówno użyteczność, jak i widoczność witryny w internecie.

Pytanie 23

Wykonanie zapytania SQL spowoduje skasowanie rekordów:

DELETE FROM mieszkania WHERE status = 1;
A. tabel, w których wartość pola status wynosi 1, z bazy danych mieszkania
B. elementów o nazwie status z tabeli mieszkania
C. tabeli mieszkania znajdującej się w bazie danych
D. rekordów, w których wartość pola status jest równa 1, z tabeli mieszkania
Odpowiedź wskazująca na usunięcie rekordów, w których pole status jest równe 1, z tabeli mieszkania jest poprawna ponieważ w zapytaniu SQL użyto składni DELETE, która jest odpowiedzialna za usuwanie danych z określonej tabeli. W kontekście tego zapytania, po słowie 'FROM' znajduje się nazwa tabeli, czyli 'mieszkania', a warunek 'WHERE status = 1' precyzuje, które rekordy mają zostać usunięte. Przykładowo, jeśli w tabeli mieszkania znajdują się mieszkania oznaczone jako dostępne (status = 1), to po wykonaniu tego zapytania wszystkie takie mieszkania zostaną trwale usunięte z bazy danych. Ważne jest, aby przed wykonaniem zapytania DELETE rozważyć konieczność wykonania kopii zapasowej danych, aby zapobiec ich nieodwracalnej utracie. Dobrą praktyką jest również stosowanie zapytania SELECT z tym samym warunkiem, aby najpierw zweryfikować, które rekordy zostaną usunięte. Tego rodzaju podejście umożliwia lepsze zarządzanie danymi oraz redukuje ryzyko pomyłek podczas operacji na bazach danych.

Pytanie 24

W języku PHP chcąc wyświetlić ciąg n znaków @, należy użyć funkcji

A. function znaki($znak, $n){
   for($i = 0; $i < $n; $i++)
     print($znak);
}
znaki(@, $n);

B. function znaki($i){
   for($i = 0; $i < $n; $i++)
     print("@");
}
znaki($i);

C. function znaki($znak, $n){
   for($i = 0; $i < $n; $i++)
     print($znak);
}
znaki($n);

D. function znaki($znak, $n){
   for($i = 0; $i < $n; $i++)
     print($znak);
}
znaki("@", $n);
A. A.
B. B.
C. C.
D. D.
Właśnie wybrałeś odpowiedź D i jest to absolutnie poprawne. W języku PHP, funkcja, o której mówimy, jest standardowym sposobem wyświetlania ciągu n znaków. Działa to poprzez użycie dwóch argumentów: znaku, który ma być wyświetlony, i liczby n, która określa, ile razy ten znak powinien zostać wyświetlony. W tym przypadku, użyto znaku '@'. Następnie, w pętli for, zmienna $i jest inkrementowana od 0 do n-1, a funkcja print wyświetla znak. To jest dobrym przykładem praktycznego zastosowania pętli w PHP, które są niezwykle przydatne w wielu różnych scenariuszach, od generowania list do manipulowania danymi. Pamiętaj, że zrozumienie, jak działa ta konkretna funkcja, może pomóc Ci lepiej zrozumieć, jak działają pętle i funkcje print w PHP.

Pytanie 25

W języku JavaScript rezultat wykonania polecenia

zmienna1 -= 1;
będzie tożsamy z wynikiem polecenia
A. zmienna1--;
B. zmienna1++;
C. zmienna1 === zmienna1 - 1;
D. zmienna1 = zmienna1 - 0;
Odpowiedź zmienna1--; jest poprawna, ponieważ jest to skrócona forma wyrażenia zmienna1 -= 1;. Oba wyrażenia mają ten sam efekt, który polega na zmniejszeniu wartości zmiennej zmienna1 o 1. W języku JavaScript operator '--' jest operatorem dekrementacji, który zmienia wartość zmiennej o jeden w dół. Użycie tego operatora jest zgodne z dobrymi praktykami kodowania, gdyż zwiększa czytelność kodu, czyniąc intencje programisty bardziej jasnymi. Użycie dekrementacji jest powszechne w sytuacjach, gdzie iterujemy przez kolekcje z użyciem pętli, co ogranicza potrzebę stosowania bardziej skomplikowanych instrukcji. Na przykład, w przypadku pętli for, zamiast pisać for(let i = n; i > 0; i -= 1), można zastosować for(let i = n; i > 0; i--), co jest bardziej zwięzłe i zrozumiałe. W kontekście standardów kodowania, preferowanym podejściem jest używanie operatorów, które maksymalizują przejrzystość i minimalizują możliwość popełnienia błędów.

Pytanie 26

Podaj zapytanie SQL, które tworzy użytkownika sekretarka na localhost z hasłem zaq123

CREATE USER `sekretarka`@`localhost` IDENTIFY "zaq123"; 
A. CREATE USER `sekretarka`@`localhost` IDENTIFIED BY 'zaq123'
B. CREATE USER 'sekretarka'@'localhost' IDENTIFIED `zaq123`
C. CREATE USER `sekretarka`@`localhost` IDENTIFY "zaq123"
D. CREATE USER `sekretarka`@`localhost` IDENTIFY BY `zaq123`
Użycie nieprawidłowych składni w zapytaniach SQL może prowadzić do nieporozumień i błędów w konfiguracji użytkowników. W przypadku podanych błędnych odpowiedzi, brak użycia frazy 'IDENTIFIED BY' z odpowiednio umieszczonym hasłem w pojedynczych cudzysłowach jest kluczowym błędem. Na przykład, w jednym z przypadków zastosowano słowo 'IDENTIFY', które jest niepoprawne i nie jest częścią składni SQL dla tworzenia użytkowników. Różnice w użyciu pojedynczych cudzysłowów i backticks również mają znaczenie; backticks są używane do oznaczania nazw obiektów w SQL, podczas gdy hasła powinny być otoczone pojedynczymi cudzysłowami. Ponadto, znaki takie jak ` zaq123` w niektórych odpowiedziach sugerują mylne zrozumienie zasad definiowania danych tekstowych w SQL. Niepoprawne podejście do tworzenia użytkowników może skutkować problemami w zakresie bezpieczeństwa, ponieważ niewłaściwie skonfigurowani użytkownicy mogą uzyskiwać nieautoryzowany dostęp do systemów. Właściwe zrozumienie składni SQL oraz terminologii jest kluczowe do skutecznego zarządzania bazami danych i zapewnienia odpowiedniego poziomu ochrony informacji.

Pytanie 27

W kodzie HTML stworzono formularz, który wysyła informacje do pliku formularz.php. Po naciśnięciu przycisku typu submit, przeglądarka zostaje przekierowana na wskazany adres. Na podstawie podanego adresu /formularz.php?imie=Anna&nazwisko=Kowalska można stwierdzić, że dane do pliku formularz.php zostały wysłane za pomocą metody:

A. GET
B. POST
C. SESSION
D. COOKIE
Poprawna odpowiedź wskazuje na metodę GET. Jako jedna z dwóch podstawowych metod przesyłania danych w protokole HTTP, GET przesyła informacje poprzez dołączenie ich do adresu URL. I tak, jeżeli na załączonym obrazku widzimy adres URL zawierający parametry (np. imię=Anna&nazwisko=Kowalska) dołączone do adresu pliku formularz.php, to oznacza, że dane zostały przesłane właśnie tą metodą. Jest to zgodne z dobrymi praktykami i standardami branżowymi, które zalecają użycie metody GET zwłaszcza przy przesyłaniu niewielkich ilości danych, które nie wymagają specjalnego zabezpieczenia. Ważne jednak jest zrozumienie, że metoda GET nie jest odpowiednia, gdy przesyłane dane są poufne, np. hasła, ponieważ są one widoczne w pasku adresu przeglądarki. Ponadto, warto zauważyć, że dane przesyłane metodą GET mogą być zapisane w historii przeglądarki, co również ma swoje implikacje bezpieczeństwa.

Pytanie 28

Poniższe zapytanie zwróci

SELECT COUNT(cena) FROM uslugi;
A. łączną wartość cen usług w tabeli
B. średnią wartość cen usług w tabeli
C. wszystkie wartości cen usług w tabeli
D. liczbę wszystkich cen usług w tabeli
Zapytanie SQL "SELECT COUNT(cena) FROM uslugi;" jest skonstruowane w taki sposób, że używa funkcji agregującej COUNT, która zlicza liczbę niepustych wartości w kolumnie "cena" w tabeli "uslugi". Oznacza to, że wynik tego zapytania to liczba wierszy, w których kolumna "cena" nie jest pusta. Używanie funkcji COUNT jest standardową praktyką w SQL, gdy chcemy uzyskać ilość rekordów spełniających określone kryteria. W kontekście analizy danych, zrozumienie tego typu zapytań jest kluczowe, ponieważ pozwala na efektywne zbieranie statystyk, które mogą być później wykorzystane do podejmowania decyzji biznesowych. Na przykład, jeśli firma prowadzi usługi i chce wiedzieć, ile z nich ma przypisaną cenę, to to zapytanie dostarczy tej informacji. Warto także zwrócić uwagę, że funkcja COUNT jest często używana w połączeniu z innymi funkcjami agregującymi, takimi jak SUM czy AVG, w celu uzyskania bardziej kompleksowego obrazu danych.

Pytanie 29

Czym jest w C++ zmienna zadeklarowana jako char zm1[10];?

A. liczbą
B. znakiem
C. tablicą znaków
D. tablicą łańcuchów
Deklaracja char zm1[10]; w C++ tworzy TABLICĘ dziesięciu znaków - ciąg char o indeksach 0-9. Tak w klasycznym C/C++ przechowuje się napisy (C-string zakończony \\0). Dlatego char zm1[10] to tablica znaków.

Pytanie 30

Kiedy stosuje się kwerendę SELECT DISTINCT?

A. gdy chcemy pogrupować rekordy
B. gdy rekordy występują w bazie tylko raz
C. gdy chcemy posortować rekordy
D. gdy w wybranej kolumnie wartości nie mają się powtarzać
Pozostałe sytuacje obsługują inne klauzule. Grupowanie rekordów to zadanie GROUP BY, a sortowanie rosnące lub malejące - ORDER BY. DISTINCT nie wybiera też „rekordów istniejących w bazie tylko raz” - on usuwa powtórzenia dopiero w wyniku zapytania.

Pytanie 31

Które zdarzenie zachodzi, gdy ZMIENI się wartość pola (np. po wybraniu opcji z listy)?

A.
onClick
B.
onEnter
C.
onChange
D.
onSubmit
Zdarzenie onchange uruchamia kod, gdy wartość kontrolki ZMIENI się i pole straci fokus - klasycznie po wybraniu innej opcji z listy <select> albo po edycji i opuszczeniu pola tekstowego. Używa się go np. do przeliczenia formularza po zmianie wyboru: <select onchange="przelicz()">. Zapamiętaj: „change” = reakcja na zmianę wartości pola, a nie na samo kliknięcie czy pisanie.

Pytanie 32

Które z poniższych wyrażeń logicznych w języku C weryfikuje, czy zmienna o nazwie zm1 znajduje się w przedziale (6, 203>?

A. (zm1 > 6) || (zm1 <= 203)
B. (zm1 > 6) || (zm1 != 203)
C. (zm1 > 6) && (zm1 <= 203)
D. (zm1 > 6) && (zm1 != 203)
Odpowiedź (zm1 > 6) && (zm1 <= 203) jest poprawna, ponieważ w pełni odzwierciedla definicję przedziału otwartego dla dolnej granicy (6) i domkniętej dla górnej granicy (203). Operator && (AND) zapewnia, że oba warunki muszą być spełnione jednocześnie: zmienna zm1 musi być większa niż 6 oraz jednocześnie musi być mniejsza lub równa 203. Taki zapis jest zgodny z powszechnie przyjętymi praktykami programowania, gdzie jasne określenie warunków dla zakresu wartości jest kluczowe do unikania błędów logicznych. Przykładem zastosowania tej logiki może być weryfikacja danych wejściowych w formularzu, gdzie akceptowane są jedynie wartości mieszczące się w określonym przedziale. Użycie odpowiednich operatorów logicznych, takich jak && i ||, jest niezbędne do precyzyjnego definiowania warunków w aplikacjach, co prowadzi do bardziej niezawodnych i czytelnych kodów. Zrozumienie tych koncepcji jest fundamentalne dla każdego programisty, który dąży do tworzenia efektywnych i bezbłędnych aplikacji.

Pytanie 33

System baz danych gromadzi multimedia, co wiąże się z przechowywaniem znacznych ilości danych binarnych. Jakiego typu danych należy użyć w tym przypadku?

A. BLOB
B. ENUM
C. DOUBLE
D. LONGTEXT
Typ BLOB (Binary Large Object) służy do przechowywania dużych ilości danych binarnych, takich jak obrazy, dźwięki, filmy czy inne multimedia. BLOBy są niezwykle przydatne w aplikacjach, które wymagają zarządzania danymi o dużych rozmiarach, ponieważ pozwalają na efektywne przechowywanie i manipulowanie tymi danymi w bazie danych. Przykładem zastosowania BLOBów może być system zarządzania treścią (CMS), w którym użytkownicy mogą przesyłać zdjęcia i filmy. BLOBy umożliwiają przechowywanie tych plików w bazie, co ułatwia ich późniejsze pobieranie i wyświetlanie. W praktyce, stosując BLOBy, należy pamiętać o odpowiednich indeksach oraz optymalizacji zapytań, aby zminimalizować czas dostępu do danych. Warto również rozważyć zastosowanie systemów zarządzania bazami danych, które są dostosowane do pracy z danymi multimedialnymi, takich jak PostgreSQL czy MySQL, które obsługują typy BLOB i inne odpowiednie struktury danych. Standardy SQL definiują BLOB jako typ danych, co sprawia, że jego użycie jest zgodne z najlepszymi praktykami programowania baz danych.

Pytanie 34

Aby strona internetowa była bardziej dostępna dla osób niewidomych, obrazom wstawianym znacznikiem img należy nadać atrybut:

A.
alt
B.
src
C.
text
D.
style
Atrybut alt znacznika <img> zawiera tekst alternatywny - krótki opis tego, co przedstawia obraz. Czytnik ekranu, z którego korzystają osoby niewidome, odczytuje tę treść na głos, dzięki czemu użytkownik wie, co jest na obrazku. Tekst alternatywny pokazuje się też, gdy obraz się nie wczyta. Dlatego dla dostępności obrazom nadaje się atrybut alt.

Pytanie 35

W tabeli mieszkancy znajdują się różne dane. Aby przefiltrować jedynie mieszkańców, którzy mają przypisaną dzielnicę = 1, stworzono dla uproszczenia działania wirtualną tabelę (widok) poprzez zastosowanie kwerendy

A. CREATE VIEW mieszkancy WHERE dzielnica = 1
B. CREATE VIEW mieszkancy FROM mieszkancy WHERE dzielnica = 1
C. CREATE VIEW mieszkancySrodmiescie AS SELECT * FROM mieszkancy
D. CREATE VIEW mieszkancySrodmiescie AS SELECT * FROM mieszkancy WHERE dzielnica = 1
Odpowiedź nr 4 jest na pewno w porządku, bo dobrze definiuje widok w SQL. Filtruje ona dane mieszkańców na podstawie konkretnego warunku. Użycie składni 'CREATE VIEW mieszkancySrodmiescie AS SELECT * FROM mieszkancy WHERE dzielnica = 1;' jest naprawdę zgodne z tym, co powinniśmy robić przy tworzeniu widoków w bazach danych. Widok to w zasadzie zapytanie, które pokazuje dane w specyficzny sposób, a w tym przypadku koncentruje się na mieszkańcach z konkretnej dzielnicy. Moim zdaniem, definiując widoki, warto pamiętać, że prostsze zapytania mogą znacznie poprawić czytelność i ułatwić pracę z kodem. Widoki są naprawdę przydatnym narzędziem do organizacji i segregacji danych, zwłaszcza w dużych systemach, gdzie filtrowanie i agregacja mają duże znaczenie. Na przykład, jeśli chciałbyś zobaczyć mieszkańców tylko z jednej dzielnicy, wystarczy, że użyjesz widoku i napiszesz 'SELECT * FROM mieszkancySrodmiescie'. Dobrze też wiedzieć, że widoki nie tylko filtrują, ale mogą też pomagać w prezentacji bardziej skomplikowanych zestawów danych, co czyni je uniwersalnym narzędziem w analizie i raportowaniu danych.

Pytanie 36

Instrukcję transakcyjną ROLLBACK wydaje się, aby:

A. zatwierdzić transakcję
B. cofnąć (wycofać) zmiany wykonane w transakcji
C. zatwierdzić tylko wybrane zmiany transakcji
D. cofnąć transakcję już po wykonaniu COMMIT
Transakcja to zbiór operacji wykonywanych „wszystko albo nic”. Instrukcja ROLLBACK wycofuje wszystkie zmiany dokonane od początku transakcji, przywracając bazę do stanu sprzed niej - stosuje się ją, gdy w trakcie coś pójdzie nie tak i nie chcemy zapisać częściowych modyfikacji. Przeciwieństwem jest COMMIT, który zmiany zatwierdza na stałe. Można też cofnąć się tylko do oznaczonego miejsca poleceniem ROLLBACK TO SAVEPOINT. Dlatego ROLLBACK służy do cofnięcia działania transakcji.

Pytanie 37

W przedstawionym filmie, aby połączyć tekst i wielokąt w jeden obiekt tak, aby operacja ta była odwracalna zastosowano funkcję

A. sumy.
B. grupowania.
C. wykluczenia.
D. części wspólnej.
Prawidłowo – w filmie została użyta funkcja grupowania. W grafice wektorowej, np. w programach typu Inkscape, CorelDRAW czy Illustrator, grupowanie służy właśnie do logicznego połączenia kilku obiektów w jeden „zestaw”, ale bez trwałego mieszania ich geometrii. To znaczy: tekst dalej pozostaje tekstem, wielokąt dalej jest wielokątem, tylko są traktowane jak jeden obiekt przy przesuwaniu, skalowaniu czy obracaniu. Dzięki temu operacja jest w pełni odwracalna – w każdej chwili możesz rozgrupować elementy i edytować każdy osobno.
Moim zdaniem to jest podstawowa dobra praktyka w pracy z projektami, które mogą wymagać późniejszych poprawek: podpisy, etykiety, logotypy, schematy techniczne. Jeśli połączysz tekst z kształtem za pomocą operacji boolowskich (suma, część wspólna, wykluczenie), to tekst zwykle zamienia się na krzywe, przestaje być edytowalny jako tekst. To bywa potrzebne przy przygotowaniu do druku czy eksportu do formatu, który nie obsługuje fontów, ale nie wtedy, gdy zależy nam na łatwej edycji.
Z mojego doświadczenia: przy projektowaniu interfejsów, ikon, prostych banerów na WWW czy grafik do multimediów, najrozsądniej jest najpierw grupować logicznie elementy (np. ikona + podpis), a dopiero na samym końcu, gdy projekt jest ostateczny, ewentualnie zamieniać tekst na krzywe. Grupowanie pozwala też szybko zaznaczać całe moduły projektu, wyrównywać je względem siebie, duplikować całe zestawy (np. kafelki menu, przyciski z opisami) bez ryzyka, że coś się rozjedzie. W grafice komputerowej to taka podstawowa „organizacja pracy” – mniej destrukcyjna niż różne operacje na kształtach i zdecydowanie bardziej elastyczna przy późniejszych zmianach.

Pytanie 38

Co oznacza pojęcie integralności referencyjnej w bazie danych?

A. Wartość atrybutu należy do jego dziedziny (dozwolonego zbioru)
B. Baza jest odporna na awarie sprzętu i oprogramowania
C. Każdej wartości klucza obcego odpowiada istniejąca wartość klucza podstawowego
D. Każda encja ma klucz podstawowy o wartości unikatowej i różnej od NULL
Pozostałe odpowiedzi opisują inne rodzaje integralności lub cechy bazy. Stwierdzenie, że wartość atrybutu należy do swojej dziedziny, to integralność dziedzinowa - dotyczy poprawnego typu i zakresu wartości w kolumnie. Odporność na awarie sprzętu i oprogramowania to zagadnienie niezawodności i bezpieczeństwa, nie spójności powiązań. Wymóg, by każda encja miała unikatowy, niepusty klucz podstawowy, to integralność encji. Integralność referencyjna dotyczy zgodności klucza obcego z istniejącym kluczem podstawowym, dlatego to ta odpowiedź jest poprawna.

Pytanie 39

Którego znacznika można użyć do grupowania elementów w blok?

A.
<p>
B.
<div>
C.
<span>
D.
<param>
<div> to uniwersalny pojemnik blokowy - służy do grupowania innych elementów w logiczną sekcję, którą można następnie wspólnie ostylować lub spozycjonować (np. nadać jej klasę i ułożyć Flexboxem). Jest elementem blokowym, więc domyślnie zajmuje całą szerokość i rozpoczyna się od nowej linii. Odpowiednikiem dla treści w linii jest <span>. W nowoczesnym HTML5 tam, gdzie pasuje znaczenie, zamiast samego <div> stosuje się znaczniki semantyczne (<header>, <section>, <nav>). Dlatego do grupowania elementów w blok służy <div>.

Pytanie 40

Który użytkownik domyślnie posiada pełne uprawnienia do zarządzania bazą danych w systemie MySQL?

A. root
B. admin
C. mysqld
D. sysadmin
Domyślnym kontem administracyjnym w MySQL jest root - ma pełne uprawnienia, m.in. do tworzenia baz, zakładania kont i nadawania innym uprawnień (GRANT). Ze względów bezpieczeństwa nie używa się go do codziennej pracy aplikacji: dla niej zakłada się osobnego użytkownika z ograniczonymi prawami tylko do potrzebnej bazy, a hasło root ustawia się od razu po instalacji. Dlatego pełne uprawnienia ma domyślnie użytkownik root.