Wyniki egzaminu

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

Egzamin zdany!

Wynik: 27/40 punktów (67,5%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

W SQL prawo SELECT w poleceniu GRANT umożliwia użytkownikowi bazy danych na

A. tworzenie nowych tabel
B. usuwanie danych z tabeli
C. pobieranie danych z tabeli
D. zmianę danych w tabeli
Przywilej SELECT w poleceniu GRANT w języku SQL jest kluczowym elementem zarządzania dostępem do danych w bazach danych. Umożliwia on użytkownikowi wykonanie operacji odczytu na danych przechowywanych w tabelach. W praktyce oznacza to, że użytkownik, któremu przyznano ten przywilej, może wykonywać zapytania SELECT, aby przeglądać dane, analizować je i generować raporty. Przykładowo, w kontekście systemu zarządzania bazą danych (DBMS) takiego jak MySQL, po przyznaniu przywileju SELECT dla konkretnej tabeli, użytkownik może wywołać zapytanie takie jak 'SELECT * FROM nazwa_tabeli;', co pozwala mu na wyświetlenie wszystkich rekordów z tej tabeli. Praktyka ta jest zgodna z podstawowymi zasadami zarządzania dostępem do danych, które są zdefiniowane w standardzie SQL. Odczytywanie danych jest fundamentalnym zadaniem w analizie danych, a przywilej SELECT jest często pierwszym krokiem w budowaniu bardziej złożonych zapytań, które mogą obejmować agregacje, filtrowanie czy łączenie tabel. W ten sposób przywilej SELECT nie tylko umożliwia dostęp do danych, ale także stanowi podstawę dla bardziej zaawansowanych operacji na danych.

Pytanie 2

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

A. wykluczenia.
B. części wspólnej.
C. sumy.
D. grupowania.
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 3

W którym formacie RASTROWYM zapisać wykres słupkowy, by miał ostre krawędzie (bez artefaktów)?

A. JPEG
B. CDR
C. PNG
D. SVG
Wykres słupkowy ma ostre krawędzie i jednolite kolory, więc rastrowo zapisuje się go w PNG - kompresja BEZSTRATNA nie wprowadza artefaktów wokół linii i tekstu. To typowy wybór dla diagramów, zrzutów ekranu i grafiki z wyraźnymi konturami. Zapamiętaj: ostre krawędzie + raster = PNG, nigdy JPG.

Pytanie 4

Jakie oznaczenie powinno się zastosować, aby umieścić film na stronie internetowej?

A. <media>
B. <video>
C. <audio>
D. <movie>
Znaczniki <media>, <movie> oraz <audio> nie są odpowiednie do osadzania filmów na stronach internetowych z kilku powodów. Nie istnieje znacznik <media> w standardzie HTML, co prowadzi do mylnego przekonania, że jest to poprawne podejście do integracji multimediów. Użytkownicy mogą mylnie sądzić, że takie podejście zapewni im funkcjonalność wideo, jednak brak takiego znacznika w specyfikacji HTML czyni go nieprzydatnym. Z kolei znacznik <movie> również nie jest zdefiniowany w standardach HTML i nie jest stosowany w praktyce webowej, co sprawia, że jego użycie prowadzi do poważnych błędów w implementacji. Można spotkać się z przekonaniem, że <audio> może być używany do odtwarzania wideo, jednak jest on przeznaczony wyłącznie do dźwięku. Odtwarzanie wideo przy użyciu znacznika <audio> byłoby niewłaściwe i wprowadzałoby użytkowników w błąd, ponieważ nie zapewniałoby wizualnego komponentu, który jest niezbędny do wyświetlania filmów. Ponadto, prawidłowe osadzanie wideo powinno opierać się na standardach branżowych, które promują odpowiednie użycie znaczników oraz ich atrybutów, co jest kluczowe dla funkcjonalności i dostępności multimediów w sieci. Przy projektowaniu stron internetowych, ważne jest, aby stosować się do aktualnych standardów, aby zapewnić pełne wsparcie przeglądarek oraz optymalne doświadczenie użytkownika.

Pytanie 5

W tabeli artykuły wykonano następujące instrukcje dotyczące uprawnień użytkownika jan:

GRANT ALL PRIVILEGES ON artykuly TO jan
REVOKE SELECT, UPDATE ON artykuly FROM jan
Po zrealizowaniu tych instrukcji pracownik jan będzie uprawniony do
A. tworzenia tabeli i wypełniania jej danymi
B. tworzenia tabeli oraz edytowania danych w niej
C. edycji danych oraz przeglądania tabeli
D. wyświetlania zawartości tabeli
Jan, po wydaniu polecenia GRANT ALL PRIVILEGES ON artykuly TO jan, miał pełne uprawnienia do wszystkich operacji na tabeli artykuly. Jednakże, po wykonaniu polecenia REVOKE SELECT, UPDATE ON artykuly FROM jan, jego uprawnienia do przeglądania danych (SELECT) oraz aktualizacji danych (UPDATE) zostały odebrane. Oznacza to, że Jan zachowuje możliwość tworzenia nowych tabel oraz wypełniania ich danymi (INSERT), ponieważ nie został ograniczony w tym zakresie. Możliwości tworzenia tabeli i wypełniania jej danymi są częścią przyznanych uprawnień. W standardzie SQL, komendy GRANT i REVOKE służą odpowiednio do przyznawania i odbierania uprawnień użytkownikom. W praktycznym zastosowaniu, takie operacje są kluczowe dla zarządzania bezpieczeństwem i dostępem do danych w bazach danych, co zapobiega nieautoryzowanym zmianom i zabezpiecza integralność danych.

Pytanie 6

W dokumencie HTML umieszczono tekst sformatowany określonym stylem. Aby dodać do tego tekstu kilka słów sformatowanych innym stylem, należy użyć znacznika

A. <hr>
B. <span>
C. <table>
D. <section>
<span> jest znacznikiem HTML, który służy do stosowania stylów CSS do określonych fragmentów tekstu w obrębie bloków HTML. Umożliwia on formatowanie tekstu w bardziej lokalny sposób, co jest niezwykle przydatne, gdy chcemy wyróżnić niektóre słowa lub frazy w dłuższym akapicie. W odróżnieniu od znaczników takich jak <div>, które są stosowane do większych sekcji, <span> działa na poziomie inline, co oznacza, że nie wprowadza nowego bloku w układzie strony. Przykład użycia tej etykiety może wyglądać następująco: <p>W tym akapicie <span style='color:red;'>ważne słowo</span> jest wyróżnione kolorem czerwonym.</p>. Dzięki temu możemy łatwo zastosować różnorodne style, takie jak zmiana koloru czcionki, czcionki, tła lub nawet dodawanie efektów animacyjnych do konkretnego fragmentu tekstu. Zgodnie z standardami W3C, <span> jest zalecanym sposobem na selektywne formatowanie tekstu, co czyni go niezwykle praktycznym narzędziem w tworzeniu elastycznych i atrakcyjnych wizualnie stron internetowych.

Pytanie 7

Działaniem przedstawionego 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 wypisanie ich.
D. 100 losowymi wartościami, a następnie wypisanie wartości dodatnich.
Prawidłowo zidentyfikowałeś, że kod PHP wypełni tablicę 10 losowymi wartościami, a następnie wypisze tylko te, które są wartościami ujemnymi. Jest to fundament, na którym opiera się działanie tego konkretnego fragmentu kodu. Tworzenie losowych wartości jest powszechną praktyką w programowaniu i jest wykorzystywane do testowania funkcji, symulowania danych wejściowych czy generowania unikalnych identyfikatorów. Tutaj, użycie losowości służy do stworzenia przypadkowego zestawu liczb, które następnie są filtrowane i wypisywane tylko te o wartości ujemnej. Ta technika jest przydatna, gdy chcemy przefiltrować dane według określonych kryteriów, w tym przypadku liczby ujemne. Jest to ważne nie tylko dla zrozumienia tego konkretnego pytania, ale także dla zrozumienia, jak działa programowanie i jakie są jego praktyczne zastosowania. Pamiętaj, że zrozumienie tego, co robi konkretny fragment kodu, jest kluczowe dla skutecznego programowania i debugowania.

Pytanie 8

W jaki sposób można w języku CSS ustawić takie stylizowanie tabeli, aby wiersz, na którym obecnie znajduje się kursor myszki, zmieniał kolor tła na szary?

A. tr:hover { color: gray; }
B. tr:hover { background-color: gray; }
C. tr:active { color: gray; }
D. tr:active { background-color: gray; }
Odpowiedź tr:hover { background-color: gray; } jest całkiem trafna. Używasz pseudoklasy :hover, co jest super standardowym podejściem do stylizacji elementów, gdy kursor najedzie na nie. W tabeli to tak działa, że cały wiersz zmienia kolor tła na szary, co znacznie poprawia czytelność i jakby cały interfejs staje się bardziej interaktywny. To jest przydatne w aplikacjach webowych, bo użytkownicy szybko rozumieją, na którym wierszu akurat są. Można jeszcze dodać inne efekty, na przykład zmienić kolor tekstu czy dodać jakies cień. Przykład to jakieś interaktywne tabele w systemach do zarządzania danymi, gdzie jak najeżdżasz na wiersze, to wyświetlają się dodatkowe info lub pozwalają je edytować. Pamiętaj też o dostępności – dobrze jest zadbać o kontrasty kolorystyczne, żeby osoby z dysfunkcjami wzroku mogły z tego korzystać.

Pytanie 9

Możliwość utworzenia konta użytkownika jan z hasłem janPass można osiągnąć przy pomocy polecenia

A. CREATE USER 'jan'@'localhost' PASSWORD EXPIRE;
B. CREATE USER 'jan'@'localhost' IDENTIFIED BY 'janPass';
C. CREATE USER 'jan'@'localhost';
D. CREATE USER 'jan'@'%localhost' IDENTIFIED VIA mysql_native_password USING 'janPass';
Pozostałe odpowiedzi zawierają błędy związane z używaniem składni SQL do tworzenia użytkowników. W pierwszym przypadku, polecenie 'CREATE USER 'jan'@'localhost';' nie definiuje hasła, co sprawia, że użytkownik nie będzie mógł się zalogować, ponieważ brak jest wymaganego elementu autoryzacji. W kontekście bezpieczeństwa i standardów zarządzania użytkownikami, każdemu utworzonemu kontu należy przypisać odpowiednie hasło, aby uniemożliwić dostęp osobom nieuprawnionym. Następnie, polecenie 'CREATE USER 'jan'@'localhost' PASSWORD EXPIRE;' jest niepoprawne, ponieważ nie tworzy użytkownika z hasłem; zamiast tego, sugeruje jedynie, że hasło ma wygasnąć, co nie jest sensowną operacją przy tworzeniu nowego konta. Warto zauważyć, że takie podejście do zarządzania użytkownikami może prowadzić do poważnych luk w zabezpieczeniach. Wreszcie, odpowiedź 'CREATE USER 'jan'@'%localhost' IDENTIFIED VIA mysql_native_password USING 'janPass';' również zawiera błąd. Choć używa poprawnej składni, to 'USING' oraz 'IDENTIFIED VIA' nie są odpowiednie w kontekście tworzenia użytkowników w MySQL, co prowadzi do niepoprawnego rozumienia procesu autoryzacji. Poprawne podejście do zarządzania użytkownikami w MySQL koncentruje się na odpowiednim zabezpieczeniu i zarządzaniu hasłami, co nie zostało odzwierciedlone w powyższych odpowiedziach.

Pytanie 10

Który format wideo NIE jest natywnie obsługiwany przez element <video> w HTML5?

A. WebM
B. Ogg
C. MP4
D. AVI
Element <video> w HTML5 obsługuje natywnie formaty MP4 (H.264), WebM i Ogg. AVI to starszy kontener, którego przeglądarki nie odtwarzają wprost przez <video> - wymaga konwersji do jednego z obsługiwanych formatów. Dlatego nieobsługiwanym formatem jest AVI.

Pytanie 11

Wskaż NIEPRAWIDŁOWE stwierdzenie dotyczące normalizacji dźwięku

A. W wyniku normalizacji następuje wyrównanie poziomu głośności całego nagrania
B. Opcja normalizacja znajduje się w menu programu do edycji dźwięku
C. Normalizacja polega na obniżeniu poziomu najgłośniejszej próbki w sygnale do ustalonej wartości, a następnie proporcjonalnym zwiększeniu głośności pozostałych części sygnału
D. Jeśli najgłośniejszy element dźwięku osiąga połowę skali, wszystko zostanie zwiększone razy dwa - tak, aby najgłośniejszy element dotarł do maksimum na skali
Odpowiedź jest prawidłowa, ponieważ proces normalizacji sygnału dźwiękowego faktycznie polega na dostosowywaniu głośności nagrania w taki sposób, aby najgłośniejszy fragment osiągał maksymalny poziom na skali. W praktyce, jeżeli najgłośniejszy element sygnału osiąga połowę skali, program do obróbki dźwięku zwiększa głośność wszystkich innych fragmentów, aby najgłośniejszy osiągnął pełną głośność. To działanie jest zgodne z powszechnie przyjętymi standardami normalizacji dźwięku, które zapewniają, że nagrania mają spójny poziom głośności, co jest istotne w produkcji audio, aby nie występowały nagłe zmiany głośności pomiędzy różnymi utworami. Normalizacja jest szczególnie przydatna w kontekście przygotowywania materiałów do publikacji, takich jak albumy muzyczne czy podcasty, gdzie istotne jest, by słuchacz nie musiał regulować głośności podczas odtwarzania różnych nagrań. Przykładem może być album muzyczny, gdzie różne utwory mogą mieć różne poziomy nagrania, a normalizacja pozwala na ich wyrównanie w celu uzyskania jednolitego doświadczenia słuchowego.

Pytanie 12

Która z definicji CSS określa formatowanie nagłówka h1: tekst nadkreślony, z odstępami między wyrazami 10 px i czerwonym kolorem tekstu?

h1{
  text-decoration: overline;
  word-spacing: 10px;
  color: red;
}                       A.

h1{
  text-decoration: overline;
  letter-spacing: 10px;
  color: red;
}                       B.

h1{
  text-transform: none;
  line-height: 10px;
  color: rgb(255,0,0);
}                       C.

h1{
  text-decoration: underline;
  line-height: 10px;
  color: rgb(255,0,0);
}                       D.
A. B.
B. D.
C. A.
D. C.
Brawo, poprawnie wybrałeś odpowiedź A, która pokazuje prawidłową definicję CSS do formatowania nagłówka h1. 'text-decoration: overline;' jest poleceniem CSS służącym do nadkreślania tekstu. Jest to styl tekstu, który dodaje linie nad literami. 'word-spacing: 10px;' jest poleceniem CSS, które określa odstępy między wyrazami. Wartościem tego polecenia jest odległość, która jest używana do określenia przestrzeni między słowami i jest wyrażona w pikselach. 'color: red;' jest standardowym poleceniem CSS do kolorowania tekstu. Czerwony jest jednym z podstawowych kolorów, które można wykorzystać w CSS. W praktyce, te trzy polecenia CSS mogą być używane do personalizacji strony internetowej, poprawiając jej wygląd i czytelność. Dobrą praktyką jest eksperymentowanie z różnymi stylami CSS, aby znaleźć najlepszy sposób prezentacji zawartości.

Pytanie 13

Baza danych przechowuje dane multimedialne (duże ilości danych binarnych). Którego typu danych należy użyć dla takich pól?

A.
BLOB
B.
LONGTEXT
C.
ENUM
D.
DOUBLE
Pozostałe typy nie nadają się do danych binarnych. ENUM pozwala przechować tylko jedną z wcześniej zdefiniowanych wartości tekstowych (np. „mały”, „duży”) - to typ wyliczeniowy, nie magazyn plików. DOUBLE to liczba zmiennoprzecinkowa, służąca do wartości ułamkowych. LONGTEXT przechowuje wprawdzie dużo danych, ale TEKSTOWYCH, z kodowaniem znaków, więc surowe bajty obrazu mógłby zniekształcić. Dane binarne multimediów trzyma się w polu typu BLOB, dlatego to on jest poprawny.

Pytanie 14

Jakiego elementu HTML brakuje, aby walidator HTML zgłosił ostrzeżenie lub błąd?

A. <meta name="author" content="....">
B. co najmniej jednego <h1>
C. <title>
D. <link>
Element <title> jest kluczowym składnikiem dokumentu HTML, odpowiedzialnym za definiowanie tytułu strony, który jest wyświetlany na pasku tytułowym przeglądarki oraz w wynikach wyszukiwania. Zgodnie z wytycznymi W3C, każdy dokument HTML powinien zawierać ten element w sekcji <head>, aby zapewnić poprawną strukturę oraz ułatwić indeksowanie przez wyszukiwarki. Brak <title> może prowadzić do ostrzeżeń lub błędów w walidacji, ponieważ wpływa to negatywnie na zarówno SEO, jak i dostępność strony. Przykładem poprawnej implementacji może być:<head><title>Mój pierwszy dokument HTML</title></head>, co zapewnia odpowiednią reprezentację treści strony w kontekście przeglądania i wyszukiwania. Dobrym zwyczajem jest, aby tytuł był zwięzły, a jednocześnie zawierał istotne słowa kluczowe, które odnoszą się do tematu strony. Nie należy zapominać, że właściwie skonstruowany tytuł wpływa na doświadczenia użytkowników oraz ich postrzeganie witryny.

Pytanie 15

Jaki jest cel zapisu w języku JavaScript?

var napis1 = new napisy();
A. wykonanie metody obiektu napisy
B. założenie nowej klasy napis1
C. zainicjowanie zmiennej napis1 oraz wywołanie funkcji, której argumentem jest napis1
D. stworzenie obiektu napis1 z klasy napisy
Niepoprawne odpowiedzi wynikają z niepełnego zrozumienia procesu tworzenia obiektów w JavaScript. Propozycja zadeklarowania zmiennej i wywołania funkcji z argumentem napis1 nie odpowiada rzeczywistej funkcjonalności przedstawionego kodu. Zadeklarowanie zmiennej w JavaScript jest kluczowym krokiem, ale bez poprawnego użycia słowa kluczowego new oraz odpowiednio zdefiniowanej funkcji lub klasy nie można stworzyć instancji obiektu. Natomiast wywołanie funkcji z argumentem napis1 sugeruje, że mamy do czynienia z operacją na już istniejącym obiekcie, co nie ma miejsca w kontekście inicjalizacji obiektu. Próba wywołania metody obiektu napisy nie jest poprawna, ponieważ najpierw trzeba utworzyć instancję obiektu, a dopiero potem można wywoływać jego metody. Bez tego kroku każda próba pracy z metodami zakończy się błędem. Wreszcie, stworzenie nowej klasy napis1 byłoby sprzeczne z pokazanym kodem, ponieważ żaden element składni nie sugeruje deklaracji klasy. W języku JavaScript klasy są definiowane z użyciem słowa kluczowego class, które w analizowanym kodzie nie występuje. Zrozumienie procesu tworzenia obiektów oraz wykorzystania klas i konstruktorów w JavaScript jest fundamentalne, aby efektywnie pisać oraz zarządzać kodem w tym języku. Poprawne rozpoznanie i stosowanie tych mechanizmów pozwala na tworzenie bardziej złożonych i elastycznych aplikacji.

Pytanie 16

Kod programu wraz z komentarzami oraz opisem algorytmów i metod stanowi dokumentację

A. audiowizualną.
B. graficzną.
C. techniczną.
D. urzędową.
Poprawnie – mówimy tutaj o dokumentacji technicznej. Kod programu razem z komentarzami w kodzie, opisem algorytmów, struktur danych, interfejsów, sposobu działania poszczególnych modułów czy klas to właśnie klasyczny przykład dokumentacji technicznej. W branży IT przyjmuje się, że dokumentacja techniczna jest skierowana głównie do programistów, administratorów, czasem też architektów systemów, czyli osób, które będą rozwijać, utrzymywać lub integrować dany system. Nie jest to materiał marketingowy ani „urzędowy”, tylko coś, co ma pomóc zrozumieć jak system działa od środka.
W praktyce dokumentacja techniczna obejmuje na przykład: komentarze w kodzie źródłowym (zgodne z konwencją danego języka, np. PHPDoc, JSDoc), opisy algorytmów w plikach README, wiki projektowe, diagramy UML, schematy przepływu danych, opisy endpointów API, a nawet instrukcje uruchomienia środowiska developerskiego. Moim zdaniem im lepiej zrobiona taka dokumentacja, tym łatwiej jest później komuś „wejść” w projekt bez zadawania dziesiątek pytań.
Dobre praktyki mówią, żeby dokumentacja techniczna była aktualna, wersjonowana razem z kodem (np. w Git), a komentarze w kodzie nie powtarzały tego, co oczywiste, tylko wyjaśniały „dlaczego tak”, a nie „co robi ta linijka”. W projektach webowych dokumentacja techniczna opisuje na przykład, jak działa logika logowania użytkownika, jak są zrobione zapytania do bazy, jakie są ograniczenia wydajnościowe. To wszystko pozwala utrzymać spójność systemu i ułatwia debugowanie oraz rozwój nowych funkcji.
Dlatego odpowiedź „techniczną” jest jak najbardziej zgodna z tym, jak branża rozumie dokumentację w kontekście programowania i algorytmów.

Pytanie 17

Aby obraz w filmie zmieniał się płynnie, liczba klatek na sekundę powinna wynosić co najmniej:

A. 16 - 19 fps
B. 24 - 30 fps
C. 20 - 23 fps
D. 31 - 36 fps
Pozostałe zakresy są albo za niskie, albo nie są progiem minimalnym. Przy 16 - 19 oraz 20 - 23 fps mózg dostrzega jeszcze pojedyncze klatki - ruch wygląda na skokowy i mało naturalny. Zakres 31 - 36 fps owszem zapewnia płynność, ale pytanie dotyczy wartości „co najmniej”, czyli progu, od którego ruch staje się płynny - a ten leży niżej. Próg płynnego ruchu to około 24 fps, więc poprawny jest zakres 24 - 30 fps.

Pytanie 18

W SQL wykonano poniższe instrukcje GRANT. Kto będzie miał prawa do przeglądania oraz modyfikacji danych?

GRANT ALL ON firmy TO 'admin'@'localhost';
GRANT ALTER, CREATE, DROP ON firmy TO 'anna'@'localhost';
GRANT SELECT, INSERT, UPDATE ON firmy TO 'tomasz'@'localhost';
A. Adam i Anna
B. Tomasz i Anna
C. Tylko Tomasz
D. Tomasz i Adam
Prawidłowa odpowiedź to Tylko Tomasz ponieważ polecenie GRANT SELECT INSERT UPDATE ON firmy TO 'tomasz'@'localhost' przyznaje Tomaszowi uprawnienia do przeglądania danych i ich zmiany w bazie danych firmy. Uprawnienia SELECT INSERT i UPDATE są wystarczające do przeglądania i modyfikowania danych. SELECT pozwala na odczyt danych z tabeli INSERT umożliwia dodawanie nowych rekordów a UPDATE pozwala na modyfikację istniejących danych. To przyznaje Tomaszowi pełną kontrolę nad przeglądaniem i aktualizacją danych. Inni użytkownicy jak Anna czy Adam nie posiadają wszystkich tych uprawnień. Anna ma jedynie uprawnienia ALTER CREATE i DROP co pozwala na zmianę struktury bazy danych ale nie na przeglądanie i edytowanie danych. Zrozumienie tych różnic jest kluczowe w administracji bazami danych gdyż precyzyjne zarządzanie uprawnieniami użytkowników zapewnia bezpieczeństwo danych i efektywność działania systemu. Tomasz dzięki przyznanym uprawnieniom może efektywnie zarządzać danymi co jest ważnym aspektem w kontekście zarządzania bazami danych w organizacji.

Pytanie 19

Funkcja PHP var_dump() prezentuje dane na temat zmiennej, w tym jej typ oraz wartość. Jakim wynikiem zakończy się poniższy fragment kodu?

$x = 59.85; var_dump($x);
A. array(2) { [0]=> int(59) [1]=> int(85) }
B. string(5) "59.85"
C. int(59)
D. float(59.85)
Wybrane odpowiedzi nie są zgodne z poprawnym wynikiem działania funkcji var_dump() w PHP. Odpowiedź, która sugeruje, że wynik to "int(59)" jest błędna, ponieważ funkcja ta nie konwertuje zmiennoprzecinkowych wartości na liczby całkowite, a 59.85 jest wyraźnie liczbą zmiennoprzecinkową. Inna odpowiedź, sugerująca "string(5) "59.85"", jest myląca, ponieważ zmienna $x została zadeklarowana jako liczba, a nie jako string. PHP automatycznie określa typ zmiennej na podstawie przypisanej wartości, a w tym przypadku jest to typ float. Odpowiedź "array(2) { [0]=> int(59) [1]=> int(85) }" również jest nieprawidłowa, ponieważ nie mamy do czynienia z tablicą, a z pojedynczą zmienną. Przykłady te ilustrują typowe nieporozumienia dotyczące typów danych w PHP. Programiści powinni zrozumieć, że PHP jest dynamicznie typowanym językiem, co oznacza, że typ zmiennej jest określany podczas wykonywania programu, a nie w czasie kompilacji. Właściwe zrozumienie typów danych oraz ich konwersji jest kluczowe dla zapewnienia poprawności i bezpieczeństwa kodu.

Pytanie 20

Do jakiego celu służy certyfikat SSL?

A. deszyfracji danych przesyłanych w sieci
B. zapisywania informacji o sesjach generowanych w witrynie
C. blokowania złośliwego oprogramowania na stronie
D. zidentyfikowania posiadacza witryny
Odpowiedzi związane z blokowaniem szkodliwego oprogramowania, zapisywaniem danych o sesjach oraz deszyfracją transmitowanych danych są niepoprawne w kontekście funkcji certyfikatu SSL. Certyfikat SSL nie ma funkcji blokowania złośliwego oprogramowania, ponieważ jego zadaniem jest zapewnienie bezpieczeństwa komunikacji poprzez szyfrowanie danych. Złośliwe oprogramowanie jest zazwyczaj eliminowane przez oprogramowanie zabezpieczające, a nie przez SSL. W odniesieniu do zapisania danych o sesjach, certyfikat SSL nie przechowuje informacji o sesjach ani o użytkownikach. Sesje są zarządzane przez aplikacje serwerowe, a SSL jedynie zabezpiecza przesyłane dane podczas sesji. Co więcej, SSL nie zajmuje się deszyfracją transmitowanych danych, ponieważ szyfrowanie i deszyfrowanie danych odbywa się w momencie komunikacji, a nie jako osobny proces czy funkcja certyfikatu. SSL działa na zasadzie wymiany kluczy szyfrujących pomiędzy serwerem a klientem, gdzie dane są szyfrowane w momencie przesyłania, a następnie deszyfrowane przez odbiorcę, co również nie jest funkcją certyfikatu, ale całego protokołu zabezpieczeń.

Pytanie 21

Znacznik <ins> w HTML jest używany do wskazywania

A. tekstu, który został dodany
B. cytowanego fragmentu tekstu
C. tekstu, który został usunięty
D. tekstu, który został przeformatowany
Wiesz, znacznik <ins> w HTML to coś, co używamy, żeby pokazać tekst dodany w stosunku do poprzedniej wersji dokumentu. To mega przydatne, zwłaszcza kiedy edytujemy różne treści, bo od razu widać, co się zmieniło. Zastosowanie tego znacznika można znaleźć w różnych dokumentach, jak blogi czy umowy, gdzie ważne jest, żeby pokazać, co się zmieniło w treści. Zgodnie z tym, co mówią wytyczne W3C, używanie znaczników semantycznych, jak <ins>, sprzyja lepszej dostępności tekstów i ułatwia ich zrozumienie przez wyszukiwarki oraz technologie wspierające. Przykładowo, gdy robisz poprawki w dokumencie, właśnie dzięki <ins> możesz wyróżnić nowe informacje, co sprawi, że użytkownicy łatwiej ogarną, co się zmieniło. Dobrze jest też dodać odpowiedni styl CSS, żeby nadać tym elementom wyraźniejszy wygląd.

Pytanie 22

Wskaż właściwy sposób zapisu instrukcji w języku JavaScript.

A. document.write("Liczba π z dokładnością do 2 miejsc po przecinku ≈ " ; 3.14 );
B. document.write("Liczba π z dokładnością do 2 miejsc po przecinku ≈ " . 3.14 );
C. document.write("Liczba π z dokładnością do 2 miejsc po przecinku ≈ " 3.14 );
D. document.write("Liczba π z dokładnością do 2 miejsc po przecinku ≈ " + 3.14 );
Poprawna odpowiedź to 'document.write("Liczba π z dokładnością do 2 miejsc po przecinku ≈ " + 3.14);'. Ta instrukcja w języku JavaScript umożliwia wyświetlenie tekstu oraz wartości liczbowej na stronie internetowej. Kluczowym elementem jest operator konkatenacji '+', który służy do łączenia ze sobą dwóch lub więcej stringów. W tym przypadku łączymy tekst z wartością liczby π. Użycie podwójnych cudzysłowów do otoczenia tekstu jest poprawne, a znaki ucieczki (backslash) przed cudzysłowami wewnętrznymi zapewniają, że JavaScript prawidłowo interpretuje je jako część tekstu, a nie zakończenie stringa. W praktyce często korzysta się z tego typu zapisów do dynamicznego generowania treści na stronach internetowych, co jest zgodne z zasadami programowania obiektowego oraz dobrymi praktykami w zakresie czytelności kodu. Warto również zauważyć, że 'document.write' jest funkcją, którą należy stosować ostrożnie, gdyż może nadpisywać istniejącą zawartość strony, jeśli użyta zostanie po załadowaniu DOM. Dlatego w nowoczesnych aplikacjach webowych preferowane są inne metody, takie jak manipulacja DOM poprzez metody 'appendChild' lub 'innerHTML'.

Pytanie 23

W tabeli psy znajdują się kolumny: imię, rasa, telefon_właściciela, rok_szczepienia. Jakie polecenie SQL należy zastosować, aby znaleźć numery telefonów właścicieli psów, które zostały zaszczepione przed 2015 rokiem?

A. SELECT telefon_właściciela FROM psy WHERE rok_szczepienia < 2015
B. SELECT telefon_właściciela FROM psy WHERE rok_szczepienia > 2015
C. SELECT imię, rasa FROM psy WHERE rok_szczepienia > 2015
D. SELECT psy FROM rok_szczepienia < 2015
Wybrana odpowiedź jest poprawna, ponieważ precyzyjnie określa, jak za pomocą języka SQL można uzyskać telefony właścicieli psów, których szczepienia miały miejsce przed rokiem 2015. W poleceniu SQL używamy klauzuli SELECT, aby wybrać konkretne kolumny z tabeli. W tym przypadku interesuje nas kolumna 'telefon_wlasciciela'. Klauzula WHERE służy do filtrowania danych, co pozwala na zastosowanie warunku, który musi być spełniony, aby rekordy zostały zwrócone. Warunek 'rok_szczepienia < 2015' jest logiczny i zgodny z wymaganiami pytania. Taka konstrukcja zapytania jest zgodna z najlepszymi praktykami, ponieważ jasno określa, co chcemy uzyskać oraz jakie kryteria muszą zostać spełnione. Przykładowe zastosowanie tego typu zapytania może obejmować analizę danych dotyczących zdrowia psów, co jest istotne dla weterynarzy, hodowców czy właścicieli zwierząt. Umożliwia to podejmowanie świadomych decyzji dotyczących opieki zdrowotnej zwierząt.

Pytanie 24

Które reguły CSS poprawnie ustawiają dla akapitu czcionkę Arial, rozmiar 16 pt i pochylenie (kursywę)?

A.
p { font-style: Arial; size: 16px; font-weight: normal; }
B.
p { font-family: Arial; font-size: 16pt; font-style: italic; }
C.
p { font-style: Arial; font-size: 16pt; font-variant: normal; }
D.
p { font-family: Arial; font-size: 16px; font-variant: normal; }
Wygląd czcionki opisują w CSS trzy osobne właściwości: font-family ustala krój (np. Arial), font-size - rozmiar (tu 16pt, bo zadano punkty, a nie piksele), a font-style: italic włącza pochylenie. Razem daje to p { font-family: Arial; font-size: 16pt; font-style: italic; }. Warto pamiętać, że font-style odpowiada za kursywę, a font-weight za grubość - to częste źródło pomyłek. Dlatego poprawny jest ten zestaw reguł.

Pytanie 25

Który zapis <img> jest poprawny zgodnie z walidacją HTML5?

A.
<img src=mojPiesek.jpg" alt="pies>
B.
<img src=mojPiesek.jpg alt=pies>
C.
<img src="mojPiesek.jpg">
D.
<img src="mojPiesek.jpg" alt="pies">
Poprawny zapis to <img src="mojPiesek.jpg" alt="pies"> - wartości atrybutów src i alt ujęte są w cudzysłowy, a znacznik jest poprawnie domknięty. Dlatego prawidłowy jest ten zapis.

Pytanie 26

Dostępna jest tabela programisci, która zawiera pola: id, nick, ilosc_kodu, ocena. Pole ilosc_kodu wskazuje liczbę linii kodu stworzonych przez programistę w danym miesiącu. W celu obliczenia łącznej liczby linii kodu napisanych przez wszystkich programistów, należy zastosować poniższe polecenie

A. SELECT SUM(ocena) FROM ilosc_kodu;
B. SELECT SUM(ilosc_kodu) FROM programisci;
C. SELECT MAX(ilosc_kodu) FROM programisci;
D. SELECT COUNT(programisci) FROM ilosc_kodu;
Aby obliczyć sumę linii kodu napisanych przez wszystkich programistów w tabeli 'programisci', poprawne jest użycie zapytania SQL: SELECT SUM(ilosc_kodu) FROM programisci. Zapytanie to wykorzystuje funkcję agregującą SUM(), która sumuje wartości w określonej kolumnie, w tym przypadku 'ilosc_kodu'. Kolumna ta zawiera liczbę linii kodu napisanych przez każdego programistę w danym miesiącu. Przykładem zastosowania tego zapytania może być sytuacja, w której chcemy określić całkowitą produktywność zespołu programistycznego w danym okresie czasu. Możemy rozszerzyć to zapytanie, dodając klauzulę WHERE, aby zsumować tylko linie kodu z określonego miesiąca lub roku. Warto również pamiętać o standardach SQL oraz zasadach normalizacji baz danych, które zalecają unikanie redundancji danych i umożliwiają efektywne przetwarzanie zapytań. Dzięki poprawnym praktykom można zapewnić optymalizację wydajności bazy danych oraz ułatwić późniejsze analizy danych.

Pytanie 27

W języku JavaScript rezultat działania instrukcji zmienna1 –= 1; będzie identyczny jak wynik instrukcji

A. zmienna1––;
B. zmienna1++;
C. zmienia1 = zmienna1 - 0;
D. zmienna1 === zmienna1 - 1;
Instrukcja 'zmienna1 -= 1;' w języku JavaScript jest skróconą formą zapisu, która oblicza nową wartość zmiennej 'zmienna1', odejmując od niej 1. Działa to na zasadzie równania, gdzie zmienna zostaje zaktualizowana do nowej wartości. Z kolei zapis 'zmienna1--;' również dokonuje dekrementacji zmiennej 'zmienna1' o 1, ale w formie operatora post-dekrementacji. W praktyce oznacza to, że obie instrukcje mają ten sam efekt końcowy, czyli zmiana wartości 'zmienna1' o 1 w dół. Przykładowo, jeżeli 'zmienna1' wynosi 5 przed wykonaniem powyższych operacji, to po ich wykonaniu jej wartość wyniesie 4. Takie skrócone formy zapisu są powszechną praktyką w programowaniu, ponieważ umożliwiają bardziej zwięzłe i czytelne przedstawienie operacji na zmiennych, co jest zgodne z zasadami czystego kodu. Używanie operatorów skróconych, takich jak '+=' i '-=', jest zalecane, ponieważ poprawia czytelność i zrozumiałość kodu.

Pytanie 28

Które z formatowań nie jest wyrażone w języku CSS?

Ilustracja do pytania
A. Formatowanie 4
B. Formatowanie 2
C. Formatowanie 1
D. Formatowanie 3
Wybrałeś Formatowanie 3 i to jest zgodne z ideą pytania, bo właśnie tam zastosowano atrybut HTML `bgcolor`, który nie korzysta z mechanizmu CSS. W tym fragmencie mamy zapis `<body bgcolor="yellow">`. To jest tzw. prezentacyjne rozszerzenie HTML, które było popularne w bardzo starych wersjach specyfikacji (HTML 3.2, wczesne 4.0), ale obecnie jest traktowane jako przestarzałe i niezalecane (deprecated). Kolor tła jest tu definiowany bezpośrednio w znaczniku HTML, a nie w osobnym arkuszu stylów ani nawet w atrybucie `style`. Z punktu widzenia dzisiejszych standardów W3C i dobrych praktyk front‑endowych, formatowanie wyglądu powinno być przeniesione do CSS.
W pozostałych formatach użyto już języka CSS, tylko w różnych miejscach. Formatowanie 1 wykorzystuje styl wbudowany w dokument w sekcji `<style>...</style>` w pliku HTML. Taki kod jest jak najbardziej CSS: selektor `body` i deklaracja `background-color: yellow;`. Formatowanie 2 przenosi ten sam zapis do zewnętrznego arkusza stylów, np. `formatowanie.css`. To jest obecnie uznawane za najbardziej eleganckie i skalowalne rozwiązanie, bo rozdziela strukturę (HTML) od prezentacji (CSS). Formatowanie 4 używa atrybutu `style` wewnątrz znacznika `<body>`: `style="background-color: yellow;"`. W środku atrybutu też znajduje się pełnoprawny kod CSS, tylko zapisany inline. Technicznie jest to CSS, choć z mojego doświadczenia warto go używać raczej oszczędnie, np. do szybkich testów lub jednostkowych wyjątków.
W praktyce, przy tworzeniu nowoczesnych stron WWW, wszystkie ustawienia kolorów, marginesów, czcionek itd. trzymamy w arkuszach stylów. Atrybuty typu `bgcolor`, `align`, `font` i podobne są uznawane za złą praktykę, bo mieszają zawartość z prezentacją i utrudniają późniejszą modyfikację wyglądu. Dlatego poprawna odpowiedź pokazuje właśnie przykład starego, nie‑CSS‑owego formatowania.

Pytanie 29

Który z protokołów umożliwia publikację strony internetowej na serwerze?

A. ICMP
B. FTP
C. NNTP
D. SMTP
ICMP (Internet Control Message Protocol) to protokół, który używany jest głównie do przesyłania komunikatów kontrolnych w sieci, np. błędów czy informacji o tym, czy hosty są dostępne. I teraz tak - nie jest to protokół do transferu plików, więc nie nadaje się do publikowania stron. Więc używanie ICMP w tym kontekście może prowadzić do złych wniosków, bo nie jest to jego rola. Z drugiej strony, SMTP (Simple Mail Transfer Protocol) jest do wysyłania e-maili, a nie do publikacji stron. Przesyła wiadomości między serwerami pocztowymi, więc też nie ma zastosowania w transferze plików na serwery WWW. A NNTP (Network News Transfer Protocol) to natomiast protokół do rozsyłania wiadomości w grupach dyskusyjnych, co też nie ma związku z publikowaniem stron. Ważne jest, żeby rozumieć te protokoły, żeby unikać nieporozumień. Kiedy mówimy o publikacji, to najważniejsze są te protokoły, które obsługują transfer plików, jak FTP, oraz metody ich zabezpieczania. Błędny wybór protokołu może prowadzić do różnych problemów w publikacji.

Pytanie 30

Zaprezentowano kod tabeli o wymiarach 3x2. Jaką zmianę wprowadzić w jej drugim wierszu, aby tabela była zgodna z obrazkiem ukazującym niewidoczny wiersz?

Ilustracja do pytania
A. <tr style="visibility: hidden">
B. <tr style="display: table-cell">
C. <tr style="display: none">
D. <tr style="clear: none">
Stosowanie stylu display: none w tabeli spowodowałoby całkowite usunięcie wiersza z układu, co oznacza, że nie tylko zawartość, ale i przestrzeń, którą zajmuje wiersz, zniknęłaby. To wpływa na pozostałe elementy tabeli, zmieniając jej układ i potencjalnie zaburzając całość kompozycji. Z kolei użycie clear: none w tym kontekście jest błędne, ponieważ clear dotyczy przepływu floatów, a nie bezpośrednio ukrywania lub pokazywania elementów. Ustawienie display: table-cell jest także nieodpowiednie, gdyż odnosi się do właściwości display elementów, które powinny być traktowane jako komórki tabeli, a nie całe wiersze. Typowym błędem jest mylenie visibility: hidden z display: none; pierwsza opcja powoduje ukrycie zawartości, ale zachowanie miejsca, co jest ważne w kontekście dynamicznych układów stron. Błędne rozumienie, jak różne style wpływają na układ dokumentu, może prowadzić do problemów z responsywnością i dostępnością projektu. Dobrym zwyczajem jest dokładne testowanie efektów używanych właściwości CSS, aby zrozumieć ich praktyczny wpływ na HTML, co jest kluczowe w zaawansowanym projektowaniu stron internetowych.

Pytanie 31

Tabele: Studenci, Zapisy, Zajecia są powiązane relacją. Aby wybrać jedynie nazwiska studentów oraz odpowiadające im idZajecia dla studentów z grupy 15, należy wydać kwerendę

Ilustracja do pytania
A. SELECT nazwisko, idZajecia FROM Studenci INNER JOIN Zapisy ON Studenci.id = Zapisy.idStudenta;
B. SELECT nazwisko, idZajecia FROM Studenci INNER JOIN Zapisy WHERE grupa= 15;
C. SELECT nazwisko, idZajecia FROM Studenci JOIN Zapisy ON Studenci.id = Zapisy.idZajecia WHERE grupa = 15;
D. SELECT nazwisko, idZajecia FROM Studenci JOIN Zapisy ON Studenci.id = Zapisy.idStudenta WHERE grupa = 15;
Wśród proponowanych rozwiązań pojawiają się charakterystyczne błędy, często spotykane przy pierwszych próbach pracy z relacyjnymi bazami danych. Bardzo łatwo jest pomylić się na etapie łączenia tabel, zwłaszcza gdy nie do końca rozumie się, jak działa klucz główny i obcy w praktyce. Jeden z typowych problemów polega na pominięciu warunku określającego, w jaki sposób tabele mają być połączone – wtedy system bazodanowy tworzy tzw. iloczyn kartezjański, czyli paruje każdy rekord z jednej tabeli z każdym z drugiej, co zwykle daje absurdalnie dużo wyników i nie ma nic wspólnego z rzeczywistością. Popularny błąd to też użycie niewłaściwych pól do łączenia – np. próba połączenia idStudenta z idZajecia, które są ze sobą kompletnie niepowiązane, bo reprezentują dwa różne byty. Z mojego doświadczenia wynika, że często myli się pole id w tabeli Studenci z polem idZajecia w tabeli Zapisy – to są zupełnie inne klucze i nie mają prawa się zgadzać. Inna pułapka pojawia się, gdy zapomni się o warunku WHERE filtrującym po konkretnej grupie, przez co wynik zawiera dane wszystkich studentów, a nie tylko tych z interesującej nas grupy. Trzeba też pamiętać, że poprawna kolejność oraz jawne stosowanie JOIN z warunkiem ON to nie tylko kwestia składni, ale i wydajności oraz czytelności kodu. Warto mocno utrwalić sobie, że łączenie przez JOIN i jasno określony warunek ON to podstawa dobrej praktyki i niemal zawsze sprawdza się przy pracy z większymi, złożonymi bazami danych – zupełnie inaczej niż domyślne, niejawne łączenia czy łączenie po złych polach.

Pytanie 32

W firmowej tabeli znajdują się kolumny: nazwa, adres, NIP, obrót (obrót w ostatnim miesiącu), rozliczenie oraz status. Po wykonaniu kwerendy SQL

SELECT nazwa, NIP FROM firmy WHERE obrot < 4000;
na ekranie pojawią się:
A. tylko nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł
B. wszystkie informacje o firmach, które w ostatnim miesiącu uzyskały obrót co najmniej 4000 zł
C. wszystkie informacje o firmach, które w ostatnim miesiącu miały obrót poniżej 4000 zł
D. tylko nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł
W tej kwerendzie SQL chodziło o to, aby zrozumieć, że zapytanie 'SELECT nazwa, NIP FROM firmy WHERE obrót < 4000;' zwróci tylko nazwy firm i ich numery NIP. Tylko te firmy, co miały obrót poniżej 4000 zł w ostatnim miesiącu. SQL jako język zapytań daje nam możliwość wybierania konkretnych kolumn z tabeli i filtrowania wyników według różnych warunków. Tu wybraliśmy kolumny 'nazwa' i 'NIP', a filtr 'WHERE obrót < 4000' pokazuje nam tylko te firmy, które spełniają ten warunek. To bardzo ważne w praktycznym użyciu SQL, bo często musimy wyświetlać dane według określonych kryteriów. Dzięki temu zapytaniu łatwo możemy zidentyfikować firmy, które mogą potrzebować wsparcia finansowego lub jakiejś pomocy z powodu niskiego obrotu.

Pytanie 33

Aby zaktualizować maksymalną długość kolumny imie w tabeli klienci do 30 znaków, należy zastosować w języku SQL poniższy kod

A. ALTER TABLE klienci MODIFY COLUMN imie VARCHAR(30);
B. ALTER TABLE klienci CHANGE imie TEXT;
C. CHANGE TABLE klienci TO COLUMN imie SET CHAR(30);
D. CHANGE TABLE klienci MODIFY imie CHAR(30);
Odpowiedź ALTER TABLE klienci MODIFY COLUMN imie VARCHAR(30) jest poprawna, ponieważ w SQL polecenie ALTER TABLE służy do modyfikacji struktury istniejącej tabeli. W tym przypadku zmieniamy długość pola 'imie' w tabeli 'klienci'. Typ danych VARCHAR (zmienna długość) jest odpowiedni dla pól, które mogą przechowywać tekst o różnej długości, a określenie 30 oznacza, że maksymalna długość tego pola będzie wynosić 30 znaków. Używanie VARCHAR zamiast CHAR jest dobrą praktyką w przypadku, gdy długość danych jest zmienna, co pozwala na oszczędność miejsca w bazie danych. Przykładowo, jeśli tabela przechowuje imiona, które w większości będą krótsze niż 30 znaków, zastosowanie VARCHAR skutkuje mniejszym zużyciem miejsca w porównaniu do CHAR, który zawsze rezerwuje tę samą ilość miejsca. Warto również pamiętać, że przy modyfikowaniu tabeli w SQL należy zachować ostrożność, aby uniknąć utraty danych, szczególnie jeśli zmieniamy typ danych lub długość pola już zawierającego dane.

Pytanie 34

Podczas walidacji strony napotkano błąd. Co to oznacza?

Ilustracja do pytania
A. oznaczenie ISO-8859-2 jest nieprawidłowe
B. w atrybucie charset dopuszczalna jest wyłącznie wartość "utf-8"
C. znacznik meta nie zawiera atrybutu charset
D. określenie kodowania znaków musi być zapisane bez użycia myślników
Odpowiedź jest poprawna ponieważ współczesne standardy tworzenia stron internetowych wymagają kodowania znaków w formacie UTF-8. Specyfikacja HTML5 zaleca używanie UTF-8 jako domyślnego kodowania ze względu na jego wszechstronność i szerokie wsparcie dla różnych znaków i symboli. UTF-8 jest kompatybilny z wieloma językami i zapewnia, że strony internetowe będą prawidłowo wyświetlane na różnych urządzeniach i przeglądarkach. Korzystanie z UTF-8 eliminuje również problemy związane z niepoprawnym wyświetlaniem znaków specjalnych co jest częstym problemem w kodowaniach takich jak ISO-8859-2. W praktyce oznacza to że wszystkie nowe projekty stron internetowych powinny deklarować kodowanie UTF-8 w znaczniku meta. Na przykład poprawnie zdefiniowany znacznik wyglądałby następująco meta charset="utf-8". Dobrym podejściem jest również upewnienie się że zarówno pliki HTML jak i serwer są zgodne z tym ustawieniem co zapobiega potencjalnym konfliktom Użycie UTF-8 zgodne jest z najlepszymi praktykami branżowymi wspierającymi tworzenie dostępnych i zróżnicowanych treści internetowych.

Pytanie 35

Funkcją języka PHP tworzącą ciasteczko (cookie) jest:

A.
addcookie()
B.
echocookie()
C.
createcookie()
D.
setcookie()
Ciasteczko tworzy w PHP funkcja setcookie(), np. setcookie("jezyk", "pl", time()+3600) ustawia cookie o nazwie „jezyk”, wartości „pl” i ważności godzinę. Wysyła ją serwer w nagłówku odpowiedzi, dlatego setcookie() musi zostać wywołana PRZED jakimkolwiek wypisaniem treści strony. Przy kolejnych żądaniach przeglądarka odsyła ciasteczko, a odczytuje się je z tablicy $_COOKIE. Dlatego do utworzenia ciasteczka służy setcookie().

Pytanie 36

Głównym celem systemu CMS jest oddzielenie treści portalu informacyjnego od jego wyglądu. Taki efekt osiąga się przez generowanie zawartości

A. ze statycznych plików HTML oraz wyglądu za pomocą technologii FLASH
B. z bazy danych oraz wyglądu ze zdefiniowanego szablonu
C. z bazy danych oraz wyglądu za pomocą atrybutów HTML
D. ze statycznych plików HTML oraz wyglądu ze zdefiniowanego szablonu
Wybór błędnych odpowiedzi wskazuje na niepełne zrozumienie architektury systemów zarządzania treścią. Odpowiedzi sugerujące generowanie zawartości z 'statycznych plików HTML' nie uwzględniają kluczowej zasady, jaką jest elastyczność i efektywność dynamicznego zarządzania treścią. Statyczne pliki HTML są trudne do aktualizacji, co powoduje, że zmiany w treści są czasochłonne i zwiększają ryzyko błędów. Przykładowo, w przypadku wprowadzenia istotnych zmian w treści, takich jak aktualizacje informacji o produktach, każda zmiana wymagałaby ręcznej edycji wielu plików, co jest niepraktyczne i nieefektywne. Ponadto, wykorzystanie technologii FLASH do generowania wyglądu jest przestarzałym podejściem, które nie jest już wspierane przez większość nowoczesnych przeglądarek internetowych. FLASH nie tylko ogranicza dostępność treści na urządzeniach mobilnych, ale także stwarza zagrożenia związane z bezpieczeństwem. Ostatecznie, podejścia te nie są zgodne z najlepszymi praktykami branżowymi, które kładą nacisk na wykorzystanie responsywnych, łatwych w zarządzaniu szablonów i dynamicznych baz danych, co jest kluczowe dla sukcesu nowoczesnych aplikacji internetowych.

Pytanie 37

Wskaż poprawne stwierdzenie dotyczące poniższej definicji stylu:

<style>
<!--
P{color:blue; font-size:14pt; font-style:italic}
A{font-size: 16pt ; text-transform:lowercase;}
TD.niebieski {color: blue}
TD.czerwony {color: red}
-->
</style>
A. Odnośnik będzie napisany czcionką 14 punktów
B. Określono dwie kategorie
C. Akapit będzie konwertowany na małe litery
D. To jest styl lokalny
Styl lokalny to takie style, które dodaje się bezpośrednio w plikach HTML, często w tagu style lub jako atrybut style w elementach HTML. W tym przypadku mamy do czynienia z osobnym blokiem CSS, więc nie jest to styl lokalny. Co do rozmiaru czcionki linku, to stwierdzenie, że ma 14 punktów, jest błędne. W kodzie CSS widzimy, że rozmiar czcionki dla elementu P to 14 punktów, ale dla elementu A jest ustawiony na 16 punktów. Często takie nieporozumienia wynikają z tego, że nie analizuje się dokładnie kodu źródłowego albo myli się różne selektory. Odnośnie transponowania akapitu na małe litery, to też nie jest poprawne, bo właściwość text-transform: lowercase dotyczy odnośników, nie akapitów. W nauce o CSS ważne jest, żeby dobrze rozumieć zasady działania i umieć rozróżniać, które selektory i właściwości stosują się do konkretnych elementów HTML. To wymaga praktyki i dokładnej analizy kodu. Zrozumienie tych rzeczy jest kluczowe w pracy nad stronami internetowymi, bo pozwala na efektywne zarządzanie stylami. Dobrze stosowane style to podstawa dla każdego, kto zajmuje się tworzeniem i utrzymywaniem stron, żeby wszystko wyglądało spójnie i działało jak trzeba.

Pytanie 38

Który typ relacji wymaga utworzenia tabeli POŚREDNIEJ łączącej klucze główne obu tabel?

A. 1..1 (jeden-do-jednego)
B. n..1 (wiele-do-jednego)
C. 1..n (jeden-do-wielu)
D. n..m (wiele-do-wielu)
Pozostałe relacje obywają się bez tabeli pośredniej. 1..n (oraz ta sama relacja widziana jako n..1) realizuje klucz OBCY po stronie „wielu”. 1..1 to także klucz obcy z ograniczeniem unikalności. Tabela pośrednia konieczna jest dopiero przy n..m.

Pytanie 39

W tabeli zadania znajduje się pole tekstowe status. Jakie zapytanie należy użyć, aby usunąć te zadania, które mają status 'zamknięte'?

A. TRUNCATE TABLE zadania;
B. DELETE FROM zadania WHERE status = 'zamknięte';
C. TRUNCATE TABLE zadania WHERE status = 'zamknięte';
D. DELETE FROM zadania;
Odpowiedź DELETE FROM zadania WHERE status = 'zamknięte' jest poprawna, ponieważ wykorzystuje standardową składnię SQL do usuwania rekordów z tabeli na podstawie zadanych warunków. W tym przypadku, kwerenda ta usuwa tylko te wiersze, które mają wartość 'zamknięte' w polu status. Jest to podejście zgodne z dobrymi praktykami, ponieważ pozwala na precyzyjne określenie, które dane mają zostać usunięte, co minimalizuje ryzyko przypadkowego usunięcia innych rekordów. Na przykład, w systemie zarządzania projektami, możemy mieć wiele zadań z różnymi statusami, takimi jak 'otwarte', 'w trakcie', czy 'zamknięte'. Użycie tej kwerendy pozwala na oczyszczenie bazy danych z nieaktualnych zadań, co jest kluczowe dla utrzymania porządku i efektywności w zarządzaniu projektami. Ponadto, stosując tę metodę, możemy w przyszłości łatwo modyfikować warunki usuwania, na przykład zmieniając status na 'wstrzymane', zachowując elastyczność w zarządzaniu danymi.

Pytanie 40

Jakie jest znaczenie powtarzania w zdefiniowanym stylu CSS?

body {
  background-image: url("rysunek.gif");
  background-repeat: repeat-y;
}
A. tła każdego z paragrafów
B. obrazu umieszczonego w tle strony w pionie
C. obrazu umieszczonego w tle strony w poziomie
D. obrazu umieszczonego przy użyciu znacznika img
Odpowiedź dotycząca powtarzania rysunku umieszczonego w tle strony w pionie jest prawidłowa ponieważ w załączonej definicji stylu CSS użyto właściwości background-repeat z wartością repeat-y Wartość ta oznacza że obrazek tła będzie powtarzał się tylko w kierunku pionowym natomiast w kierunku poziomym pozostaje pojedynczym obrazem Funkcja ta jest szczególnie przydatna gdy chcemy stworzyć efekt kontynuacji wzoru lub tekstury na całej wysokości strony ale nie potrzebujemy powtarzania w poziomie Dzięki takim właściwościom CSS jak background-image i background-repeat projektanci stron internetowych mają dużą elastyczność w rozmieszczaniu i stylizacji tła Co więcej pozwala to na optymalizację zasobów w przypadku gdy używane są małe pliki graficzne które zajmują mniej miejsca na serwerze niż duże obrazy Zrozumienie tych mechanizmów jest kluczowe dla tworzenia efektywnych i estetycznych projektów zgodnych z dobrymi praktykami branżowymi takimi jak unikanie zbędnych powtórzeń w wyglądzie strony i dostosowywanie się do różnorodnych rozdzielczości ekranów