Wyniki egzaminu

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

Egzamin zdany!

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

W języku SQL polecenie INSERT INTO

A. dodaje tabelę.
B. dodaje pola do tabeli.
C. wprowadza dane do tabeli.
D. aktualizuje rekordy określoną wartością.
Polecenie INSERT INTO w SQL służy dokładnie do tego, co wskazuje poprawna odpowiedź: do wprowadzania danych do istniejącej tabeli. W praktyce oznacza to dodanie nowego wiersza (rekordu) do tabeli, która ma już zdefiniowaną strukturę: kolumny, typy danych, klucze itp. Najprostszy przykład w standardowym SQL wygląda tak: INSERT INTO klienci (imie, nazwisko, email) VALUES ('Jan', 'Kowalski', '[email protected]'); Tutaj tabela klienci już istnieje, a polecenie tylko dopisuje nowy rekord. Moim zdaniem warto zapamiętać, że INSERT pracuje na danych, a nie na strukturze tabeli. Do tworzenia tabel służy CREATE TABLE, do zmiany struktury ALTER TABLE, a do modyfikacji istniejących rekordów UPDATE. W codziennej pracy z bazami danych INSERT INTO jest jednym z absolutnie podstawowych poleceń. Używa się go przy obsłudze formularzy rejestracji użytkownika, dodawaniu zamówień w sklepie internetowym, logowaniu zdarzeń w systemie (logi), czy zapisywaniu wyników pomiarów z czujników. Dobrą praktyką jest zawsze podawanie listy kolumn, do których wstawiamy dane, zamiast polegać na kolejności kolumn w tabeli. Dzięki temu kod SQL jest czytelniejszy i mniej podatny na błędy po zmianach w strukturze tabeli. Warto też wiedzieć, że istnieją różne warianty INSERT, np. INSERT ... SELECT (wstawianie danych na podstawie wyników zapytania), INSERT IGNORE czy INSERT ... ON CONFLICT/ON DUPLICATE KEY w konkretnych systemach (PostgreSQL, MySQL). To wszystko dalej jest ta sama rodzina poleceń: celem zawsze jest dodanie nowych rekordów, a nie modyfikacja starych czy zmiana schematu bazy. Z mojego doświadczenia, kto dobrze ogarnie różne formy INSERT, temu dużo łatwiej budować sensowne aplikacje bazodanowe.

Pytanie 2

Zawarta baza danych składa się z trzech tabel oraz dwóch relacji. Aby uzyskać informacje o wszystkich lekarzach przypisanych do wybranego pacjenta, konieczne jest porównanie kluczy

Ilustracja do pytania
A. Lekarze.id = Pacjenci.Lekarze_id
B. Lekarze.id = Pacjenci.Recepty_id
C. Lekarze.id = Recepty.id
D. Lekarze.id = Pacjenci.id

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź Lekarze.id = Pacjenci.Lekarze_id jest poprawna, ponieważ w bazach danych relacyjne połączenie między tabelami jest realizowane przez klucze obce. Tabela Pacjenci zawiera kolumnę Lekarze_id, która jest kluczem obcym odnoszącym się do kolumny id w tabeli Lekarze. Dzięki temu połączeniu możemy określić, który lekarz jest przypisany do danego pacjenta. W praktyce oznacza to, że możemy wykonywać zapytania SQL, które łączą te tabele i wyświetlają dane wszystkich lekarzy przypisanych do konkretnego pacjenta. Przykładowe zapytanie SELECT może wyglądać tak SELECT Lekarze.imie Lekarze.nazwisko FROM Pacjenci INNER JOIN Lekarze ON Pacjenci.Lekarze_id = Lekarze.id WHERE Pacjenci.id = [id_pacjenta]. Takie podejście jest zgodne z dobrymi praktykami projektowania baz danych zgodnie z zasadami normalizacji co zwiększa spójność i integralność danych. Poprawne użycie kluczy obcych jest fundamentalne w kontekście zarządzania relacjami między danymi oraz umożliwia przeprowadzanie bardziej złożonych analiz danych z różnych tabel w sposób wydajny i bezpieczny.

Pytanie 3

W języku PHP uzyskano wyniki kwerend z bazy danych przy użyciu polecenia mysql_query. Aby wydobyć z otrzymanej kwerendy pojedynczy wiersz danych, konieczne jest użycie polecenia

A. mysql_list_fields
B. mysql_field_len
C. mysql_fetch_lengths
D. mysql_fetch_row
Odpowiedź mysql_fetch_row jest poprawna, ponieważ to funkcja, która pozwala na pobranie pojedynczego wiersza danych z zasobu zwróconego przez mysql_query. Zwraca ona tablicę, która zawiera wartości poszczególnych pól w wierszu, co umożliwia ich dalsze przetwarzanie. Dzięki tej funkcji programista może łatwo iterować przez wyniki kwerendy, co jest kluczowe w przypadku przetwarzania danych z baz danych. Na przykład, po wykonaniu kwerendy SELECT, można użyć pętli while, aby pobierać kolejne wiersze danych i je wyświetlać. Dobrą praktyką jest również sprawdzenie, czy zasób kwerendy jest poprawny przed użyciem tej funkcji, co pozwoli uniknąć błędów w czasie wykonywania skryptu. Warto dodać, że w nowszych wersjach PHP zaleca się korzystanie z rozszerzenia mysqli lub PDO, które oferują bardziej zaawansowane możliwości i większe bezpieczeństwo przy pracy z bazami danych.

Pytanie 4

Grafika powinna być zapisana w formacie GIF, jeśli

A. istnieje potrzeba zapisu obrazu w formie bez kompresji
B. jest to grafika wektorowa
C. jest to obraz w technologii stereoskopowej
D. konieczne jest zapisanie obrazu lub animacji
Format GIF (Graphics Interchange Format) jest powszechnie wykorzystywany do przechowywania obrazów oraz animacji. Dzięki obsłudze przezroczystości oraz możliwości tworzenia prostych animacji, GIF stał się standardem w przypadku grafiki na stronach internetowych. Jego ograniczenie do 256 kolorów sprawia, że idealnie nadaje się do prostych grafik, takich jak logo czy ikony, gdzie nie jest wymagana pełna gama kolorów, co ma miejsce w formatach takich jak JPEG czy PNG. W przypadku animacji, GIF umożliwia zapis wielu klatek w jednym pliku, co pozwala na odtwarzanie sekwencji obrazu bez potrzeby korzystania z dodatkowego oprogramowania. Praktyczne zastosowanie GIF-a można zaobserwować w mediach społecznościowych, gdzie animowane obrazki są często wykorzystywane do wyrażania emocji, a także na stronach internetowych do przedstawiania logo w ruchu. Używanie formatu GIF w kontekście animacji jest zgodne z dobrą praktyką w branży, ponieważ pozwala na efektywne zarządzanie zasobami wizualnymi oraz zwiększa atrakcyjność treści wizualnych.

Pytanie 5

Wskaż polecenie, które działa identycznie jak instrukcja while w PHP.

$x = 0;
while($x < 5) {
    echo "$x,";
    $x++;
}

Instrukcja 1
for ($x=0; $x<5; $x++) {
    echo "$x,";
    $x++;
}

