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: 30 kwietnia 2026 23:03
  • Data zakończenia: 30 kwietnia 2026 23:03

Egzamin niezdany

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

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

Wskaź poprawną definicję funkcji w języku JavaScript.

A. new nazwa_funkcji(argumenty) {instrukcje;}
B. nazwa_funkcji(argumenty) {instrukcje;}
C. typ_funkcji nazwa_funkcji(argumenty) {instrukcje;}
D. function nazwa_funkcji(argumenty) {instrukcje;}

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna definicja funkcji w języku JavaScript to 'function nazwa_funkcji(argumenty) {instrukcje;}'. Kluczowe słowo 'function' wskazuje, że definiujemy nową funkcję, co jest standardową praktyką w programowaniu w JavaScript. Funkcja może przyjmować argumenty, które są zmiennymi przekazywanymi do niej podczas wywołania. Możemy zdefiniować dowolną liczbę argumentów, a ich typy nie są ściśle określone, co zapewnia dużą elastyczność. Wewnątrz nawiasów klamrowych {} umieszczamy instrukcje, które będą wykonane, gdy funkcja zostanie wywołana. Przykładem może być funkcja, która dodaje dwie liczby: 'function dodaj(a, b) { return a + b; }'. Możliwość definiowania funkcji pozwala na organizację kodu, ponowne wykorzystanie oraz modularność, a to wszystko jest zgodne z zasadami programowania obiektowego i funkcjonalnego, które są fundamentem JavaScript. Warto również zauważyć, że zgodnie z ECMAScript, standardem definiującym JavaScript, ta składnia jest właściwa i szeroko stosowana w praktyce programistycznej.

Pytanie 2

Który z przedstawionych obrazów ma zastosowany poniższy styl CSS?

img {
    padding: 5px;
    border: 1px solid grey;
    border-radius: 10px;
}
Ilustracja do pytania
A. A.
B. D.
C. B.
D. C.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Obraz A został sformatowany za pomocą stylu CSS, który określa podstawowe cechy estetyczne elementu graficznego. Pierwszym aspektem jest zastosowanie właściwości padding wynoszącej 5px, co oznacza, że wokół obrazu znajduje się wewnętrzny margines o szerokości 5 pikseli. To zapewnia przestrzeń między obrazem a jego ramką, zwiększając czytelność i estetykę wizualną. Następnie, użyto border o grubości 1px z kolorem solid grey. Ten cienki, szary obrys dodaje subtelny akcent, który pomaga wyróżnić obraz na tle strony. Wartość border-radius wynosi 10px, co dodaje zaokrąglone rogi, nadając nowoczesny wygląd. Takie zaokrąglenie jest często stosowane w nowoczesnym designie, aby nadać strony bardziej przyjazny i estetyczny wygląd. Stylizacja obrazów w ten sposób jest zgodna z zasadami responsywności i dostępności, co jest istotne w projektowaniu interfejsów użytkownika. Stosowanie takich technik pozwala na tworzenie spójnych i estetycznych stron internetowych, które są zgodne z obecnymi standardami UX i UI.

Pytanie 3

Wskaż styl CSS za pomocą którego został uzyskany przedstawiony efekt.

  • psy
  • koty
  • chomiki
  • świnki morskie
  • rybki
A. ul li:nth-child(odd) { background-color: DodgerBlue; }
B. ul li:active { background-color: DodgerBlue; }
C. ul li:nth-child(even) { background-color: DodgerBlue; }
D. ul li:hover { background-color: DodgerBlue; }

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Dokładnie tak, poprawna odpowiedź to 'ul li:nth-child(even) { background-color: DodgerBlue; }'. Użycie selektora :nth-child(even) pozwala na zastosowanie stylu CSS do każdego parzystego elementu listy, co można zaobserwować na załączonym obrazku - każdy drugi (parzysty) element ma niebieskie tło. Jest to praktyczne rozwiązanie stosowane m.in. w celu poprawy czytelności długich list danych, gdzie koloryzmowanie na przemian pozwala na łatwiejsze zlokalizowanie poszczególnych elementów. Pamiętaj, że CSS oferuje wiele innych pseudoklas pozwalających na zastosowanie różnych efektów w zależności od stanu lub położenia elementu na stronie. Przy wykorzystaniu pseudoklas CSS warto odwoływać się do standardów i dobrych praktyk branżowych, takich jak unikanie nadmiernego zagnieżdżania selektorów, co może utrudniać czytelność i utrzymanie kodu.

Pytanie 4

Czy możliwa jest przedstawiona transformacja obrazu rastrowego dzięki funkcji?

Ilustracja do pytania
A. barwienie
B. zmniejszenie liczby kolorów
C. ustawienia jasności i kontrastu
D. odcienie szarości

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Barwienie to proces edycji obrazu rastrowego, który polega na modyfikacji istniejących kolorów poprzez nałożenie nowego odcienia na całość lub część obrazu. Dzięki temu możemy uzyskać efekt jak na przedstawionym obrazie, gdzie oryginalne kolory zostały zastąpione jednolitą barwą. Barwienie jest powszechnie stosowane w grafice komputerowej do nadawania dramatyzmu lub zmiany nastroju obrazu, co jest szczególnie przydatne w fotografii artystycznej czy projektach reklamowych. Narzędzia takie jak Adobe Photoshop czy GIMP oferują funkcje barwienia, pozwalając artystom na twórcze eksperymenty z kolorami. Technika ta może być stosowana również w procesie tworzenia materiałów wizualnych w branży marketingowej, gdzie spójna kolorystyka jest kluczowa dla budowania rozpoznawalności marki. Ważne jest, aby pamiętać o zachowaniu naturalnego balansu i harmonii w barwach, co jest zgodne z zasadami dobrych praktyk w projektowaniu graficznym. Barwienie umożliwia również korektę kolorystyczną, co jest istotne w procesie przygotowania materiałów do druku, gdzie kolory muszą być dostosowane do specyfikacji technicznych drukarni.

Pytanie 5

Podczas projektowania formularza konieczne jest wstawienie kontrolki, która odnosi się do innej kontrolki w odrębnym formularzu. Taka operacja w bazie danych Access jest

A. niemożliwa w każdym trybie poza trybem projektowania
B. możliwa tylko wtedy, gdy są to dane numeryczne
C. niemożliwa
D. możliwa dzięki ustawieniu ścieżki do kontrolki w atrybucie "Źródło kontrolki"

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź jest poprawna, ponieważ w Microsoft Access można odwoływać się do kontrolek w innych formularzach poprzez ustawienie właściwości 'Źródło kontrolki'. Ta właściwość umożliwia wskazanie skąd ma pochodzić wartość, która ma być wyświetlana w danej kontrolce. Przykładowo, jeśli mamy formularz z danymi klientów, a chcemy w innym formularzu wyświetlić imię i nazwisko danego klienta, możemy użyć odpowiedniego odwołania do kontrolki w formularzu klientów. Ważne jest, aby ścieżka do kontrolki była poprawna, co oznacza, że musi być zgodna z nazwą formularza oraz nazwą kontrolki. Użycie właściwości 'Źródło kontrolki' jest zgodne z najlepszymi praktykami projektowania baz danych, ponieważ umożliwia elastyczne i dynamiczne łączenie danych. Zrozumienie tego procesu jest kluczowe dla efektywnego projektowania złożonych aplikacji bazodanowych z wieloma formularzami oraz relacjami między nimi.

Pytanie 6

Jakiego rodzaju relację uzyskuje się, łącząc ze sobą dwie tabele za pomocą kluczy głównych?

A. jeden do wielu
B. wiele do jednego
C. jeden do jednego
D. wiele do wielu

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'jeden do jednego' jest prawidłowa, ponieważ w relacjach baz danych, gdy łączymy dwie tabele za pomocą kluczy głównych, każdy rekord w jednej tabeli odpowiada dokładnie jednemu rekordowi w drugiej tabeli. Taki układ jest stosowany, gdy chcemy podzielić dane na różne tabele w celu zachowania ich normalizacji, eliminując redundancję. Na przykład, jeśli mamy tabelę 'Użytkownicy' i tabelę 'Profile', gdzie każdy użytkownik ma dokładnie jeden profil, to relacja między tymi tabelami będzie relacją jeden do jednego. Przy użyciu klucza głównego w tabeli 'Użytkownicy' i klucza obcego w tabeli 'Profile', możemy zapewnić, że każdy użytkownik ma unikalny profil. W praktyce, tego typu relacje są często wykorzystywane w projektowaniu systemów baz danych, aby ułatwić zarządzanie danymi oraz ich integralność, zgodnie z zasadami normalizacji i dobrymi praktykami projektowania baz danych.

Pytanie 7

Przedstawiony w ramce fragment kwerendy SQL ma za zadanie wybrać

SELECT COUNT(wartosc) FROM ...
A. liczbę wierszy.
B. sumę w kolumnie wartosc.
C. średnią w kolumnie wartosc.
D. liczbę kolumn.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawnie: wyrażenie SELECT COUNT(wartosc) ma za zadanie zwrócić liczbę wierszy, w których kolumna wartosc nie jest pusta (czyli nie ma wartości NULL). Funkcja agregująca COUNT() w SQL właśnie do tego służy – zlicza rekordy. W wersji COUNT(nazwa_kolumny) zliczane są tylko te wiersze, gdzie w tej kolumnie znajduje się jakaś konkretna wartość. To jest ważne rozróżnienie: COUNT(*) liczy wszystkie wiersze w tabeli lub wyniku kwerendy, natomiast COUNT(wartosc) pomija rekordy z NULL w tej kolumnie. Moim zdaniem to jedna z podstawowych rzeczy, które trzeba mieć „w ręku”, pracując z bazami danych. W praktyce używa się tego np. do sprawdzenia, ilu klientów podało numer telefonu, ilu pracowników ma przypisaną premię, ile zamówień ma ustawioną datę realizacji itd. Zamiast ręcznie przeglądać dane, odpalasz prostą kwerendę: SELECT COUNT(telefon) FROM klienci; i od razu wiesz, ile jest uzupełnionych pól. Dobre praktyki mówią też, żeby świadomie wybierać pomiędzy COUNT(*) a COUNT(kolumna), bo dają one różne wyniki przy brakach danych. W raportowaniu biznesowym to ma ogromne znaczenie, bo łatwo wyciągnąć złe wnioski, jeśli ktoś nie rozumie, co dokładnie liczy dana funkcja. W projektach komercyjnych COUNT() jest jedną z najczęściej używanych funkcji agregujących obok SUM(), AVG(), MIN() i MAX(), więc warto od razu nauczyć się jej poprawnej interpretacji i stosowania w połączeniu z klauzulą WHERE oraz GROUP BY, żeby liczyć wiersze spełniające konkretne warunki, np. ilu użytkowników aktywowało konto w danym miesiącu.

Pytanie 8

Standard kodowania ISO-8859-2 jest używany do poprawnego wyświetlania

A. symboli matematycznych
B. znaków zarezerwowanych dla języka opisu strony
C. polskich liter, takich jak: ś, ć, ń, ó, ą
D. znaków specjalnych dla języka kodu strony

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kodowanie w standardzie ISO-8859-2, znane również jako Latin-2, jest szczególnie istotne dla poprawnego wyświetlania znaków diakrytycznych, które są charakterystyczne dla języków słowiańskich, w tym polskiego. W standardzie tym zdefiniowane są znaki reprezentujące polskie litery takie jak: ś, ć, ń, ó, ą oraz inne znaki diakrytyczne. Przykładem zastosowania tego kodowania może być strona internetowa zawierająca treści w języku polskim, która wymaga użycia odpowiednich znaków w swoich nagłówkach, akapitach czy formularzach. Stosowanie ISO-8859-2 w HTML-u, np. poprzez deklarację w metatagach, zapewnia, że przeglądarki internetowe będą w stanie prawidłowo interpretować i wyświetlać te znaki, co zwiększa czytelność i dostępność treści dla użytkowników. W kontekście dobrych praktyk, warto zauważyć, że dla nowych projektów często zaleca się korzystanie z kodowania UTF-8, które obejmuje znaki ze wszystkich języków, jednak ISO-8859-2 nadal znajduje zastosowanie w wielu starszych systemach i aplikacjach, gdzie zachowanie zgodności z istniejącymi danymi jest kluczowe.

Pytanie 9

W języku JavaScript, aby uzyskać podciąg tekstu pomiędzy wskazanymi indeksami, należy skorzystać z metody

A. slice()
B. concat()
C. trim()
D. replace()

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Metoda slice() w JavaScript jest używana do wydzielania części napisu na podstawie podanych indeksów. Przyjmuje dwa argumenty: indeks początkowy oraz indeks końcowy, co pozwala na uzyskanie fragmentu tekstu w określonym zakresie. Na przykład, jeśli mamy napis 'JavaScript' i zastosujemy slice(0, 4), otrzymamy 'Java'. Metoda ta nie zmienia oryginalnego napisu, co jest zgodne z zasadą niemodyfikowalności w JavaScript. Dobrą praktyką jest również pamiętanie, że indeks końcowy jest wyłączny, co oznacza, że znak na tym indeksie nie jest wliczany do wynikowego napisu. Ponadto, slice() może przyjmować wartości ujemne, co pozwala na łatwe wydzielanie fragmentów z końca napisu, co jest szczególnie przydatne w dynamicznych aplikacjach webowych. Warto również wiedzieć, że slice() jest preferowane do używania nad innymi metodami, gdyż jest bardziej intuicyjna i wydajna w kontekście manipulacji łańcuchami znaków.

Pytanie 10

W CSS, aby ustalić nietypowe odległości między słowami, używa się właściwości

A. word-spacing
B. white-space
C. letter-space
D. line-spacing

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W języku CSS właściwość word-spacing jest używana do definiowania odstępu między wyrazami w elemencie tekstowym. Zwiększenie lub zmniejszenie odstępu między wyrazami może znacznie wpłynąć na czytelność i estetykę tekstu. Wartość tej właściwości można ustawić w jednostkach długości, takich jak piksele (px), em, rem lub procenty. Na przykład, zastosowanie word-spacing: 5px; w kodzie CSS spowoduje zwiększenie odstępu między wyrazami o 5 pikseli. Wartością domyślną tej właściwości jest 0, co oznacza, że odstępy są ustalane przez przeglądarkę na podstawie czcionki i innych parametrów tekstu. Użycie word-spacing może być szczególnie przydatne w przypadku projektowania stron internetowych, gdzie estetyka tekstu ma kluczowe znaczenie dla doświadczeń użytkownika. Dlatego, aby osiągnąć pożądany efekt wizualny, projektanci często manipulują odstępami między wyrazami w swoich stylach CSS, co jest zgodne z wytycznymi W3C dotyczącymi dostępności i czytelności treści na stronach internetowych.

Pytanie 11

Aby umieścić aplikację PHP w sieci, należy przesłać jej pliki źródłowe na serwer przy użyciu protokołu