Instrukcja 2
for ($x=0; $x<5; $x+=2) {
    echo "$x,";
    $x++;
}

Instrukcja 3

for ($x=0; $x<5; $x++) {
    echo "$x,";
}

Instrukcja 4
for ($x=1; $x<=5; $x++) {
    echo "$x,";
}
A. Instrukcja 3
B. Instrukcja 1
C. Instrukcja 2
D. Instrukcja 4

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Instrukcja 3 jest funkcjonalnie równoważna podanej instrukcji while w języku PHP. W obu przypadkach pętla zaczyna się z wartością zmiennej x równej 0 i kontynuuje dopóki x jest mniejsze od 5. W każdej iteracji zmienna x jest zwiększana o 1. Wyrażenie warunkowe w pętli for to x<5 co odpowiada warunkowi while $x<5. Część inicjalizacyjna for ustawia zmienną na 0 co jest zgodne z inicjalizacją przed pętlą while. Instrukcje zawarte w pętli wykonują te same operacje wyświetlania wartości x i inkrementacji. W praktyce stosowanie pętli for może być korzystne dla czytelności gdyż wszystkie elementy sterujące pętlą są zgrupowane w jednej linii co ułatwia zrozumienie jej działania. Jest to zgodne z dobrymi praktykami programistycznymi które promują klarowność kodu. Instrukcje for są często wykorzystywane w sytuacjach gdy liczba iteracji jest z góry znana co czyni je bardziej intuicyjnymi w takich przypadkach.

Pytanie 6

Które wartości będą przechowywane w zmiennych po wykonaniu przedstawionej pętli języka PHP?

$i = 20;    $a = 0;
while($i) {
  $a += 2;
  $i--;
}
A. a = 40, i = 20
B. a = 40, i = 0
C. a = 20, i = 20
D. a = 0, i = 20

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź jest poprawna, ponieważ zrozumienie jak działa pętla w języku PHP jest kluczowe dla efektywnej pracy z tym językiem. W tym przypadku mamy do czynienia z pętlą, która zaczyna się od wartości i = 20 i w każdej iteracji zmniejsza wartość i o 1, aż dojdzie do 0, kończąc pętlę. Zmienna 'a' jest zwiększana o 2 w każdej iteracji, co daje nam finalną wartość a = 40 po 20 iteracjach. To jest kluczowe dla zrozumienia, jak zmienne są aktualizowane i przechowywane w pętli PHP. Przykład ten pokazuje, jak można wykorzystać pętle do wykonywania powtarzalnych operacji na danych, co jest podstawowym elementem programowania. Pamiętaj, że zrozumienie, jak działa pętla, jest kluczowe do tworzenia efektywnych i wydajnych programów, nie tylko w PHP, ale w każdym języku programowania.

Pytanie 7

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

A. usuwania szumów
B. podbicia basów
C. wyciszenia
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 8

Wynikiem realizacji zamieszczonego kodu PHP jest pokazanie komunikatu

Ilustracja do pytania
A. warunek2
B. warunek3
C. warunek1
D. warunek4

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kod w języku PHP przedstawia warunki logiczne, które oceniają wartości zmiennych $a, $b, $c i $d. Zmienna $a i $c są ustawione na true, natomiast $b i $d na false. Pierwszy warunek sprawdza, czy zarówno $a && $b (czyli true && false, co daje false) lub $c && $d (czyli true && false, co również daje false) jest prawdziwe. Oba wyrażenia są fałszywe, więc warunek if nie zostanie spełniony. Drugi warunek elseif sprawdza, czy $a && $b (false) lub $c || $d (true || false, co daje true) jest prawdziwe. Ponieważ $c || $d jest prawdziwe, cały warunek jest spełniony i zostanie wyświetlony komunikat warunek2. Dobrym przykładem praktycznego zastosowania takich konstrukcji jest walidacja danych w aplikacjach webowych, gdzie można łączyć różne warunki logiczne w celu osiągnięcia wymaganej logiki decyzyjnej. Ważne jest, by rozumieć priorytety operatorów logicznych i zasady działania operatora „OR” (||) i „AND” (&&) w języku PHP, zgodnie z dokumentacją PHP.

Pytanie 9

W języku CSS, aby zdefiniować marginesy zewnętrzne o wartościach: margines górny i dolny 20 px, lewy i prawy 40 px należy użyć kodu

A. margin: 20px 40px;
B. margin: 20px 40px 40px 20px;
C. margin: 40px 20px;
D. margin: 20px 20px 40px 40px;
Poprawny zapis margin: 20px 40px; wynika z tzw. skróconej (shorthand) składni własności margin w CSS. Gdy podajemy dwie wartości, przeglądarka interpretuje je zawsze w ten sam sposób: pierwsza wartość dotyczy marginesu górnego i dolnego (top i bottom), a druga wartość dotyczy marginesu lewego i prawego (left i right). Czyli dokładnie tak, jak w treści pytania: 20 px góra/dół i 40 px lewo/prawo. To jest zgodne ze specyfikacją CSS (CSS Box Model) i działa we wszystkich współczesnych przeglądarkach. Moim zdaniem warto zapamiętać ogólny schemat dla margin i padding: – 1 wartość: wszystkie cztery strony jednakowe (margin: 20px;) – 2 wartości: góra/dół, lewo/prawo (margin: 20px 40px;) – 3 wartości: góra, lewo/prawo, dół (margin: 10px 20px 30px;) – 4 wartości: góra, prawo, dół, lewo – zgodnie z ruchem wskazówek zegara (margin: 10px 20px 30px 40px;) W praktyce zapis z dwiema wartościami jest bardzo często używany w layoutach responsywnych, np. przy centrowaniu kontenera: .container { margin: 20px auto; width: 80%; }. Zamiast podawać osobno margin-top, margin-right, margin-bottom i margin-left, używamy jednego, czytelnego skrótu. To nie tylko skraca kod, ale też ułatwia jego późniejsze utrzymanie. Dobrą praktyką jest też świadome korzystanie z jednostek. W przykładach szkolnych często pojawiają się piksele, ale w prawdziwych projektach produkcyjnych często stosuje się rem, em czy jednostki procentowe, żeby łatwiej skalować interfejs. Sama zasada działania shorthand margin pozostaje jednak identyczna, niezależnie od jednostki. Jeśli rozumiesz ten mechanizm, dużo łatwiej będzie Ci później ogarniać spacing w bardziej złożonych layoutach i frameworkach CSS, typu Bootstrap czy Tailwind, które bazują na tych samych regułach box modelu.

Pytanie 10

W tabeli mieszkancy znajdują się dane o osobach z całej Polski. Aby zliczyć, ile różnych miast jest zawartych w tej tabeli, należy wykonać kwerendę