A. NNTP
B. FTP
C. SMTP
D. HTTP

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
FTP, czyli File Transfer Protocol, to świetny wybór! Umożliwia przesyłanie plików między komputerami w sieci, co jest naprawdę ważne, gdy wgrywamy aplikację PHP na serwer. Bez FTP nawet nie wyobrażam sobie, jak byśmy mieli to zrobić. Dzięki temu protokołowi można nie tylko przesyłać pliki, ale też nimi zarządzać, np. usuwać czy przenosić je do innych folderów. Fajne jest to, że istnieją różne programy klienckie do FTP, takie jak FileZilla, które bardzo ułatwiają tę pracę – można tam po prostu przeciągać pliki. No i nie zapominajmy o bezpieczeństwie! FTP można skonfigurować do pracy w trybie szyfrowanym (SFTP), co sprawia, że nasze dane są lepiej chronione. Z mojego doświadczenia, warto też przyjrzeć się uprawnieniom dostępu na serwerze, bo to kluczowe, żeby nikt niepowołany nie miał do nich dostępu.

Pytanie 12

W JavaScript zapis a++; można przedstawić w inny sposób jako

A. a = a + 1
B. a << 1
C. a = a & 1
D. 1 += a

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'a = a + 1;' jest poprawna, ponieważ dokładnie odzwierciedla działanie operatora inkrementacji 'a++;'. Operator '++' w JavaScript zwiększa wartość zmiennej o 1. W przypadku użycia 'a = a + 1;', operacja ta jest explicite zapisana jako przypisanie aktualnej wartości 'a' powiększonej o 1. Taki zapis jest często stosowany w sytuacjach, gdy chcemy lepiej zrozumieć, co się dzieje w kodzie, szczególnie dla początkujących programistów. Przykładowo, jeśli mamy zmienną, która przechowuje liczbę, możemy użyć 'a = a + 1;' w pętli, aby zliczać ilość iteracji. Warto zauważyć, że użycie operatora '++' jest bardziej zwięzłe i często preferowane w profesjonalnym kodzie, jednak zrozumienie, jak działa to na poziomie podstawowym, jest kluczowe. Dobrą praktyką jest dbałość o przejrzystość kodu, zwłaszcza w zespołach, gdzie różne osoby mogą pracować nad tym samym projektem.

Pytanie 13

Po wykonaniu poniższego fragmentu kodu w języku C/C++, zmiennej o nazwie zmienna2 przypisany zostanie

int zmienna1 = 158;
int *zmienna2 = &zmienna1;
A. ta sama wartość, którą zawiera zmienna1, zostanie przypisana
B. adres zmiennej o nazwie zmienna1 zostanie przypisany
C. wartość przechowywana w zmienna1 zostanie przypisana jako zamieniona na łańcuch
D. liczba w kodzie binarnym, która odpowiada wartości przechowywanej w zmienna1, zostanie przypisana

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W przedstawionym kodzie zmiennej o nazwie zmienna2 przypisywany jest adres zmiennej zmienna1, co jest typowym działaniem przy pracy z wskaźnikami w języku C/C++. Wskaźniki są zmiennymi, które przechowują adresy innych zmiennych. W przypadku użycia operatora & przed zmienną zmienna1, otrzymujemy jej adres w pamięci. Przykładowo, jeśli chcemy przekazać zmienną do funkcji, ale nie chcemy kopiować jej wartości, możemy użyć wskaźników, co jest wydajniejsze, zwłaszcza w przypadku dużych struktur czy obiektów. Pomaga to także w implementacji złożonych struktur danych, takich jak listy, drzewa czy grafy. Znajomość wskaźników jest kluczowa dla programistów w C/C++, jednocześnie umożliwiając optymalizację kodu oraz efektywne zarządzanie pamięcią, co jest zgodne z najlepszymi praktykami programowania.

Pytanie 14

Efekt przedstawiony w filmie powinien być zdefiniowany w selektorze

A. tr:active { background-color: Pink; }
B. tr:hover { background-color: Pink; }
C. tr { background-color: Pink; }
D. td, th { background-color: Pink; }

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawny selektor to tr:hover { background-color: Pink; }, bo dokładnie opisuje sytuację pokazaną na filmie: efekt pojawia się dopiero po najechaniu kursorem na cały wiersz tabeli. Pseudo-klasa :hover w CSS służy właśnie do definiowania stylów w momencie, gdy użytkownik „najeżdża” myszką na dany element. Jeśli więc chcemy, żeby podświetlał się cały rząd tabeli, logiczne i zgodne z dobrymi praktykami jest przypięcie efektu do znacznika tr, a nie do pojedynczych komórek. W praktyce taki zapis stosuje się bardzo często w interfejsach webowych: w panelach administracyjnych, listach zamówień, tabelach z uczniami, produktami, logami systemowymi itd. Dzięki temu użytkownik łatwiej śledzi, który wiersz właśnie ogląda. To niby detal, ale z punktu widzenia UX robi sporą różnicę. Z mojego doświadczenia to jeden z tych prostych trików CSS, które od razu poprawiają „odczuwalną” jakość strony. Ważne jest też to, że :hover jest częścią standardu CSS (opisane m.in. w specyfikacji CSS Selectors Level 3/4) i działa w praktycznie wszystkich współczesnych przeglądarkach. Nie trzeba do tego żadnego JavaScriptu, żadnych skomplikowanych skryptów – czysty CSS. Dobrą praktyką jest również używanie bardziej stonowanych kolorów niż Pink w prawdziwych projektach, np. #f5f5f5 albo lekki odcień niebieskiego, tak żeby kontrast był czytelny i nie męczył wzroku. Warto też pamiętać, że podobny mechanizm możesz zastosować na innych elementach: np. a:hover dla linków, button:hover dla przycisków czy nawet div:hover dla całych kafelków w layoutach. Kluczowe jest to, żeby pseudo-klasa :hover była przypięta dokładnie do tego elementu, który ma reagować na interakcję użytkownika.

Pytanie 15

Jak wykonanie zapytania SQL przedstawionego poniżej wpłynie na tabelę pracownicy?

ALTER TABLE pracownicy MODIFY plec char(9);
A. Utworzy kolumnę plec o typie znakowym o zmiennej długości 9.
B. Zmieni typ danych kolumny plec na znakowy o zmiennej długości 9.
C. Zmieni typ danych kolumny plec na znakowy o stałej długości 9.
D. Utworzy kolumnę plec o typie znakowym o stałej długości 9.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź jest poprawna, ponieważ polecenie ALTER TABLE zmienia istniejącą kolumnę w tabeli pracownicy. W szczególności, polecenie MODIFY plec char(9) modyfikuje typ danych kolumny plec na znakowy o stałej długości 9. Oznacza to, że każda wartość przechowywana w tej kolumnie będzie miała dokładnie 9 znaków (wypełnionych np. spacjami, jeśli wartość będzie krótsza). W praktyce zapewnia to jednolitą długość dla przechowywanych danych, co może być korzystne w przypadku, gdy wymagane jest zachowanie spójności długości, na przykład przy przechowywaniu kodów pocztowych lub identyfikatorów. Standardy projektowania baz danych zalecają używanie odpowiednich typów danych, aby zminimalizować przestrzeń dyskową oraz przyspieszyć operacje na danych. Warto zauważyć, że w przypadku kolumny char(9) nie można wprowadzić wartości dłuższej niż 9 znaków, co zapobiega niezgodnościom danych.

Pytanie 16

Plik cookie utworzony przedstawionym poleceniem PHP:

setcookie("osoba", "Anna Kowalska", time() + (3600 * 24));
A. będzie przechowywany na serwerze przez jedną dobę.
B. będzie przechowywany na serwerze przez jedną godzinę.
C. wygaśnie po jednej dobie od jego utworzenia.
D. wygaśnie po jednej godzinie od jego utworzenia.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W tym poleceniu PHP funkcja setcookie() dostaje jako trzeci parametr czas wygaśnięcia ciasteczka w postaci znacznika czasu UNIX (timestamp). Wyrażenie time() + (3600 * 24) oznacza: aktualny czas serwera (time()) powiększony o 3600 sekund (czyli jedną godzinę) razy 24, co razem daje 86400 sekund, czyli dokładnie jedną dobę. Przeglądarka zapisuje to jako tzw. cookie trwałe (persistent cookie) i będzie je przechowywać do momentu osiągnięcia tego czasu. Po upływie doby od utworzenia, przeglądarka automatycznie przestanie wysyłać to cookie w nagłówkach HTTP do serwera. To jest ważne: cookie jest przechowywane po stronie klienta, czyli w przeglądarce użytkownika, a nie na serwerze. Serwer tylko wysyła nagłówek Set-Cookie w odpowiedzi HTTP. W praktyce takie ustawienie przydaje się np. do zapamiętania imienia użytkownika, preferencji językowych, koszyka w prostym sklepie albo ustawień wyglądu strony na krótki czas, np. na jedną dobę. Moim zdaniem warto zapamiętać, że brak trzeciego parametru w setcookie() oznacza cookie sesyjne (kasowane po zamknięciu przeglądarki), a podanie konkretnego timestampu tworzy cookie, które ma określoną datę wygaśnięcia. Dobrą praktyką jest zawsze świadomie dobierać czas życia ciasteczek: dane wrażliwe powinny mieć raczej krótki czas ważności, a informacje czysto techniczne lub preferencje interfejsu mogą być przechowywane dłużej. W nowoczesnych aplikacjach webowych łączy się to też z innymi atrybutami cookie (Secure, HttpOnly, SameSite), ale sam mechanizm czasu wygaśnięcia pozostaje taki sam – jest to po prostu liczba sekund od epoki UNIX, kiedy cookie przestanie być uznawane za ważne.

Pytanie 17

Jakie dane zostaną wyświetlone po wykonaniu poniższych poleceń? bool gotowe=true; cout<<gotowe;

A. nie
B. 0
C. 1
D. tak

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W wyniku wykonania przedstawionych instrukcji, zostanie wypisane "1". Wynika to z faktu, że zmienna typu bool w języku C++ jest reprezentowana jako liczba całkowita, gdzie wartość "true" jest interpretowana jako "1", a "false" jako "0". Kiedy wykonujemy instrukcję z użyciem cout, która jest standardowym strumieniem wyjściowym w C++, zmienna gotowe, która przechowuje wartość true, zostanie przekonwertowana na jej reprezentację liczbową, co skutkuje wypisaniem "1" na ekran. W praktyce, zrozumienie konwersji typów danych w C++ jest kluczowe dla programowania, zwłaszcza w kontekście obliczeń logicznych i kontroli przepływu programu. Standardy C++ określają zasady konwersji typów, co wpływa na optymalizację kodu oraz unikanie błędów w logice programowania, dlatego wiedza na ten temat jest niezbędna dla każdego programisty.

Pytanie 18

W przedstawionym kodzie HTML zastosowany styl CSS jest stylem ```

To jest przykładowy akapit.

```
A. zewnętrznym
B. dynamicznym
C. lokalnym
D. nagłówkowym

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Styl CSS zastosowany w podanym kodzie HTML to styl lokalny, ponieważ jest zdefiniowany bezpośrednio w tagu HTML za pomocą atrybutu 'style'. Taki sposób definiowania stylów pozwala na przypisanie unikalnych stylów do konkretnego elementu na stronie, co jest szczególnie przydatne, gdy chcemy szybko zmienić wygląd jednego elementu bez wpływania na inne. Przykładem lokalnego stylu jest ustawienie koloru tekstu akapitu na czerwony, co można zaobserwować w atrybucie 'style="color:red;"'. Warto zauważyć, że lokalne style mają wyższy priorytet od stylów zewnętrznych i wewnętrznych, co oznacza, że jeśli ten sam element ma przypisany styl zewnętrzny, lokalny styl go nadpisze. W kontekście standardów CSS, lokalne style są zgodne z zasadami kaskadowości, która określa, jak łączyć różne źródła stylów. Z perspektywy użyteczności, chociaż lokalne style mogą być wygodne, ich nadmierne stosowanie prowadzi do trudności w utrzymaniu kodu, dlatego zaleca się ich używanie w ograniczonym zakresie.

Pytanie 19

Zmienna należąca do typu integer lub int jest w stanie przechować

A. ciąg znaków
B. liczbę rzeczywistą
C. liczbę całkowitą
D. znak

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Typ zmiennych integer, czyli int, jest super ważny w programowaniu, bo służy do przechowywania liczb całkowitych. To takie liczby, co nie mają części dziesiętnych. Jest sporo języków programowania, które go używają, na przykład C++, Java czy Python. Głównie dzięki nim możemy efektywnie przechowywać i operować na tych liczbach. Wartości tego typu mogą być różne w zależności od systemu, na przykład w 32-bitowym typ int przechowuje liczby od -2 147 483 648 do 2 147 483 647. Używamy liczb całkowitych w różnych algorytmach, zwłaszcza tam, gdzie liczy się precyzja, jak w zliczaniu elementów albo w operacjach matematycznych. W standardzie C99 mamy różne typy całkowite, co pomaga w dokładnym określeniu, co potrzebujemy. Moim zdaniem, ogarnięcie typu integer to podstawa dla każdego, kto chce coś programować, bo na tym buduje się operacje matematyczne i logiczne.

Pytanie 20

Celem testów wydajnościowych jest ocena

A. zdolności programu do funkcjonowania w sytuacjach, gdy sprzęt działa niepoprawnie
B. stopnia, w jakim system lub moduł spełnia wymagania dotyczące wydajności
C. ciągu zdarzeń, w którym prawdopodobieństwo danego zdarzenia zależy tylko od wyniku zdarzenia wcześniejszego
D. zdolności programu do funkcjonowania w sytuacjach, gdy system działa niepoprawnie

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Testy wydajnościowe są kluczowym elementem procesu zapewnienia jakości oprogramowania, mającym na celu ocenę zdolności systemu lub modułu do spełnienia określonych wymagań wydajnościowych. Ich głównym celem jest zmierzenie, jak system radzi sobie w warunkach obciążenia, a także w różnych scenariuszach użytkowania. W ramach testów wydajnościowych analizuje się takie parametry jak czas reakcji, przepustowość oraz zasoby zużywane przez aplikację. Praktycznym przykładem może być testowanie aplikacji internetowej w warunkach, gdy korzysta z niej wielu użytkowników jednocześnie, co pozwala ocenić, jak skaluje się system. W kontekście standardów, organizacje często odnoszą się do metodologii takich jak Performance Testing Framework, a także do narzędzi jak JMeter czy LoadRunner, które umożliwiają automatyzację procesu testowania. Testy te pomagają w identyfikacji wąskich gardeł, które mogą wpływać na wydajność, co przekłada się na lepsze doświadczenia użytkowników oraz minimalizację kosztów związanych z utrzymaniem systemu.

Pytanie 21

Jak można utworzyć kopię zapasową bazy danych MySQL?

A. modyfikowaniem danych
B. eksportowaniem bazy
C. agregowaniem danych
D. importowaniem bazy

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Eksport bazy danych MySQL to proces, który pozwala na tworzenie kopii zapasowych danych znajdujących się w bazie. Narzędzie do eksportu, takie jak mysqldump, umożliwia nie tylko zapisanie danych w formacie SQL, ale także w innych formatach, takich jak CSV czy JSON. Eksport jest kluczowy w przypadku migracji danych pomiędzy różnymi środowiskami baz danych lub w sytuacji, gdy zachodzi potrzeba odzyskania danych po awarii. Proces ten można zautomatyzować, korzystając z harmonogramów zadań (cron), co zapewnia regularne tworzenie kopii zapasowych. Zgodnie z najlepszymi praktykami, zaleca się, aby eksportować bazy danych regularnie oraz przechowywać kopie zapasowe w bezpiecznych lokalizacjach, aby zminimalizować ryzyko utraty danych. Standardy takie jak ISO 27001 podkreślają znaczenie odpowiednich procedur zarządzania danymi, w tym tworzenia kopii zapasowych, co czyni eksportu kluczowym elementem strategii ochrony danych w organizacjach.

Pytanie 22

Jakie zapytanie należy zastosować, aby pokazać tylko imię, nazwisko oraz ulicę wszystkich mieszkańców?

Ilustracja do pytania
A. SELECT * FROM Mieszkancy, Adresy ON Mieszkancy.id = Adresy.id
B. SELECT imie, nazwisko, ulica FROM Mieszkancy, Adresy ON Mieszkancy.Adresy_id = Adresy.id
C. SELECT * FROM Mieszkancy JOIN Adresy ON Adresy.id = Mieszkancy.Adresy.id
D. SELECT imie, nazwisko, ulica FROM Mieszkancy JOIN Adresy ON Mieszkancy.Adresy_id = Adresy.id

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowa odpowiedź wykorzystuje funkcję JOIN, aby połączyć tabele Mieszkancy i Adresy na podstawie wspólnego klucza, czyli Adresy_id z tabeli Mieszkancy i id z tabeli Adresy. Takie podejście jest zgodne z dobrymi praktykami baz danych, ponieważ zapewnia, że tylko powiązane wiersze są zwracane w wyniku. W zapytaniu SELECT imie, nazwisko, ulica FROM Mieszkancy JOIN Adresy ON Mieszkancy.Adresy_id = Adresy.id jasno określamy, że chcemy wyciągnąć tylko kolumny imie, nazwisko oraz ulica, co minimalizuje ilość przetwarzanych danych, a co za tym idzie, zwiększa wydajność. W rzeczywistych scenariuszach, takie zapytania są kluczowe w aplikacjach, gdzie konieczne jest uzyskanie pełnych danych dotyczących mieszkańców i ich adresów bez zbędnych informacji. Dobre praktyki SQL sugerują, aby zawsze wybierać tylko te kolumny, które są potrzebne, co pomaga w optymalizacji zasobów serwera i poprawie szybkości przetwarzania zapytań. JOIN jest preferowany nad starym stylem, jakim jest użycie przecinków i warunku w WHERE, z powodu lepszej czytelności i mniejszej podatności na błędy, co czyni kod bardziej zrozumiałym i łatwiejszym do utrzymania.

Pytanie 23

Którego znacznika NIE NALEŻY umieszczać w nagłówku dokumentu HTML?

A. <link>
B. <h2>
C. <meta>
D. <title>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź <h2> jest trafna, bo ten znacznik jest właśnie do nagłówków w HTML. Powinien być używany w sekcji <body>, nie w <head>. Jak dobrze wiesz, nagłówki, czyli <h1> do <h6>, mają spore znaczenie w organizacji tekstu i hierarchii, co wpływa później na SEO i dostępność strony. Dzięki <h2> możesz dodać podtytuł, co sprawia, że tekst jest bardziej przejrzysty i łatwiejszy do zrozumienia. Stosowanie nagłówków w odpowiedni sposób to ważna zasada, żeby dokument miał sens i był logicznie poukładany. Warto też wiedzieć, że znaczniki takie jak <link>, <meta> i <title> są super ważne dla strony, ale pełnią inne funkcje niż nagłówki. Więc ogólnie rzecz biorąc, fajnie, że to rozumiesz!

Pytanie 24

Działaniem podanego kodu PHP będzie wypełnienie tablicy

$tab = array();
for ($i = 0; $i < 10; $i++) {
    $tab[$i] = rand(-100, 100);
}
foreach ($tab as $x) {
    if ($x < 0) {
        echo "$x ";
    }
}
A. 10 losowymi wartościami, a następnie wypisanie wartości ujemnych
B. kolejnymi liczbami od -100 do 100 i wypisanie wartości ujemnych
C. kolejnymi liczbami od 0 do 9 i ich wypisanie
D. 100 losowymi wartościami, a następnie wypisanie wartości dodatnich

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Przedstawiony kod PHP zawiera błąd składniowy oraz logiczny, jednak jego zamysł zakłada stworzenie tablicy, której elementy są losowymi liczbami całkowitymi z przedziału od -100 do 100, a następnie wypisanie tych, które są mniejsze od zera. W pierwszej linii kodu powinno być użyte 'array()' zamiast 'array', a w funkcji 'rand' powinny być nawiasy okrągłe dla argumentów, co daje 'rand(-100, 100)'. W pętli for, która iteruje dziesięć razy, wartości są przypisywane do tablicy. W drugiej części, w pętli foreach, sprawdzane są liczby i wypisywane są tylko te, które są ujemne, co oznacza, że wynik może zawierać jedynie wartości poniżej zera. Dlatego poprawna odpowiedź koncentruje się na tym, że tablica jest wypełniana losowymi liczbami całkowitymi, a następnie wypisywane są jedynie liczby ujemne, co jest kluczowym aspektem działania kodu. Przykład zastosowania funkcji rand w kontekście generowania losowych danych pokazuje, jak można wykorzystać tę funkcjonalność w praktycznych aplikacjach, takich jak gra losowa czy analiza danych.

Pytanie 25

Który z typów formatów oferuje największą kompresję pliku dźwiękowego?

A. PCM
B. MP3
C. WAV
D. CD-Audio

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Format MP3 jest algorytmem kompresji stratnej, który umożliwia znaczną redukcję rozmiaru plików dźwiękowych przy zachowaniu akceptowalnej jakości dźwięku. W przeciwieństwie do formatów takich jak WAV, PCM czy CD-Audio, które są formatami bezstratnymi, MP3 wykorzystuje techniki psychoakustyczne do eliminacji dźwięków, które są mniej słyszalne dla ludzkiego ucha. Dzięki temu, pliki MP3 mogą być nawet dziesięciokrotnie mniejsze od swoich odpowiedników bezstratnych, co czyni je idealnymi do zastosowań w streamingach, pobierania muzyki oraz na urządzenia mobilne. Użytkownicy mogą z łatwością przechowywać większe ilości muzyki na swoich urządzeniach, co wpływa na komfort korzystania z technologii audio. Warto również zaznaczyć, że standard MP3 stał się de facto normą w branży muzycznej, co potwierdzają liczne platformy dystrybucji muzyki, które preferują ten format. Dobrą praktyką jest dostosowywanie bitrate'u przy kompresji do potrzeb użytkownika, aby równoważyć rozmiar pliku z jakością audio.

Pytanie 26

Wynikiem działania poniższej pętli for w przedstawionym kodzie PHP jest wyświetlenie liczb:

<?php
   for($i=5;$i>1;$i-=2)
       echo ($i%2)." ";