A. SELECT COUNT(miasto) FROM mieszkancy;
B. SELECT COUNT(DISTINCT miasto) FROM mieszkancy;
C. SELECT COUNT(miasto) FROM mieszkancy DISTINCT;
D. SELECT DISTINCT miasto FROM mieszkancy;

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wybrana kwerenda SELECT COUNT(DISTINCT miasto) FROM mieszkancy; jest poprawna, ponieważ pozwala na zliczenie unikalnych miast w tabeli mieszkancy. Funkcja DISTINCT eliminuje duplikaty, co oznacza, że tylko różne wartości miasto będą brane pod uwagę w procesie zliczania. Użycie COUNT w połączeniu z DISTINCT jest standardową praktyką w SQL, która zapewnia dokładne wyniki przy analizie danych. Taka metoda jest szczególnie przydatna w przypadku dużych zbiorów danych, gdzie wiele rekordów może odnosić się do tego samego miasta. Na przykład, jeśli mamy 1000 rekordów, z których 200 dotyczy Warszawy, 300 Krakowa oraz 500 Gdańska, kwerenda zwróci wynik 3, ponieważ tylko trzy różne miasta zostały uwzględnione. Tego typu zapytania są powszechne w raportach analitycznych, gdzie istotne jest zrozumienie dystrybucji danych oraz identyfikacja różnych kategorii w zbiorze, co jest niezbędne dla podejmowania decyzji biznesowych.

Pytanie 11

W języku JavaScript rezultat wykonania instrukcji zmienna++; będzie równy wynikowi instrukcji

A. zmienna += 1;
B. zmienna === zmienna + 1;
C. zmienna = zmienna + 10;
D. zmienna--;
Zmienna <span>zmienna++;</span> w JavaScript to operator inkrementacji, który zwiększa wartość zmiennej o 1. Odpowiedź <span>zmienna += 1;</span> jest równoważna, gdyż również zwiększa wartość zmiennej o 1, korzystając z operatora przypisania z dodawaniem. Dobre praktyki programistyczne sugerują, że wykorzystanie operatorów skróconych, jak <span>+=</span>, poprawia czytelność kodu. Przykład zastosowania można zobaczyć w pętli, gdzie każdy krok może wymagać zwiększenia wartości licznika: <span>for (let i = 0; i < 10; i++) { licznik += 1; }</span>. Warto również zauważyć, że operator inkrementacji <span>++</span> może być używany w formie prefiksowej i postfiksowej, co ma znaczenie w kontekście zwracania wartości. Ponadto, w sytuacjach, gdy kod wymaga zwiększenia wartości zmiennej, preferowanie <span>zmienna += 1;</span> nad <span>zmienna++;</span> może poprawić zrozumienie logiki programu, zwłaszcza dla mniej doświadczonych programistów.

Pytanie 12

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. wykluczenia.
C. grupowania.
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 13

Poziom izolacji transakcji Repeatable Read (tryb powtarzalnego odczytu) używany przez MS SQL jest związany z problemem

A. odczytów widm
B. brudnych odczytów
C. niepowtarzalnych odczytów
D. utraty aktualizacji
Wybór odpowiedzi 'niepowtarzalnych odczytów', 'brudnych odczytów' lub 'utraty aktualizacji' wskazuje na brak zrozumienia, jak działają różne poziomy izolacji transakcji w kontekście baz danych. Odczyty niepowtarzalne polegają na tym, że transakcja może odczytać różne wartości w kolejnych odczytach tego samego wiersza, co jest problemem rozwiązywanym przez poziom Repeatable Read. Oznacza to, że dane odczytane w jednym kroku transakcji pozostają spójne do końca tej transakcji, a zatem nie są one narażone na zmiany poprzez inne transakcje w tym samym czasie. Brudne odczyty występują, gdy jedna transakcja odczytuje dane zapisane przez inną, jeszcze niezakończoną transakcję, co jest problemem z kolei eliminowanym przez poziomy izolacji takie jak Read Committed. Utrata aktualizacji to inny problem, który polega na tym, że dwie transakcje odczytują tę samą wartość i zapisują zmodyfikowane wartości, przy czym ostatnia zapisuje nadpisując wcześniejszą, co także nie jest bezpośrednim problemem w kontekście Repeatable Read. W praktyce, zrozumienie różnicy między tymi problemami jest kluczowe dla zapewnienia spójności transakcji. Warto zatem studiować dokumentację i standardy, aby właściwie dobierać poziomy izolacji w zależności od wymagań konkretnej aplikacji.

Pytanie 14

Dla dowolnego a w zakresie (0,99), celem funkcji napisanej w JavaScript jest:

function fun1(a)
{
    for(n=a; n<=100; n++)
        document.write(n);
    return n;
}
A. zwrócenie wartości z zakresu a..99
B. wypisanie wartości z zakresu a..99 i zwrócenie liczby 100
C. wypisanie wartości z zakresu a...100 i zwrócenie wartości zmiennej n
D. wypisanie wartości zmiennej a oraz zwrócenie wartości zmiennej n
Odpowiedź numer trzy jest poprawna ponieważ kod funkcji w języku JavaScript zawiera pętlę for która iteruje od wartości a aż do 100 włącznie. W każdym przebiegu pętli wywoływana jest metoda document.write która wypisuje na ekranie bieżącą wartość zmiennej n. Ponieważ pętla kończy się na 100, ostatnia wartość która zostanie wypisana to 100. Dodatkowo zauważmy że po zakończeniu pętli funkcja zwraca wartość zmiennej n, która po zakończeniu pętli będzie równa 101. Jest to typowy wzorzec używany w JavaScript gdzie pętla jest wykorzystywana do iteracji po zbiorze wartości a po jej zakończeniu zwracana jest ostatnia wartość zmiennej sterującej. Praktyczne zastosowanie tej wiedzy obejmuje rozumienie podstawowych mechanizmów iteracji w JavaScript co jest kluczowe w programowaniu. Dobre praktyki wskazują na wyraźne rozdzielenie logiki wyświetlania od logiki zwracania wartości co ułatwia testowanie i utrzymanie kodu. Zwracanie wartości po pętli może być używane w sytuacjach gdy chcemy uzyskać informację o stanie końcowym iteracji co jest częstym scenariuszem w obliczeniach arytmetycznych lub przetwarzaniu danych.

Pytanie 15

Które z poniższych stwierdzeń dotyczących klucza głównego jest poprawne?

A. Jest unikalny w obrębie tabeli
B. W tabeli z danymi osobowymi może to być pole z nazwiskiem
C. Składa się wyłącznie z jednego pola
D. Może przyjmować tylko wartości numeryczne
Klucz podstawowy to atrybut lub zestaw atrybutów, który jednoznacznie identyfikuje każdy rekord w tabeli bazy danych. Najważniejszym wymogiem jest, aby klucz podstawowy był unikalny dla każdego wiersza, co oznacza, że nie może być powtórzony w obrębie tej samej tabeli. Przykładem może być numer identyfikacyjny (np. PESEL, NIP) przypisany do konkretnej osoby, który gwarantuje, że każda osoba w tabeli danych osobowych jest jednoznacznie identyfikowalna. Stosowanie kluczy podstawowych jest zgodne z zasadami normalizacji baz danych, co pozwala na minimalizację redundancji danych oraz poprawę integralności danych. Klucz podstawowy może składać się z jednego lub więcej pól, co daje elastyczność w projektowaniu bazy danych, aby pasowała do specyficznych potrzeb aplikacji. Dobre praktyki wskazują, że klucz podstawowy powinien być stabilny, czyli nie zmieniać się w czasie, oraz prosty do zaimplementowania i używania w zapytaniach SQL.

Pytanie 16

W języku PHP znak "//" wskazuje na

A. operator alternatywny
B. początek skryptu
C. początek komentarza jednoliniowego
D. operator dzielenia całkowitego
W języku PHP znak '//' oznacza początek komentarza jednoliniowego. Komentarze w PHP są istotnym elementem kodu, pozwalającym programistom na dodawanie adnotacji, które nie wpływają na wykonywanie skryptu. Komentarze są niezwykle pomocne, gdyż umożliwiają wyjaśnienie złożonych fragmentów kodu, co ułatwia jego dalsze utrzymanie i rozwijanie. Dzięki używaniu '//', programista może opisać, co dany fragment kodu robi, dla siebie lub innych osób przeglądających kod w przyszłości. Przykład zastosowania: jeśli mamy kod 'echo "Hello World!";', możemy dodać komentarz wyjaśniający: '// Wyświetla tekst Hello World!'. Warto zaznaczyć, że PHP pozwala także na korzystanie z komentarzy wieloliniowych, które zaczynają się od '/**' i kończą na '*/'. Stosowanie komentarzy jest zgodne z najlepszymi praktykami programistycznymi, które zalecają dokumentowanie kodu oraz poprawne jego komentowanie, co jest częścią standardów kodowania, takich jak PSR-1 oraz PSR-2, promujących czytelność i spójność w kodzie.

Pytanie 17

Wskaż poprawne stwierdzenie dotyczące przedstawionego kodu HTML.
<video width="640" height="480" controls>
<source src="animacja.mp4" type="video/mp4">
</video>

A. Kod może nie działać w przeglądarkach, które nie obsługują HTML5.
B. Plik animacja.mp4 powinien mieć rozdzielczość 640x480 pikseli, aby był odtwarzany.
C. Użytkownik nie będzie miał możliwości kontrolowania odtwarzania wideo.
D. Lokalizacja pliku jest nieprawidłowa, brak w niej ścieżki bezwzględnej.
Kod HTML przedstawiony w pytaniu wykorzystuje znacznik &lt;video&gt;, który jest elementem HTML5 pozwalającym na osadzanie filmów w dokumentach internetowych. W kontekście poprawnej odpowiedzi, kluczowym jest zrozumienie, że przeglądarki muszą obsługiwać HTML5, aby mogły w pełni funkcjonować z tym kodem. W przypadku starszych przeglądarek, które nie wspierają HTML5, element &lt;video&gt; może nie być wyświetlany lub nie będzie działał prawidłowo. Dlatego istotne jest, aby deweloperzy testowali swoje aplikacje w różnych środowiskach oraz aby korzystali z odpowiednich polyfilli dla starszych przeglądarek, które mogą poprawić ich funkcjonalność. Przykładowo, użycie biblioteki JavaScript takiej jak Video.js może pomóc w zapewnieniu wsparcia dla elementów wideo w szerszym zakresie przeglądarek. Dbałość o kompatybilność z różnymi wersjami przeglądarek to nie tylko kwestia estetyki, ale również użyteczności i dostępności aplikacji internetowych.

Pytanie 18

Jakie znaczniki należy zastosować, aby umieścić kod PHP w pliku z rozszerzeniem php?

A. <php .......... />
B. <php> ......... </php>
C. <?php> ........ <php?>
D. <?php .......... ?>
Odpowiedź <?php .......... ?> jest poprawna, ponieważ jest to standardowy sposób wstawiania kodu PHP do plików z rozszerzeniem .php. Znaczniki te pozwalają interpreterowi PHP rozpoznać, że zawarty w nich kod powinien być przetworzony przez silnik PHP, a nie przez przeglądarkę jako HTML. W praktyce, użycie tych znaczników umożliwia twórcom aplikacji webowych dynamiczne generowanie treści, operowanie na danych wejściowych oraz integrację z bazami danych. Przykład zastosowania może obejmować skrypty do przetwarzania formularzy, generowania stron internetowych w zależności od warunków lub wyświetlania danych z bazy danych. Standardowe znaczniki <?php ?> są również zalecane w dokumentacji PHP jako najlepsza praktyka, co zapewnia większą kompatybilność i zrozumiałość kodu, a także minimalizuje ryzyko błędów związanych z interpretacją kodu przez serwer. Warto również pamiętać, że znaczniki te powinny być stosowane z zachowaniem odpowiednich zasad formatowania, aby kod był czytelny i łatwy do utrzymania.

Pytanie 19

Jakie efekt osiągnie się za pomocą przedstawionego formatowania CSS dla nagłówka trzeciego poziomu?

Ilustracja do pytania
A. kolor tekstu będzie pomarańczowy
B. tło będzie pomarańczowe
C. kolor tekstu będzie szary
D. tło będzie w odcieniu szarym
Poprawna odpowiedź dotycząca tła pomarańczowego wynika z zasady specyficzności CSS W przedstawionym przykładzie stylu dla elementu h3 zastosowano właściwość background-color przypisując jej wartość orange bezpośrednio w znaczniku HTML co zwiększa specyficzność takiego stylu nad stylem zdefiniowanym w sekcji style w nagłówku strony Specyficzność w CSS to mechanizm określający który styl ma pierwszeństwo w przypadku konfliktu stylów dla tego samego elementu Styl wbudowany inline ma wyższą specyficzność niż style określone w sekcjach style co oznacza że definiując background-color inline jako orange nadpisuje on wcześniej zdefiniowane style Dzięki temu można precyzyjnie kontrolować wygląd poszczególnych elementów na stronie co jest dobrą praktyką w przypadku gdy konieczne są jednorazowe zmiany stylu dla konkretnego elementu Warto jednak pamiętać że nadmierne wykorzystywanie stylów inline może prowadzić do trudności w zarządzaniu wyglądem całej strony dlatego dobrą praktyką jest używanie ich oszczędnie oraz stosowanie zewnętrznych arkuszy stylów CSS tam gdzie to możliwe

Pytanie 20

W bibliotece mysqli w PHP, aby uzyskać najbardziej aktualny komunikat o błędzie, można użyć funkcji

A. mysqli_error()
B. mysqli_error_list()
C. mysqli_use_result()
D. mysqli_errno()
W kontekście użycia funkcji do uzyskania komunikatów o błędach w bibliotece mysqli, niektóre z odpowiedzi mogą prowadzić do nieporozumień. Na przykład, mysqli_use_result() jest funkcją, która służy do pobierania zestawu wyników z zapytania SELECT w trybie pamięci. Jej głównym zadaniem jest przetwarzanie wyników, a nie błędów, co czyni ją nieodpowiednią w tym kontekście. Użycie tej funkcji nie zapewnia informacji o błędach, czego można się spodziewać w przypadku zapytań, które mogą zakończyć się niepowodzeniem. Z kolei mysqli_errno() zwraca numer błędu związanego z ostatnią operacją, co może być przydatne, ale samo w sobie nie dostarcza opisu błędu, a tym samym nie spełnia wymagań dotyczących uzyskania ostatniego komunikatu o błędzie w formie tekstowej. Mimo że może być użyteczne w niektórych kontekstach, np. w logice warunkowej, nie jest w stanie dostarczyć pełnego opisu, którego można oczekiwać. Funkcja mysqli_error_list() zwraca tablicę wszystkich błędów związanych z ostatnią operacją, co również jest przydatne w określonych sytuacjach, jednak wciąż nie spełnia wymagań dotyczących prostego i bezpośredniego uzyskania ostatniego komunikatu o błędzie. Ostatecznie, przy wyborze metody obsługi błędów, kluczowe jest zrozumienie, że funkcje te mają różne zastosowania i nie każda z nich będzie odpowiednia w kontekście uzyskania pełnego opisu błędu. Podsumowując, wybór odpowiednich funkcji do obsługi błędów jest kluczowy dla efektywnego debugowania i poprawnego działania aplikacji opartych na PHP.