?>
A. 1 0 1
B. 1 1
C. 1 0
D. 1 0 1 0

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to 1 1, ponieważ analizując przedstawioną pętlę for, zaczynamy od zmiennej $i, która ma wartość 5. Pętla będzie działać tak długo, jak wartość $i jest większa od 1. W każdym kroku $i jest zmniejszane o 2, co oznacza, że w kolejnych iteracjach przyjmuje wartości 5, 3, a następnie 1. Wartości te są poddawane operacji modulo 2. Operacja modulo zwraca resztę z dzielenia, która dla liczb nieparzystych (5 i 3) wynosi 1 oraz dla liczby parzystej (0) wynosi 0. Zatem, w pierwszej iteracji, $i = 5, 5 % 2 = 1, a w drugiej iteracji, $i = 3, 3 % 2 = 1. Ostatecznie, pętla nie wykonuje się, gdy $i = 1, ponieważ warunek $i > 1 nie jest już spełniony. W rezultacie, poprawnym wynikiem działania tego fragmentu kodu jest wyświetlenie dwóch wartości 1. Przykład zastosowania takiej konstrukcji można znaleźć w sytuacjach, w których chcemy przetworzyć kolekcję liczb i wyodrębnić ich parzystość lub nieparzystość, co jest powszechną operacją w programowaniu.

Pytanie 27

Rozmiary ekranu w formacie 16:9 (zakładając, że piksel jest kwadratem) można osiągnąć przy rozdzielczości

A. 2560 na 2048 pikseli
B. 800 na 480 pikseli
C. 320 na 240 pikseli
D. 1366 na 768 pikseli

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 1366 na 768 pikseli jest poprawna, ponieważ proporcja szerokości do wysokości wynosi dokładnie 16:9. Aby to obliczyć, dzielimy szerokość przez wysokość: 1366 / 768 = 1,78, co jest bliskie wartości 1,77 (16:9). Proporcje 16:9 stały się standardem w telewizji wysokiej rozdzielczości oraz w produkcji wideo, co oznacza, że są szeroko stosowane w przemysłach związanych z mediami i technologią. Przykładem zastosowania tej rozdzielczości może być wyświetlanie filmów na nowoczesnych telewizorach, gdzie forma obrazu 16:9 pozwala na pełne wykorzystanie ekranu bez czarnych pasków po bokach. Stosując to w projektach multimedialnych, warto zawsze dążyć do zgodności z tymi standardami, aby zapewnić optymalne wrażenia wizualne dla użytkowników. Zrozumienie tych proporcji jest kluczowe dla profesjonalistów zajmujących się grafiką, filmem i projektowaniem UX/UI.

Pytanie 28

Wskaź komentarz, który zajmuje wiele linii, w języku PHP?