Pytanie 21

W języku JavaScript, aby zweryfikować, czy liczba leży w zakresie 100,200>, należy użyć:

A. if(liczba<100 && liczba<=200)
B. if (liczba>100 || liczba<=200)
C. if(liczba<100 || liczba>=200)
D. if(liczba>100 && liczba <=200)
Aby sprawdzić, czy liczba znajduje się w przedziale od 100 do 200 włącznie w języku JavaScript, należy użyć operatora logicznego AND (&&). Wyrażenie if(liczba > 100 && liczba <= 200) oznacza, że liczba musi być większa niż 100 oraz jednocześnie mniejsza lub równa 200. Przykład: jeśli mamy liczby 150 i 250, to 150 spełnia warunki tego warunku (jest większa od 100 i mniejsza lub równa 200), podczas gdy 250 nie spełnia (jest większa od 200). Kluczowe jest zrozumienie operatorów porównania oraz logicznych w JavaScript. Zgodnie z ECMAScript, językiem, na którym oparty jest JavaScript, użycie operatora AND w tym kontekście jest standardowym podejściem do określenia, czy wartość znajduje się w danym przedziale. Poprawne użycie tych operatorów jest istotne dla logiki programów oraz dostosowywania warunków do różnych sytuacji, co jest niezbędne w codziennej pracy programisty.

Pytanie 22

W skrypcie JavaScript operatory: ||, && są klasyfikowane jako operatorzy

A. logicznymi
B. bitowe
C. przypisania
D. arytmetyczne
Operatory || (OR logiczny) oraz && (AND logiczny) w języku JavaScript należą do grupy operatorów logicznych. Używają ich programiści do prowadzenia operacji na wartościach boolowskich (true/false), co jest kluczowe w tworzeniu warunków w instrukcjach warunkowych i pętlach. Operator && zwraca true, jeśli obie jego operandy są prawdziwe, natomiast operator || zwraca true, gdy przynajmniej jedna z operand jest prawdziwa. Przykładem praktycznego zastosowania operatora && może być sprawdzanie, czy użytkownik jest zalogowany i ma odpowiednie uprawnienia do wykonania danej operacji. Z kolei operator || może być użyty do wyświetlenia komunikatu, jeśli użytkownik nie podał danych, bądź podał niewłaściwe wartości. Dobrze jest stosować te operatory w kontekście logiki programowania, co pozwala na tworzenie bardziej złożonych, ale jednocześnie czytelnych i efektywnych warunków. Warto również pamiętać, aby w kodzie unikać zbyt skomplikowanych warunków, co może prowadzić do trudności w utrzymaniu kodu oraz zwiększać ryzyko błędów.

Pytanie 23

W tabeli o nazwie zadania znajduje się kolumna tekstowa status. Jakie zapytanie należy wykorzystać, aby usunąć te rekordy, w których status to ‘zamknięte’?

A. DELETE FROM zadania WHERE status = 'zamknięte';
B. TRUNCATE TABLE zadania;
C. DELETE FROM zadania;
D. TRUNCATE TABLE zadania WHERE status = 'zamknięte';
Odpowiedź 'DELETE FROM zadania WHERE status = 'zamknięte';' jest poprawna, ponieważ ta kwerenda w sposób precyzyjny usuwa tylko te rekordy z tabeli 'zadania', które mają status 'zamknięte'. Użycie klauzuli WHERE jest kluczowe, ponieważ pozwala na ograniczenie operacji usunięcia do konkretnych wierszy w tabeli, co jest zgodne z najlepszymi praktykami w zarządzaniu bazami danych. Należy unikać bezwarunkowego usuwania wszystkich rekordów, jak w przypadku kwerendy 'DELETE FROM zadania;', co mogłoby spowodować utratę danych, które są nadal potrzebne. Przykłady zastosowania tej kwerendy można znaleźć w wielu systemach zarządzania projektami, gdzie często musimy archiwizować lub usuwać zakończone zadania. Dodatkowo stosowanie klauzuli WHERE jest zgodne z zasadą minimalizacji zmian w bazie danych, co jest istotne dla zapewnienia integralności danych i umożliwienia ich późniejszej analizy.

Pytanie 24

Polecenie w SQL GRANT ALL PRIVILEGES ON klienci TO pracownik ma na celu

A. przenieść uprawnienia z grupy klienci na użytkownika pracownik
B. przyznać grupie klienci uprawnienia do tabeli pracownik
C. nadać wszystkie uprawnienia do tabeli klienci użytkownikowi pracownik
D. cofnąć wszystkie uprawnienia pracownika do tabeli klienci
Polecenie GRANT ALL PRIVILEGES ON klienci TO pracownik w języku SQL jest używane do nadawania wszystkich dostępnych uprawnień na określonej tabeli, w tym przypadku na tabeli klienci, użytkownikowi o nazwie pracownik. Dzięki temu, otrzymuje on pełną kontrolę nad danymi w tej tabeli, co obejmuje możliwość dodawania, modyfikowania oraz usuwania rekordów, a także zarządzania strukturą tabeli. Jako przykład, jeśli pracownik potrzebuje wprowadzać nowe informacje o klientach, usuwanie zbędnych danych lub edytowanie istniejących rekordów, nadanie mu wszystkich uprawnień jest kluczowe. Standardy SQL definiują sposób zarządzania uprawnieniami i pozwalają administratorom na precyzyjne kontrolowanie dostępu do danych. W praktyce, aby skorzystać z tego polecenia, użytkownik musi mieć odpowiednie uprawnienia do nadawania uprawnień innym użytkownikom. Warto również pamiętać o zasadzie najmniejszych uprawnień, która sugeruje, że użytkownik powinien otrzymać tylko te uprawnienia, które są niezbędne do wykonania jego zadań, co zwiększa bezpieczeństwo bazy danych.

Pytanie 25

Jaką wartość wyświetli standardowe wyjście dla podanego w ramce fragmentu kodu w języku C++?

Ilustracja do pytania
A. 2
B. 0
C. 3
D. 32

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W analizowanym fragmencie programu funkcja obliczenia modyfikuje swój argument x poprzez operację x %= 3 co oznacza że oblicza resztę z dzielenia x przez 3. W przypadku x równego 32 reszta z dzielenia przez 3 wynosi 2. Następnie instrukcja x++ zwiększa wartość x o 1 co daje wynik końcowy równy 3. Wiedza o operatorach arytmetycznych takich jak % oraz o inkrementacji ++ jest kluczowa przy programowaniu w C++. Operator % jest powszechnie używany do określania parzystości liczb lub cyklicznych wzorców w algorytmach. Zrozumienie jak te operacje wpływają na przepływ danych w programie pozwala unikać błędów logicznych i poprawiać wydajność kodu. Inkrementacja jest również istotna w wielu strukturach sterujących takich jak pętle co czyni ją niezbędnym elementem w rozwiązywaniu problemów algorytmicznych. Tego typu operacje są fundamentem w standardach programowania ponieważ pozwalają na precyzyjne kontrolowanie wartości zmiennych w trakcie wykonywania programów. Warto ćwiczyć te koncepcje aby w pełni wykorzystać potencjał języka C++ szczególnie w kontekście optymalizacji i wydajności aplikacji.