A. #
B. / /
C. /* */
D. <!-- -->

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Komentarze wieloliniowe w języku PHP są definiowane za pomocą znaków '/*' na początku i '*/' na końcu bloku tekstu, co pozwala na umieszczanie komentarzy obejmujących wiele linii. Tego rodzaju komentarze są niezwykle przydatne w sytuacjach, gdy chcemy opisać bardziej złożone fragmenty kodu, jak również w celu wyłączenia większych sekcji kodu podczas debugowania. Komentarze wieloliniowe są zgodne ze standardem PHP, co czyni je preferowanym rozwiązaniem w wielu projektach programistycznych. Przykład użycia: /* To jest komentarz komentarz wieloliniowy w PHP */. W odróżnieniu od komentarzy jedno-liniowych, które są ograniczone do jednej linii (używając // lub #), komentarze wieloliniowe umożliwiają umieszczanie dłuższych opisów. Ważne jest, aby używać komentarzy z umiarem, aby kod pozostał czytelny i zrozumiały dla innych programistów oraz dla przyszłych wersji projektu.

Pytanie 29

W języku SQL wykonano przedstawione poniżej polecenia GRANT. Kto będzie miał prawo do przeglądania danych oraz ich zmiany?

GRANT ALL ON firmy TO 'adam'@'localhost';
GRANT ALTER, CREATE, DROP ON firmy TO 'anna'@localhost;
GRANT SELECT, INSERT, UPDATE ON firmy TO 'tomasz'@'localhost';
A. Anna i Tomasz
B. Tomasz i Adam
C. Adam i Anna
D. Jedynie Tomasz

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'Tomasz i Adam' jest poprawna, ponieważ obaj użytkownicy mają przypisane odpowiednie uprawnienia do przeglądania oraz modyfikacji danych w bazie 'firmy'. Adam otrzymał pełne uprawnienia, co oznacza, że może przeglądać (SELECT) oraz modyfikować (INSERT, UPDATE, DELETE) dane, a także zmieniać strukturę tabel (ALTER, CREATE, DROP). Tomasz, z kolei, ma przydzielone szczegółowe uprawnienia do przeglądania danych (SELECT) oraz ich modyfikacji (INSERT, UPDATE). W praktyce, przydzielanie uprawnień w bazach danych odbywa się zgodnie z zasadą minimalnych uprawnień, co oznacza, że każdy użytkownik powinien mieć tylko te uprawnienia, które są mu niezbędne do realizacji przydzielonych zadań. Dobrą praktyką jest regularna weryfikacja przydzielonych uprawnień oraz ich dostosowywanie do zmieniających się potrzeb organizacji.

Pytanie 30

Ile maksymalnie znaczników <td> może być zastosowanych w tabeli, która ma trzy kolumny oraz trzy wiersze, nie zawierając przy tym złączeń komórek i wiersza nagłówkowego?

A. 3
B. 12
C. 9
D. 6

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 9 jest prawidłowa, ponieważ w tabeli o trzech kolumnach i trzech wierszach, gdzie nie ma złączeń komórek ani wiersza nagłówkowego, maksymalna liczba znaczników <td> wynosi 9. Każda kolumna w każdym wierszu może być wypełniona osobnym znacznikiem <td>. Tabela składająca się z 3 wierszy i 3 kolumn daje w sumie 3 x 3 = 9 komórek, które są reprezentowane przez znaczniki <td>. Przykładową strukturę HTML takiej tabeli można przedstawić następująco: <table><tr><td>1</td><td>2</td><td>3</td></tr><tr><td>4</td><td>5</td><td>6</td></tr><tr><td>7</td><td>8</td><td>9</td></tr></table>. Warto również zauważyć, że zgodnie z zaleceniami W3C, użycie odpowiednich znaczników w tabelach jest kluczowe dla zapewnienia właściwej dostępności i semantyki dokumentu HTML, co jest zgodne z dobrymi praktykami tworzenia stron internetowych.

Pytanie 31

Dodanie ograniczenia klucza obcego w taki sposób, aby kolumna Klasy_id z tabeli Uczniowie była powiązana z kolumną id w tabeli Klasy zostanie wykonane przy użyciu polecenia

Ilustracja do pytania
A. ALTER TABLE Uczniowie ADD CONSTRAINT FKKlasy FOREIGN KEY(Klasy_id) REFERENCES Klasy(id);
B. ALTER TABLE Uczniowie DROP FOREIGN KEY FKKlasy FOREIGN KEY(Klasy_id) REFERENCES Klasy(id);
C. ALTER TABLE Uczniowie DROP CONSTRAINT FKKlasy FOREIGN KEY(Klasy_id) REFERENCES Klasy(id);
D. ALTER TABLE Uczniowie ADD FOREIGN KEY FKKlasy FOREIGN KEY(Klasy_id) REFERENCES Klasy(id);

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawnie wskazana składnia polecenia `ALTER TABLE Uczniowie ADD CONSTRAINT FKKlasy FOREIGN KEY(Klasy_id) REFERENCES Klasy(id);` dokładnie odpowiada temu, co chcemy osiągnąć: dodać ograniczenie klucza obcego do już istniejącej tabeli. W SQL (np. w standardowym podejściu stosowanym w SQL Server, Oracle, wielu innych systemach) dodawanie klucza obcego odbywa się właśnie przez `ALTER TABLE ... ADD CONSTRAINT ... FOREIGN KEY ... REFERENCES ...`. Najpierw wskazujemy modyfikowaną tabelę (`Uczniowie`), potem nazwę nowego ograniczenia (`FKKlasy`), następnie kolumnę w tabeli podrzędnej (`Klasy_id`), a na końcu tabelę oraz kolumnę, do której się odwołujemy (`Klasy(id)`). Dzięki temu silnik bazy danych wie, że każda wartość w `Uczniowie.Klasy_id` musi mieć odpowiadający rekord w `Klasy.id`. To jest właśnie istota referencyjnej integralności danych. W praktyce takie powiązanie uniemożliwia np. dopisanie ucznia do nieistniejącej klasy albo usunięcie klasy, do której nadal przypisani są uczniowie (chyba że jawnie zdefiniujemy `ON DELETE CASCADE` czy inne zachowanie). Moim zdaniem warto też zwracać uwagę na nazewnictwo: prefiks `FK` w nazwie ograniczenia (`FKKlasy`) to dobra praktyka, bo od razu widać, że to klucz obcy, a nie np. unikalny indeks. W większych projektach przyjęcie spójnej konwencji, typu `FK_Uczniowie_Klasy`, bardzo ułatwia debugowanie błędów i analizę schematu. W codziennej pracy z bazami danych takie polecenie wykorzystuje się często po wczytaniu danych testowych albo po przebudowie tabel, gdy chcemy najpierw stworzyć strukturę bez ograniczeń, a potem krok po kroku dokładać klucze główne i obce. Warto też pamiętać, że przed dodaniem klucza obcego kolumna `Klasy_id` powinna mieć ten sam lub kompatybilny typ co `Klasy.id` (np. oba `INT`) i nie może zawierać wartości, które nie istnieją w tabeli `Klasy`, bo wtedy polecenie zakończy się błędem i klucz obcy nie zostanie utworzony.

Pytanie 32

W formularzu dane z pola input o typie number zostały przypisane do zmiennej a, a następnie przetwarzane w skrypcie JavaScript w następujący sposób:

var x = parseFloat(a);
Jaki typ będzie miała zmienna x?
A. liczbowego, całkowitego
B. napisowego
C. zmiennoprzecinkowego
D. NaN

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zmienna x będzie typu zmiennoprzecinkowego, ponieważ funkcja parseFloat() konwertuje wartość przekazaną jej jako argument na liczbę zmiennoprzecinkową. W przypadku, gdy zmienna a zawiera poprawną reprezentację liczby, np. '10.5' lub '3.14', parseFloat() zwróci odpowiednią wartość zmiennoprzecinkową. Dobrą praktyką jest zapewnienie, że wartość w a jest odpowiednio walidowana przed konwersją, aby uniknąć błędów i niepożądanych wyników. Zmiennoprzecinkowe dane mogą być szczególnie użyteczne w aplikacjach finansowych, graficznych czy inżynieryjnych, gdzie precyzyjne obliczenia są kluczowe. Ponadto, JavaScript automatycznie przekształca liczby całkowite do postaci zmiennoprzecinkowej, więc nawet jeśli a zawiera liczbę całkowitą, wynik w zmiennej x również będzie typem zmiennoprzecinkowym. Znajomość tego zachowania jest istotna dla programistów, aby skutecznie obsługiwać różnorodne operacje numeryczne.

Pytanie 33

Metainformacja “Description" zawarta w pliku źródłowym HTML powinna zawierać

<head>
    <meta name="Description" content="..." >
</head>
A. wyrazy kluczowe, z których korzystają wyszukiwarki sieciowe.
B. nazwę programu, przy użyciu którego została stworzona strona.
C. informację, kto jest autorem strony.
D. opis, co znajduje się na stronie.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to 'opis, co znajduje się na stronie'. Metainformacja 'Description' w pliku źródłowym HTML jest wykorzystywana przez wyszukiwarki internetowe do wyświetlania opisu strony w wynikach wyszukiwania. Dzięki temu użytkownik może zobaczyć na pierwszy rzut oka, czy strona jest związana z jego zapytaniem, czy też nie. Jest to jedno z kluczowych narzędzi w SEO (Search Engine Optimization), które ma na celu zwiększenie widoczności strony w wynikach wyszukiwania. W praktyce, opis powinien być krótki, zwięzły i zawierać ważne informacje o treści strony. Dobrą praktyką jest również uwzględnienie kluczowych słów, na które użytkownicy mogą szukać. Opis ten powinien być zrozumiały dla użytkowników, a także jest to miejsce, gdzie można wykorzystać strategie marketingowe, aby zachęcić do odwiedzenia strony.

Pytanie 34

W PHP operatorem odpowiedzialnym za sumę logiczną jest

A. +
B. !
C. ||
D. &&

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Operator || w języku PHP reprezentuje sumę logiczną (OR). Oznacza to, że jeśli przynajmniej jedna z dwóch wartości logicznych jest prawdziwa, wynik również będzie prawdziwy. Przykładem zastosowania tego operatora może być warunek sprawdzający, czy użytkownik jest administratorem lub ma dostęp do pewnych zasobów w aplikacji. W takim przypadku można użyć: if ($user->isAdmin() || $user->hasAccess()). Dobrą praktyką jest stosowanie operatorów logicznych w złożonych warunkach, aby poprawić czytelność kodu. Zamiast łączyć wiele warunków w jednym wyrażeniu, warto stosować odpowiednie wcięcia i struktury, które ułatwiają zrozumienie logiki aplikacji. Operator || jest kluczowym elementem w programowaniu, szczególnie w kontekście podejmowania decyzji w kodzie, co czyni go fundamentalnym narzędziem dla programistów PHP.

Pytanie 35

Który z akapitów wykorzystuje opisaną właściwość stylu CSS?

Ilustracja do pytania
A. C
B. B
C. D
D. A

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź B jest poprawna, ponieważ właściwość CSS border-radius: 20% określa zaokrąglenie narożników elementu. W tym przypadku zastosowanie 20% promienia powoduje, że narożniki akapitu są zaokrąglone w umiarkowanym stopniu. Właściwość ta jest powszechnie wykorzystywana w projektowaniu stron internetowych, aby nadać elementom bardziej łagodny, przyjazny wygląd. Użycie procentowej wartości oznacza, że wielkość zaokrąglenia zależy od wymiarów elementu, co pozwala na zachowanie proporcji na różnych urządzeniach i przy różnych rozmiarach ekranu. Zaokrąglenie w CSS jest istotnym aspektem responsywnego designu, ponieważ może poprawiać czytelność i estetykę interfejsu użytkownika. Praktyczne zastosowania obejmują przyciski, karty, obrazki i inne elementy interfejsu, gdzie płynne linie mogą wpływać na ogólne wrażenie wizualne strony. Zrozumienie i umiejętne wykorzystanie border-radius jest częścią standardowych umiejętności projektanta stron internetowych, co również wspiera zgodność ze współczesnymi trendami w UI/UX.

Pytanie 36

Kod JavaScript aktywowany przez kliknięcie przycisku ma na celu ``` ```

A. ukryć obraz2.gif
B. zamienić obraz1.gif na obraz2.gif
C. zmienić styl obrazu o id i1
D. pokazać obraz2.gif obok obraz1.gif

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kod JavaScript w przedstawionym przykładzie został zaprogramowany w celu zamiany źródła obrazu na nowe po naciśnięciu przycisku. Gdy użytkownik kliknie na przycisk, wywołuje on funkcję, która zmienia atrybut 'src' elementu <img> z 'obraz1.gif' na 'obraz2.gif'. Jest to typowy sposób manipulacji elementami DOM w JavaScript, co jest fundamentalnym elementem programowania interakcji na stronach internetowych. Takie podejście jest zgodne z najlepszymi praktykami w zakresie programowania front-end, ponieważ pozwala na dynamiczne zmiany na stronie bez konieczności przeładowania całej strony. Przykładem praktycznego zastosowania może być użycie tego typu kodu w aplikacjach webowych, gdzie użytkownik może interaktywnie zmieniać widok, na przykład w galeriach zdjęć, grach przeglądarkowych czy aplikacjach do nauki. Zrozumienie tej techniki jest kluczowe dla każdego programisty front-end, ponieważ efektywne wykorzystanie JavaScript do manipulacji DOM jest jednym z podstawowych narzędzi w budowie nowoczesnych aplikacji webowych.

Pytanie 37

W bazie danych wykonano poniższe polecenia dotyczące uprawnień użytkownika adam:

GRANT ALL PRIVILEGES ON klienci TO adam;
REVOKE SELECT, INSERT, UPDATE ON klienci FROM adam;
Po wykonaniu tych instrukcji użytkownik adam uzyska dostęp do:
A. usunięcia tabeli lub jej rekordów
B. przeglądania tabeli klienci oraz dodawania do niej rekordów
C. tworzenia tabeli klienci i modyfikowania w niej danych
D. zmiany danych oraz przeglądania tabeli klienci

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Użytkownik <b>adam</b> rzeczywiście uzyskuje pełne prawa do zarządzania tabelą <b>klienci</b> po wykonaniu polecenia GRANT ALL PRIVILEGES. To polecenie nadaje wszystkie możliwe uprawnienia, w tym SELECT (przeglądanie danych), INSERT (wstawianie nowych rekordów), UPDATE (aktualizowanie istniejących danych) oraz DELETE (usuwanie rekordów). W kontekście praktycznym, posiadanie ALL PRIVILEGES oznacza, że użytkownik ma swobodę w manipulowaniu danymi, co jest kluczowe w pracy z bazami danych. Na przykład, w aplikacji zarządzającej klientami, <b>adam</b> może zaktualizować szczegóły klienta, dodać nowych klientów do bazy oraz usunąć tych, którzy już nie są aktywni. Jednakże, ważne jest, aby przyznawanie takich uprawnień odbywało się zgodnie z zasadami minimalnych uprawnień, aby zredukować ryzyko nieautoryzowanych zmian. Dlatego też praktyki zarządzania użytkownikami w bazach danych powinny obejmować dokładne audyty uprawnień oraz regularne przeglądy przyznanych praw, aby zapewnić bezpieczeństwo danych.

Pytanie 38

Jakie polecenie należy zastosować, aby słowo TEKST pojawiło się w kolorze czarnym w oknie przeglądarki internetowej?

A. <font color="czarny">TEKST</font>
B. <body color="black">TEKST</font>
C. <font color="#000000">TEKST</font>
D. <body bgcolor="black">TEKST</body>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź <font color="#000000">TEKST</font> jest poprawna, ponieważ wykorzystuje standardowy atrybut HTML do zmiany koloru tekstu. Atrybut 'color' w tagu <font> pozwala na określenie koloru, w tym przypadku użyto wartości szesnastkowej '#000000', co odpowiada kolorowi czarnemu. Użycie wartości szesnastkowej jest uznaną praktyką w projektowaniu stron internetowych, ponieważ pozwala na precyzyjne określenie kolorów, a także wspiera szeroką gamę barw. Wartości szesnastkowe są bardziej uniwersalne i umożliwiają zastosowanie dowolnego koloru, co jest bardziej elastyczne niż nazwy kolorów w języku angielskim. Warto zauważyć, że od HTML5 tag <font> jest przestarzały, dlatego zaleca się korzystanie z CSS do stylizacji tekstu, co jest bardziej zgodne z zasadami semantycznego HTML. Przykładowo, aby uzyskać ten sam efekt w CSS, można zastosować regułę: <style> .czarny { color: #000000; } </style> i użyć <span class="czarny">TEKST</span>.

Pytanie 39

Podany kod źródłowy ma na celu pokazanie

$liczba = 1;
while ($liczba != 0)
{
  $liczba = rand(0, 100);
  echo $liczba;
}
A. kolejne liczby od 1 do 100
B. wylosowane liczby od 1 do 99
C. losowe liczby od 0 do 100 aż do momentu, gdy wylosowana zostanie wartość 0
D. liczby wprowadzane z klawiatury do momentu, gdy wczytana zostanie wartość 0

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź "losowe liczby od 0 do 100 tak długo, aż nie zostanie wylosowana wartość 0" jest poprawna, ponieważ kod źródłowy wykorzystuje funkcję rand(), która generuje losowe liczby z zadanego zakresu, w tym przypadku od 0 do 100. Pętla while działa w taki sposób, że kontynuuje swoje działanie, dopóki zmienna $liczba nie przyjmie wartości 0. Oznacza to, że wszystkie wylosowane liczby, niezależnie od tego, czy są to liczby parzyste, nieparzyste, czy wartości graniczne, będą wyświetlane na ekranie do momentu, aż wylosowana zostanie wartość 0, która przerwie działanie pętli. Przykładem zastosowania tego typu kodu może być generowanie próbki danych w celu testowania algorytmów lub symulacji. Praktyka ta jest zgodna z dobrymi standardami programowania, gdzie często wykorzystuje się losowe dane do różnych celów, takich jak testowanie, analizy statystyczne lub gry. Ponadto, rozumienie jak działa generowanie liczb losowych i kontrola pętli jest podstawową umiejętnością w programowaniu, która pomaga w rozwoju bardziej zaawansowanych aplikacji.

Pytanie 40

Jakim poleceniem można zobaczyć konfigurację serwera PHP, zawierającą między innymi: wersję PHP, system operacyjny serwera oraz wartości przedefiniowanych zmiennych?

A. print_r(ini_get_all());
B. phpinfo();
C. echo phpversion();
D. phpcredits();

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja phpinfo() jest najczęściej używaną metodą do wyświetlania szczegółowych informacji o konfiguracji serwera PHP. Umożliwia ona dostarczenie danych na temat wersji PHP, zainstalowanych modułów, wartości konfiguracyjnych oraz informacji o systemie operacyjnym, na którym działa serwer. W kontekście dostosowywania aplikacji webowych, phpinfo() jest nieocenionym narzędziem diagnostycznym. Na przykład, gdy programista potrzebuje zweryfikować, czy określony moduł PHP, taki jak cURL czy GD, jest aktywowany, wystarczy umieścić w skrypcie polecenie `<?php phpinfo(); ?>`. Efektem jest pełna tabela z danymi, która zawiera wszystkie istotne informacje. Dobre praktyki wskazują, aby nie publikować wyników phpinfo() na stronach dostępnych publicznie, ponieważ ujawniają one wrażliwe informacje o konfiguracji serwera, co może prowadzić do potencjalnych luk w bezpieczeństwie.