Pytanie 26

W języku C, aby zdefiniować stałą, należy zastosować

A. const
B. static
C. #const
D. #INCLUDE

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W języku C, aby zadeklarować stałą, używamy słowa kluczowego 'const'. Oznaczenie zmiennej jako stałej z użyciem 'const' informuje kompilator, że wartość tej zmiennej nie może być zmieniana po jej inicjalizacji. Jest to istotne, ponieważ pozwala na większą kontrolę nad danymi w programie oraz może przyczynić się do zwiększenia bezpieczeństwa kodu. Na przykład, jeśli zadeklarujemy stałą długość tablicy jako 'const int length = 10;', kompilator zablokuje wszelkie próby zmiany tej wartości w późniejszej części programu. Dzięki temu, możemy uniknąć wielu błędów logicznych. Ponadto stosowanie stałych zwiększa czytelność kodu, ponieważ zamiast magicznych liczb w kodzie, używamy nazw, które jasno określają, co dana wartość reprezentuje. Warto również pamiętać, że stałe mogą być używane w różnych kontekstach, w tym przy definiowaniu parametrów funkcji, co pozwala na lepszą organizację i zarządzanie kodem. Praktyka używania 'const' jest zgodna z dobrymi praktykami programowania, które zalecają minimalizowanie zmienności danych tam, gdzie to możliwe.

Pytanie 27

Przedstawiona jest tabela pracownicy, w której umieszczono rekordy widoczne obok. Jaką wartość zwróci wykonanie umieszczonej w ramce kwerendy SQL?

SELECT MAX(pensja) FROM pracownicy WHERE pensja < 3000;
idimienazwiskopensja
1AnnaKowalska3400
2MonikaNowak1300
3EwelinaNowakowska2600
4AnnaPrzybylska4600
5MariaKowal2200
6EwaNowacka5400
A. 2600
B. 1300
C. 5400
D. 2200
Kwerenda SQL SELECT MAX(pensja) FROM pracownicy WHERE pensja < 3000; służy do znalezienia maksymalnej wartości w kolumnie pensja z rekordów spełniających warunek pensja mniejsza niż 3000. Przeszukując tabelę pracownicy widzimy że wartości spełniające ten warunek to 1300 2600 i 2200. Najwyższą z tych wartości jest 2600 co czyni tę odpowiedź poprawną. Zrozumienie tego typu kwerend SQL jest kluczowe w pracy z bazami danych ponieważ pozwala na wyciąganie konkretnych informacji z dużych zbiorów danych. W praktyce takie zapytania mogą być używane do analizowania danych pracowniczych w firmach gdzie na przykład chcemy zidentyfikować pracowników z wynagrodzeniem poniżej określonego progu. Jest to zgodne z dobrymi praktykami w branży gdzie używa się agregacji danych do celów analitycznych. Zrozumienie jak działa funkcja MAX() w połączeniu z klauzulą WHERE umożliwia efektywne filtrowanie i przetwarzanie danych co jest niezbędne w wielu aplikacjach biznesowych.

Pytanie 28

Na ilustracji przedstawiono schemat rozmieszczenia elementów na stronie WWW, gdzie zazwyczaj umieszcza się stopkę strony?

Ilustracja do pytania
A. 4
B. 1
C. 2
D. 5
Odpowiedź 5 jest poprawna ponieważ w typowym układzie strony WWW stopka umieszczana jest na samym dole strony i obejmuje całą jej szerokość. Stopka to sekcja strony internetowej która zawiera istotne informacje takie jak prawa autorskie polityka prywatności linki do mediów społecznościowych oraz dane kontaktowe. Jest to zgodne z konwencjami projektowania stron internetowych gdzie stopka pełni rolę miejsca do umieszczania informacji które są ważne lecz niekoniecznie powinny być umieszczone na samej górze strony. W praktyce projektowania stron internetowych stosuje się różne technologie takie jak HTML CSS oraz frameworki jak Bootstrap które umożliwiają łatwe tworzenie responsywnych stopek. Stopka powinna być dostępna na każdej podstronie co ułatwia nawigację użytkownikom. Takie rozmieszczenie poprawia również SEO poprzez umieszczanie linków wewnętrznych. Dbałość o szczegóły w projektowaniu stopki zgodnie z dobrymi praktykami UX/UI przyczynia się do lepszej użyteczności strony oraz zadowolenia użytkowników co jest kluczowe w nowoczesnym web designie.

Pytanie 29

W języku PHPnie ma możliwości

A. zmienianie dynamiczne treści strony HTML w przeglądarce
B. obróbka informacji przechowywanych w bazie danych
C. tworzenie dynamicznej zawartości strony internetowej
D. przetwarzanie danych z formularzy

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź dotycząca zmieniania dynamicznej zawartości strony HTML w przeglądarce jest poprawna, ponieważ PHP jest językiem skryptowym działającym po stronie serwera. Oznacza to, że PHP nie jest w stanie bezpośrednio modyfikować zawartości strony HTML po jej załadowaniu w przeglądarce użytkownika. Zamiast tego, PHP generuje HTML, który następnie jest przesyłany do przeglądarki. Dynamiczna zawartość strony może być generowana na podstawie danych z bazy danych lub formularzy, ale wszelkie zmiany w HTML po stronie klienta wymagają użycia języków, które działają po stronie przeglądarki, takich jak JavaScript. Przykładem może być sytuacja, w której użytkownik wypełnia formularz, a dane są przetwarzane przez PHP, które zwraca zaktualizowaną stronę. W przypadku potrzeby dynamicznych zmian, JavaScript może być użyty do manipulacji DOM po załadowaniu strony. Warto również zauważyć, że zgodnie z dobrymi praktykami, powinno się oddzielać logikę serwerową (PHP) od logiki klienckiej (JavaScript), co przyczynia się do lepszej struktury kodu i ułatwia jego utrzymanie.

Pytanie 30

W celu sprawdzenia poprawności składni kodu CSS można skorzystać z

A. walidatora.
B. optymalizatora.
C. narzędzia debbuger.
D. konsolidatora.
Jeśli chcesz sprawdzić, czy Twój kod CSS jest poprawny, to najlepiej skorzystać z walidatora. To taki program lub strona, która podpowiada, czy wszystko jest zrobione zgodnie z zasadami ustalonymi przez W3C. Dzięki walidatorowi możesz szybko znaleźć błędy w swoim kodzie, na przykład brakuje średnika, są nieprawidłowe wartości lub coś jest nie tak z właściwościami. Używanie walidatorów jest ważne, bo nie tylko poprawia jakość kodu, ale też wpływa na to, jak szybko ładuje się strona i jak dobrze działa na różnych urządzeniach. Można znaleźć online narzędzia, jak W3C CSS Validation Service, gdzie wystarczy wkleić kod, a potem dostajesz raport z błędami. Generalnie, walidacja kodu CSS to dobry sposób na poprawienie jego jakości, a to z kolei może pomóc w lepszym SEO.

Pytanie 31

Podany fragment dokumentu HTML zawierający kod JavaScript sprawi, że po naciśnięciu przycisku

Ilustracja do pytania
A. obraz1.png zostanie zniknięty
B. obraz2.png zostanie wymieniony na obraz1.png
C. obraz2.png zostanie zniknięty
D. obraz1.png zostanie wymieniony na obraz2.png

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Załączony fragment kodu HTML pokazuje dwa elementy img oraz przycisk. Obrazek obraz2.png ma przypisany atrybut id o wartości id1. W kodzie JavaScript przypisanym do zdarzenia onclick przycisku wykorzystywana jest metoda document.getElementById('id1').style.display='none'. Ta metoda odwołuje się bezpośrednio do elementu o identyfikatorze id1 czyli obrazka obraz2.png i zmienia jego styl CSS display na none. W praktyce oznacza to że element ten zostanie ukryty na stronie po naciśnięciu przycisku. Praktyczne zastosowanie tej techniki to dynamiczne zarządzanie widocznością elementów na stronie bez konieczności jej przeładowania co poprawia doświadczenie użytkownika. Tego typu manipulacje DOM (Document Object Model) są podstawą interaktywnych aplikacji webowych i są powszechnie używane w nowoczesnym programowaniu JavaScript. Dobrym standardem jest jednak unikanie bezpośredniego pisania skryptów JavaScript w HTML co poprawia czytelność kodu i jego utrzymywalność

Pytanie 32

Jaką rolę pełni funkcja PHP o nazwie mysql_select_db()?

A. nawiązać połączenie bazy danych z serwerem SQL
B. określić bazę, z której będą pobierane dane
C. określić tabelę, z której będą pobierane informacje
D. pobrać dane z bazy danych na podstawie zapytania
Funkcja mysql_select_db() służy do określenia, która baza danych będzie używana w kontekście bieżącego połączenia z serwerem MySQL. W momencie, gdy nawiązuje się połączenie z serwerem za pomocą funkcji mysql_connect(), należy jasno zdefiniować, w której bazie danych będą wykonywane zapytania. Właściwe ustawienie aktualnej bazy danych jest kluczowe, ponieważ wszelkie operacje związane z pobieraniem lub modyfikowaniem danych będą odnosiły się tylko do tej wskazanej bazy. Przykładowo, jeżeli mamy bazę danych 'sklep' i chcemy pobrać dane o produktach, najpierw musimy wywołać mysql_select_db('sklep'). Dobrą praktyką jest również sprawdzenie, czy operacja wyboru bazy danych zakończyła się sukcesem, co można zrobić, sprawdzając zwracany wynik. Należy pamiętać, że funkcja mysql_select_db() jest częścią starzejącego się interfejsu MySQL, a w nowoczesnych aplikacjach rekomendowane są bardziej aktualne rozszerzenia, takie jak MySQLi lub PDO, które oferują lepsze możliwości obsługi błędów oraz bezpieczeństwo.

Pytanie 33

Jakie polecenie powinno być zastosowane, aby tekst TEKST był widoczny w kolorze czarnym w oknie przeglądarki internetowej?

A. <font color="#000000">TEKST</font>
B. <font color="czarny">TEKST</font>
C. <body color="black">TEKST</font>
D. <body bgcolor="black">TEKST</body>
Odpowiedzi zawierające <body color="black">TEKST</font> oraz <body bgcolor="black">TEKST</body> są błędne z kilku powodów. Przede wszystkim, atrybut color nie jest obsługiwany w tagu <body>, co oznacza, że nie wpłynie on na kolor tekstu w jego wnętrzu. Zamiast tego, właściwym podejściem byłoby stosowanie CSS do definiowania kolorów tła i tekstu. Dodatkowo, używanie <body bgcolor="black"> nie jest zalecane w nowoczesnym HTML5, gdyż powinno się stosować CSS do nadawania stylów. Używanie atrybutów w tagach HTML w sposób, który nie jest zgodny z aktualnymi standardami, może prowadzić do problemów z dostępnością i kompatybilnością między różnymi przeglądarkami. Z kolei zastosowanie <font color="czarny">TEKST</font> jest również niepoprawne, ponieważ kolor czarny powinien być określony w formacie heksadecymalnym lub RGB, a nie w wersji z nazwą koloru w języku polskim. Takie podejście ogranicza jego stosowalność w przeglądarkach, które mogą nie rozpoznać polskich nazw kolorów. Z tych powodów kluczowe jest stosowanie właściwych standardów i rekomendacji technicznych dla uzyskania spójnych i poprawnych wyników wizualnych w aplikacjach internetowych.

Pytanie 34

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

A. mysqli_query()
B. mysqli_set_charset()
C. mysqli_connect()
D. mysqli_fetch_assoc()
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 35

Jaki wynik przyjmie zmienna a po zakończeniu pętli w podanym fragmencie kodu PHP?

$i = 10; $a = 0;
while ($i)
{
    $a = $a + 2;
    $i--;
}
A. 10
B. 20
C. 0
D. 2

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W podanym fragmencie kodu PHP zmienna a przyjmuje wartość 20 po zakończeniu pętli. Dzieje się tak, ponieważ pętla while wykonuje się, dopóki zmienna i jest różna od zera. Na początku i jest równe 10, a podczas każdej iteracji pętli zmienna a jest zwiększana o 2, a zmienna i jest dekrementowana o 1. W efekcie pętla wykonuje się dokładnie 10 razy, a w każdej iteracji wartość zmiennej a zwiększa się o 2. W rezultacie po 10 iteracjach zmienna a osiąga wartość 20. Takie podejście do pętli while jest często stosowane w programowaniu, gdy chcemy wykonać określoną liczbę iteracji, dopóki warunek logiczny jest spełniony. Jest to przykład dobrej praktyki, gdy kod jest czytelny i łatwy do zrozumienia. W praktyce programowania PHP pętle tego typu są używane do różnych operacji, takich jak przetwarzanie danych, iterowanie po elementach tablic, czy wykonywanie złożonych obliczeń, co ilustruje zrozumiałe i efektywne zastosowanie tej konstrukcji w PHP.

Pytanie 36

Tabele Osoby oraz Adresy są ze sobą połączone relacją typu jeden do wielu. Jakie zapytanie SQL powinno być użyte, aby poprawnie wyświetlić nazwiska oraz odpowiadające im miasta?

Ilustracja do pytania
A. SELECT nazwisko, Miasto FROM Osoby JOIN Adresy ON Osoby.Adresy_id=Adresy.id
B. SELECT nazwisko, Miasto FROM Osoby, Adresy WHERE Osoby.id=Adresy.id
C. SELECT nazwisko, Miasto FROM Osoby, Adresy
D. SELECT nazwisko, Miasto FROM Osoby.Adresy_id=Adresy.id FROM Osoby, Adresy

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Użycie składni JOIN w zapytaniu SQL to naprawdę dobra decyzja, jeśli chodzi o pokazywanie powiązanych danych z różnych tabel w bazie danych. W odpowiedzi zastosowałeś INNER JOIN, co jest jednym z tych najpopularniejszych sposobów łączenia tabel, zwłaszcza gdy mamy wspólny klucz. W tym przypadku klucz obcy Adresy_id w tabeli Osoby łączy się z kluczem głównym id w tabeli Adresy, co pozwala na wyciągnięcie nazwisk z Osób oraz odpowiadających im miast z Adresów. W praktyce takie użycie JOIN jest zgodne z najlepszymi praktykami, bo ułatwia zarządzanie danymi i sprawia, że wszystko jest czytelniejsze. Gdy pracujesz nad bardziej skomplikowanymi systemami, umiejętność poprawnego łączenia tabel jest kluczowa. Umożliwia to utrzymanie porządku w danych i zmniejszenie ich powtarzalności przez normalizację. I naprawdę, takie zapytania są mega przydatne w analizie danych, generowaniu raportów czy w aplikacjach, które operują na dużych zbiorach, gdzie wydajność i przejrzystość kodu SQL są niezwykle ważne.

Pytanie 37

Wykonanie zapytania SQL: DELETE FROM mieszkania WHERE status=1; spowoduje usunięcie

A. rekordów, gdzie pole status ma wartość 1, z tabeli mieszkania
B. pola o nazwie status w tabeli mieszkania
C. tabel, w których pole status ma wartość 1, z bazy danych mieszkania
D. tabeli mieszkania w bazie danych
Użycie kwerendy SQL: DELETE FROM mieszkania WHERE status=1; jest poprawne, ponieważ polecenie DELETE ma na celu usunięcie rekordów z określonej tabeli, w tym przypadku z tabeli mieszkania. Klauzula WHERE filtruje te rekordy, które mają wartość pola status równą 1. To podejście jest zgodne z zasadami zarządzania danymi, które sugerują, że operacje usuwania powinny być przeprowadzane z użyciem odpowiednich filtrów, aby zminimalizować ryzyko przypadkowego usunięcia niezamierzonych danych. Na przykład, jeśli w tabeli mieszkania mamy 1000 rekordów, a tylko 150 z nich ma status równy 1, to po wykonaniu tej kwerendy usunięte zostaną dokładnie te 150 rekordów, a pozostałe pozostaną nienaruszone. Dobrą praktyką jest również tworzenie kopii zapasowych danych przed wykonaniem operacji usuwania, aby móc je przywrócić w razie potrzeby. Kwerendy DELETE są niezwykle przydatne w zarządzaniu bazami danych, zwłaszcza w sytuacjach, gdzie wymagana jest aktualizacja danych lub usunięcie nieaktualnych informacji.

Pytanie 38

Gdzie w dokumencie HTML powinien być umieszczony wewnętrzny arkusz stylów?

A. W obrębie znacznika, którego dotyczy styl
B. W sekcji nagłówkowej dokumentu
C. W sekcji treści strony
D. W skrypcie dołączonym do dokumentu
Wewnętrzny arkusz stylów należy umieścić w części nagłówkowej strony HTML, co oznacza, że powinien być zawarty w znaczniku <head>. Jest to zgodne z zaleceniami standardów W3C, które określają, że nagłówek powinien zawierać metadane oraz inne informacje dotyczące dokumentu. Umieszczając arkusz stylów w sekcji <head>, zapewniamy, że przeglądarka ma dostęp do stylów przed renderowaniem treści strony, co przyczynia się do lepszego doświadczenia użytkownika. Przykładowo, kod CSS umieszczony w <style> w <head> może wyglądać tak: <style> body { background-color: lightblue; } </style>. Taki wewnętrzny arkusz stylów pozwala na łatwe zarządzanie stylem pojedynczej strony bez potrzeby tworzenia osobnych plików CSS. Ponadto, umieszczając style w nagłówku, unikamy problemów z wydajnością, które mogłyby wystąpić, gdyby były one wstrzykiwane w treści strony. Warto również zauważyć, że umieszczanie arkuszy stylów w <head> jest standardową praktyką w tworzeniu responsywnych i semantycznych stron internetowych.

Pytanie 39

Jakie będą skutki wykonania podanego zapytania w tabeli?

ALTER TABLE nazwa1 ADD nazwa2 DOUBLE NOT NULL;
A. zmiana wartości kolumny nazwa2 na DOUBLE
B. dodanie kolumny nazwa2 typu zmiennoprzecinkowego
C. zmiana nazwy kolumny z nazwa1 na nazwa2
D. dodanie kolumny nazwa2 z wartością domyślną typu DOUBLE

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Pytanie dotyczy użycia polecenia SQL ALTER TABLE w celu modyfikacji struktury istniejącej tabeli. W przedstawionym zapytaniu ALTER TABLE nazwa1 ADD nazwa2 DOUBLE NOT NULL; widzimy, że użyto słowa kluczowego ADD co wskazuje na dodanie nowej kolumny do tabeli. Kolumna ta nazywa się nazwa2 i ma typ danych DOUBLE co oznacza, że będzie przechowywać wartości zmiennoprzecinkowe. Specyfikacja NOT NULL oznacza, że żadna wartość w tej kolumnie nie może być NULL co jest częstym wymogiem w bazach danych aby zapewnić spójność i prawidłowość danych. Dodawanie nowych kolumn do tabeli jest typową operacją w zarządzaniu bazami danych umożliwiającą rozbudowę ich struktury w celu spełnienia nowych wymagań biznesowych. Typ DOUBLE jest szczególnie użyteczny w przechowywaniu danych liczbowych wymagających dużej precyzji takich jak wartości finansowe czy pomiary naukowe. Ważne jest aby zawsze po dodaniu nowej kolumny dostosować aplikacje korzystające z bazy danych aby mogły poprawnie obsługiwać nowe dane co jest zgodne z najlepszymi praktykami w branży IT.

Pytanie 40

Do czego wykorzystywany jest program debugger?

A. do interpretacji kodu w wirtualnej maszynie Java
B. do przetwarzania kodu napisanego w języku wyższego poziomu na język maszynowy
C. do badania kodu źródłowego w celu wykrycia błędów składniowych
D. do analizy działającego programu w celu odnalezienia błędów
Debugger to narzędzie służące do analizy wykonywanego programu, które pozwala programistom identyfikować i lokalizować błędy w kodzie. Jego główną funkcją jest umożliwienie krokowego śledzenia działania programu, co pozwala na obserwację wartości zmiennych, a także na analizę przepływu kontrolnego. Przykładowo, programista może ustawić punkty przerwania (breakpoints), które zatrzymują wykonanie programu w określonym miejscu, co daje możliwość dokładnego zbadania stanu aplikacji. Debugger wspiera proces testowania i zapewnia, że program działa zgodnie z założeniami. W branży programistycznej standardem jest korzystanie z debuggingu w ramach cyklu życia oprogramowania, co pozwala na szybką identyfikację usterek oraz poprawę jakości kodu. Ponadto, popularne środowiska programistyczne, jak Visual Studio, Eclipse czy IntelliJ IDEA, oferują zaawansowane funkcje debugowania, które wspierają programistów w ich codziennej pracy.