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: 4 maja 2026 08:09
  • Data zakończenia: 4 maja 2026 08:32

Egzamin niezdany

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

Podano tabelę ksiazki z kolumnami: tytul, autor (w formacie tekstowym), cena (w formacie liczbowym). Aby zapytanie SELECT zwracało jedynie tytuły, dla których cena jest niższa niż 50zł, należy użyć:

A. SELECT ksiazki FROM tytul WHERE cena < '50 zł'
B. SELECT tytul FROM ksiazki WHERE cena > '50 zł'
C. SELECT tytul FROM ksiazki WHERE cena < 50
D. SELECT * FROM ksiazki WHERE cena < 50
W analizowanych odpowiedziach występują różnorodne błędy związane z interpretacją składni SQL oraz zasad dotyczących typów danych. Zastosowanie 'SELECT ksiazki FROM tytul WHERE cena < '50 zł';' jest błędne, ponieważ nie tylko niewłaściwie odnosi się do nazw tabeli i kolumn, ale także używa złego formatu porównania. Cena powinna być traktowana jako wartość liczbową, więc użycie apostrofów wokół '50 zł' prowadzi do błędnej interpretacji i może skutkować błędem wykonania. Kolejny błąd występuje w 'SELECT tytul FROM ksiazki WHERE cena > '50 zł';', gdzie użycie operatora '>' zupełnie ignoruje założenie dotyczące ceny, które powinno być mniejsze niż 50 zł. To pokazuje typowy problem w myśleniu o logicznych warunkach zapytań SQL, w których kluczowe jest zrozumienie, jakie dane chcemy uzyskać. W ostatniej niepoprawnej odpowiedzi 'SELECT * FROM ksiazki WHERE cena < 50;' również występuje problem, ponieważ użycie '*' zwraca wszystkie kolumny z tabeli, podczas gdy pytanie sugeruje, że interesują nas tylko tytuły. To nieefektywne podejście do wyboru danych, ponieważ może prowadzić do zbędnego obciążenia systemu. W kontekście projektowania baz danych i pisania zapytań SQL istotne jest, aby doprecyzować, które kolumny są naprawdę potrzebne oraz stosować odpowiednie typy danych, co pozwala uniknąć problemów związanych z interpretacją wartości. Kluczową nauką jest to, aby nie tylko tworzyć zapytania, ale również zrozumieć ich logikę oraz efektywność w kontekście wydajności systemu.

Pytanie 2

Dla strony internetowej stworzono grafikę rysunek.jpg o wymiarach: szerokość 200 px, wysokość 100 px. Jak można wyświetlić tę grafikę jako miniaturę – pomniejszoną z zachowaniem proporcji, używając znacznika?

A. <img src="rysunek.png" style="width: 50px">
B. <img src="rysunek.png">
C. <img src="rysunek.png" style="width: 25px; height:50px;">
D. <img src="rysunek.png" style="width: 25px; height:25px;">
Pozostałe odpowiedzi niestety nie trzymają się zasady zachowania proporcji, jak zmniejszamy grafikę. W pierwszej opcji, <img src="rysunek.png" style="width: 25px; height:50px"> zestawione wartości szerokości i wysokości są krzywe, co powoduje zniekształcenie obrazu. Oryginalny rysunek ma proporcje 2:1, a tu wychodzi 1:2, co może wprowadzać ludzi w błąd. W trzeciej opcji, <img src="rysunek.png"> brak wskazania szerokości i wysokości sprawia, że obrazek wyświetla się w swoim pierwotnym rozmiarze, a to nie jest cel, bo chcemy mieć miniaturę. A ostatnia odpowiedź, <img src="rysunek.png" style="width: 25px; height:25px;"> ustala jednakowe wymiary, przez co wychodzi kwadratowa miniaturka, co nie zgadza się z oryginalnymi proporcjami. Generalnie, niepoprawne odpowiedzi mogą wynikać z braku zrozumienia, dlaczego dbanie o proporcje w grafikach jest takie ważne. To kluczowe zagadnienie w projektowaniu stron, bo dobre proporcje to podstawa estetyki i funkcjonalności wizualnych elementów na stronie.

Pytanie 3

W PHP, aby połączyć się z bazą danych MySQL przy użyciu biblioteki mysqli, w zapisie zamieszczonym poniżej, w miejscu litery 'c' powinno się wpisać

Ilustracja do pytania
A. hasło użytkownika
B. nazwę bazy danych
C. lokalizację serwera bazy danych
D. nazwę użytkownika
Rozważając, co powinno znajdować się na miejscu oznaczonym literą 'c', należy zrozumieć, jak działa funkcja mysqli w PHP. Pierwszym argumentem jest lokalizacja serwera bazy danych, często jest to 'localhost' dla lokalnych połączeń, co może prowadzić do błędnego założenia, że to właśnie ten parametr znajduje się pod literą 'c'. Drugi parametr powinien być nazwą użytkownika bazy danych, co w kontekście bezpieczeństwa jest elementem, na który zawsze trzeba zwracać uwagę. Hasło użytkownika znajduje się na trzeciej pozycji i jest kluczowe dla zapewnienia, że tylko uprawnione osoby mogą uzyskać dostęp do bazy. Czwarty parametr to nazwa bazy danych, która jest niezbędna do określenia, z którą bazą chcemy pracować w ramach danego połączenia. Często błędnie przyjmuje się, że nazwa bazy powinna być na pierwszym miejscu, co wynika z zamieszania co do struktury danych wejściowych. Warto dodać, że lokalizacja serwera, choć czasem zaniedbywana, jest kluczowa w środowiskach rozproszonych, gdzie połączenia mogą być nawiązywane z różnych serwerów lub maszyn wirtualnych. Każdy z tych elementów jest istotny i musi być poprawnie zidentyfikowany, aby połączenie z bazą danych było skuteczne i bezpieczne. Praktyczne umiejętności w tej dziedzinie są kluczowe, zwłaszcza przy projektowaniu i wdrażaniu aplikacji działających w profesjonalnym środowisku produkcyjnym.

Pytanie 4

Który styl CSS ma najwyższy priorytet ważności w zastosowaniu do elementów dokumentu HTML?

A. Wewnętrzny arkusz stylów.
B. Styl importowany do wewnętrznego arkusza.
C. Zewnętrzny arkusz stylów.
D. Styl lokalny.
W tym zagadnieniu kluczowe jest zrozumienie, jak działa kaskada CSS i co faktycznie oznacza „priorytet ważności”. Wiele osób intuicyjnie zakłada, że skoro zewnętrzny arkusz stylów jest głównym źródłem stylowania projektu, to właśnie on ma największą moc. Inni z kolei myślą, że wewnętrzny arkusz w <style> w dokumencie HTML jest ważniejszy, bo jest bliżej elementu. Spotyka się też przekonanie, że style importowane przez @import do wewnętrznego arkusza są traktowane jako coś „bardziej aktualnego”. Wszystkie te intuicje mijają się z tym, jak faktycznie działa specyfikacja CSS. Z perspektywy przeglądarki istnieją trzy główne źródła stylów autora strony: zewnętrzne pliki .css, wewnętrzne style w sekcji <style> oraz style lokalne w atrybucie style na konkretnym elemencie. Do tego dochodzą jeszcze style domyślne przeglądarki i ewentualne style użytkownika, ale w typowym projektowaniu stron WWW skupiamy się na stylach autora. Kaskada bierze pod uwagę kilka kroków: najpierw ważność (czy jest !important), potem pochodzenie, następnie specyficzność selektora, a na końcu kolejność deklaracji. Jeśli porównujemy odpowiedzi w tym pytaniu, wszystkie dotyczą stylów autora bez !important, więc decyduje właśnie źródło i specyficzność. Zewnętrzny arkusz stylów i wewnętrzny arkusz w <style> mają w praktyce ten sam poziom „źródła”, różnią się tylko kolejnością ładowania i tym, że reguły z <style> zwykle nadpisują wcześniejsze z plików .css, jeśli mają taką samą specyficzność. Style importowane przez @import traktowane są jakby były wczytane wcześniej, więc często mają nawet mniejszy wpływ, bo są nadpisywane przez późniejsze reguły. Natomiast styl lokalny, czyli atrybut style na elemencie, ma znacznie wyższą specyficzność i to on wygrywa, o ile nie pojawiają się reguły z !important. Typowy błąd myślowy polega na mieszaniu „miejsca zapisania” z „ważnością w kaskadzie”: to, że plik zewnętrzny jest głównym nośnikiem stylów w projekcie, nie oznacza, że ma największy priorytet. Dobra praktyka front-endowa wręcz odradza nadużywanie stylu lokalnego, ale to, że coś jest niezalecane, nie zmienia faktu, że technicznie ma najwyższy priorytet spośród podanych opcji. Warto o tym pamiętać, zwłaszcza przy debugowaniu sytuacji, w których styl „nie działa” – bardzo często blokuje go właśnie jakiś inline style, który został dodany ręcznie lub przez JavaScript.

Pytanie 5

Jaką klauzulę należy użyć w instrukcji CREATE TABLE w SQL, żeby pole rekordu nie mogło być puste?

A. DEFAULT
B. NOT NULL
C. CHECK
D. NULL
Wybór odpowiedzi NULL wskazuje na nieprawidłowe zrozumienie roli tej klauzuli w kontekście tworzenia tabel w SQL. Klauzula NULL jest domyślnym ustawieniem dla kolumn, które nie zostały oznaczone jako NOT NULL. Oznacza to, że kolumna może zawierać wartości puste (NULL), co w wielu przypadkach może prowadzić do problemów z integralnością danych. Z drugiej strony, klauzula CHECK jest używana do określenia warunków, które muszą być spełnione przez dane w kolumnie, ale nie gwarantuje, że pole nie będzie puste. Może być użyta do walidacji wartości, ale nie służy do blokowania pustych wpisów. Klauzula DEFAULT pozwala na ustawienie wartości domyślnej dla kolumny, jeżeli nie zostanie podana żadna inna wartość, lecz nie chroni przed wprowadzeniem danych pustych. Typowe błędy myślowe, które prowadzą do takich niepoprawnych wniosków, to mylenie celów różnych klauzul oraz nieodróżnianie między zasadą integralności a ustawieniami domyślnymi dla kolumn. W kontekście projektowania baz danych, kluczowe jest zrozumienie, że NOT NULL ma na celu zapewnienie, że ważne dane są zawsze obecne, co jest niezbędne dla właściwego funkcjonowania aplikacji oraz analizy danych.

Pytanie 6

Aby ułatwić wprowadzanie oraz modyfikację danych w tabeli, konieczne jest zdefiniowanie

A. filtra
B. formularza
C. kwerendy SELECT
D. raportu
Odpowiedzi, które nie obejmują formularza, wskazują na pewne nieporozumienia dotyczące sposobu, w jaki użytkownicy wchodzą w interakcje z danymi w bazie danych. Kwerenda SELECT, mimo że jest fundamentalnym narzędziem do pobierania informacji, nie jest odpowiednia do wprowadzania czy edytowania danych. Kwerendy są stosowane głównie do filtrowania i prezentowania danych istniejących, a nie do ich wprowadzania. W kontekście zarządzania danymi, kwerendy powinny być używane w celu analizy danych, a nie ich modyfikacji. Z kolei filtry są narzędziami, które umożliwiają użytkownikom przeszukiwanie i wyświetlanie określonych zestawów danych, ale również nie są przeznaczone do edytowania danych. Filtry są bardziej funkcjonalne w kontekście przeglądania już wprowadzonych informacji, co nie spełnia wymogu prostoty wprowadzania danych. Raporty natomiast są używane do generowania zestawień i podsumowań danych, co jest zupełnie innym procesem niż ich wprowadzanie. Powszechnym błędem jest zrozumienie tych narzędzi jako równoważnych formularzom, co jest mylne. Właściwe podejście do zarządzania danymi w bazach danych wymaga zrozumienia ról różnych narzędzi i ich zastosowań w praktyce, co jest kluczowe dla efektywnego zbierania i zarządzania informacjami.

Pytanie 7

Jak nazywa się komponent oznaczony znakiem zapytania w architekturze platformy .NET, który pozwala na tworzenie własnych aplikacji za pomocą frameworków oraz przekształcanie skompilowanego kodu pośredniego na kod maszynowy procesora zainstalowanego w systemie?

Ilustracja do pytania
A. Wspólne środowisko programistyczne (CLP)
B. Wspólne środowisko uruchomieniowe (CLR)
C. Infrastruktura językowa (CLI)
D. Biblioteka klas bazowych (BCL)
CLR, czyli wspólne środowisko uruchomieniowe, to naprawdę ważny element platformy .NET. Odpowiada za to, jak programy napisane w różnych językach, na przykład C# czy VB.NET, są wykonywane. Działa trochę jak tłumacz między aplikacjami a systemem operacyjnym. Dzięki niemu mamy różne fajne funkcje, jak zarządzanie pamięcią, obsługa wyjątków czy bezpieczeństwo typów. CLR przekształca kod pośredni (MSIL) na kod, który rozumie procesor, co jest super, bo pozwala na działanie aplikacji na różnych sprzętach. Dobrym przykładem zastosowania CLR są aplikacje ASP.NET, gdzie zajmuje się zarządzaniem pamięcią i wydajnością kodu. Co ważne, CLR wspiera różne dobre praktyki programistyczne, takie jak DRY (Don't Repeat Yourself) czy modularność, co sprawia, że kod jest bardziej czytelny i łatwiejszy do ponownego wykorzystania. Tak więc, CLR to fundament całej platformy .NET, który pozwala na tworzenie niezawodnych i skalowalnych aplikacji.

Pytanie 8

W języku CSS zapis selektora

p > i { color: red; }
wskazuje, że kolorem czerwonym będzie sformatowany
A. wszystkie teksty w znaczniku <p> oprócz tych w znaczniku <i>
B. wszystki tekst w znaczniku <p> lub wszelkie treści w znaczniku <i>
C. tylko ten tekst w znaczniku <p>, który ma przypisaną klasę o nazwie i
D. jedynie ten tekst w znaczniku <i>, który znajduje się bezpośrednio wewnątrz znacznika <p>
Jeśli wybrałeś inne odpowiedzi, to pewnie wynika to z nieporozumienia co do tego, jak działają selektory w CSS i co się dzieje w hierarchii dokumentów HTML. Gdy wybierasz błędne opcje, często wynika to z niejasnego pojmowania relacji między różnymi elementami na stronie. Na przykład, myślenie, że każdy tekst w <p> lub <i> dostanie ten sam styl, zupełnie pomija to, że selektor '>' mówi, że styl dotyczy tylko bezpośrednich dzieci. Odrzucenie tej relacji rodzic-dziecko prowadzi do błędnego wniosku, że wszystkie elementy <p> i <i> są równorzędne. Poza tym, twierdzenie, że tekst w <p>, z wyjątkiem <i>, będzie czerwony, jest nieprawidłowe, bo selektor '>' mówi, że nie obejmuje innych elementów, a nie, że je włącza. Błędne jest również myślenie, że styl dotyczy tekstu w <p> z określoną klasą, ponieważ tu chodzi o strukturę, a nie o klasy. Warto wiedzieć, że precyzyjne selektory, jak ten w pytaniu, są bardzo ważne dla tworzenia sensownych arkuszy stylów, a ich złe zrozumienie może prowadzić do bałaganu w stylach i kłopotów w projektach webowych.

Pytanie 9

Który z akapitów został zapisany w wskazanym stylu, zakładając, że pozostałe właściwości akapitu mają wartości domyślne?

Ilustracja do pytania
A. Efekt 3
B. Efekt 2
C. Efekt 4
D. Efekt 1
W analizowanym pytaniu trzy efekty nie spełniają wszystkich warunków zdefiniowanych w stylu CSS dla paragrafu. Pierwszy efekt pokazuje tekst z niebieskim tłem który nie jest zgodny z zadanym stylem ponieważ kolor tła nie został określony w stylizacji. Zastosowanie niebieskiego tła często wynika z chęci wizualnego wyróżnienia elementu ale w tym przypadku styl określa jedynie kolor tekstu na niebieski a nie tła. Drugi efekt charakteryzuje się użyciem kursywy co również nie jest zgodne z deklaracją stylu CSS. Stylizacja paragrafu nie zawiera property font-style co oznacza że tekst powinien być w domyślnej formie czyli zwykły a nie kursywa. Trzeci i czwarty efekt mają niezgodne kolory tekstu i inne elementy które nie pasują do zadanego stylu. Typowym błędem w interpretacji stylów CSS jest niedokładne odczytanie wszystkich zdefiniowanych parametrów co prowadzi do błędnych założeń ostatecznego wyglądu elementu. Poprawne zrozumienie stylów wymaga zwrócenia uwagi na wszystkie atrybuty nawet jeśli nie są one wyraźnie widoczne na pierwszy rzut oka. W związku z tym kluczowe jest dokładne zapoznanie się z każdą definicją w stylu aby prawidłowo dopasować wygląd do specyfikacji.

Pytanie 10

Jaką wartość w systemie RGB uzyskamy dla koloru zapisanego w kodzie heksadecymalnym: #1510FE?

A. rgb(21,16,254)
B. rgb(21,16,255)
C. rgb(21,16,FE)
D. rgb(15,10,FE)
Odpowiedź rgb(21,16,254) jest poprawna, ponieważ kolor zapisany w systemie heksadecymalnym #1510FE można rozłożyć na składowe RGB. W kodzie heksadecymalnym każdy z trzech kolorów (czerwony, zielony, niebieski) jest reprezentowany przez dwie cyfry. W przypadku #1510FE, pierwsze dwie cyfry (15) odnoszą się do wartości czerwonej, drugie dwie (10) do wartości zielonej, a ostatnie dwie (FE) do wartości niebieskiej. Te wartości musimy przeliczyć na system dziesiętny: czerwony to 21 (15 w systemie szesnastkowym to 21 w dziesiętnym), zielony to 16 (10 w szesnastkowym to 16 w dziesiętnym), a niebieski to 254 (FE w szesnastkowym to 254 w dziesiętnym). Tak więc końcowy wynik to rgb(21,16,254). W praktyce, znajomość konwersji kolorów jest kluczowa w projektowaniu graficznym, stron internetowych oraz aplikacji, gdzie precyzyjne odwzorowanie kolorów jest niezbędne dla uzyskania poprawnej estetyki i spójności wizualnej. Warto zaznaczyć, że standardy takie jak sRGB są powszechnie stosowane do definiowania kolorów w cyfrowych mediach, co zapewnia zgodność i przewidywalność w różnych urządzeniach wyświetlających te kolory.

Pytanie 11

char str1[30] = 'Ala ma kota';
printf("%s", str1);
Wskaż, gdzie tkwi błąd w powyższym kodzie napisanym w języku C++?
A. Tekst powinien być zawarty w cudzysłowie.
B. Tekst powinien mieć dokładnie 30 znaków.
C. W funkcji printf nie można używać formatowania %s.
D. Do funkcji printf przekazano za mało argumentów.
Podane odpowiedzi zawierają kilka powszechnych nieporozumień dotyczących języka C/C++. Użycie 30 znaków do definiowania napisu nie jest kluczowe, ponieważ długość napisu może być zmienna, a w przypadku napisu \"Ala ma kota\" jego długość wynosi 13 znaków, co jest znacznie mniej niż 30. Definiowanie napisu w taki sposób nie stwarza problemu, o ile tablica jest wystarczająco duża, aby pomieścić cały napis wraz z terminatorem '\0'. Koncepcja przekazywania argumentów do funkcji printf również jest źle zrozumiana, ponieważ funkcja ta przyjmuje jako argument wskaźnik do napisu, a nie liczbę argumentów. Wspomnienie o formacie %s w funkcji printf jest mylące, ponieważ format procentowy %s jest poprawny i stosowany w celu wyświetlenia łańcucha tekstowego. To są standardowe praktyki w C/C++, a ich nieznajomość może prowadzić do błędnych wniosków. Istotne jest rozumienie, że każdy z tych błędów wynika z niepełnego zrozumienia zasad działania języka, co może prowadzić do trudności w pisaniu poprawnego kodu. Właściwa interpretacja tych zasad jest niezbędna do skutecznego programowania.

Pytanie 12

Rezultatem działania zamieszczonej pętli napisanej w języku PHP jest wypisanie następujących liczb

Ilustracja do pytania
A. od 1 do 10
B. od 2 do 10
C. od 10 do 1
D. od 10 do 2
Pętla for w języku PHP umożliwia iteracyjne wykonywanie kodu w określonym zakresie wartości. W analizowanym przypadku pętla rozpoczyna się od wartości $i = 10, a kończy się, gdy $i jest większe lub równe 1, co oznacza że pętla iteruje w kierunku malejącym. Wybranie odpowiedzi od 10 do 2 lub od 1 do 10 świadczy o braku zrozumienia działania warunku i kroku iteracyjnego. W pętli z dekrementacją, jak $i--, zmniejszamy wartość zmiennej w każdej iteracji. Niezrozumienie tego mechanizmu często prowadzi do błędnych odpowiedzi. W przypadku innych wyborów odpowiedzi można wnioskować że warunek zakończenia pętli został błędnie zinterpretowany, co wskazuje na brak uwagi przy analizie kodu. Typowym błędem w takich przypadkach jest założenie że pętla działała jak typowa iteracja w przód, co nie jest prawdą w tym kontekście. Dla programistów ważne jest zrozumienie, jak każda część pętli wpływa na wykonanie programu, co pozwala unikać problemów w kodzie związanych z nieoczekiwanym zakończeniem pętli lub błędnym wykonywaniem iteracji. Takie zrozumienie jest kluczowe w tworzeniu efektywnych i niezawodnych aplikacji.

Pytanie 13

Podana linia kodu została napisana w języku?

document.getElementById("paragraf1").innerHTML = wynik;
A. JavaScript
B. Python
C. PHP
D. C#
Odpowiedzi C#, PHP i Python nie są poprawne w kontekście przedstawionego kodu. C# to język programowania ogólnego przeznaczenia, stosowany głównie w aplikacjach systemowych i webowych z użyciem ASP.NET, gdzie nie ma bezpośredniego odniesienia do struktury DOM. PHP to język skryptowy używany głównie po stronie serwera, co oznacza, że nie jest odpowiedni do manipulacji DOM w czasie rzeczywistym na stronie klienta. Jego rola polega na generowaniu HTML, który następnie zostaje przesłany do przeglądarki, ale nie jest używany do dynamicznej interakcji po załadowaniu strony. Python, choć jest wszechstronny i może być używany w kontekście aplikacji webowych (np. z frameworkiem Django), również nie jest językiem używanym do manipulacji DOM bezpośrednio w przeglądarkach. Typowe błędy, które mogą prowadzić do mylnych wniosków, to mieszanie ról języków programowania – niektóre są przeznaczone do działania po stronie serwera, inne po stronie klienta. Zrozumienie tych różnic jest kluczowe dla prawidłowego korzystania z narzędzi i technologii webowych.

Pytanie 14

Podaj definicję metody, którą trzeba umieścić w miejscu kropek, aby na stronie WWW pojawił się tekst: Jan Kowalski

Ilustracja do pytania
A. D
B. C
C. B
D. A
Pozostałe odpowiedzi zawierają błędy związane z niepoprawnym użyciem kontekstu this lub niekompletną definicją funkcji. W opcji B metoda dane została zdefiniowana jako funkcja globalna, co powoduje, że this nie odnosi się do obiektu osoba, ale do obiektu globalnego, co uniemożliwia poprawne odwołanie się do właściwości imie i nazwisko. To prowadzi do błędnych lub niezdefiniowanych wyników, ponieważ this w tym kontekście nie zawiera oczekiwanych właściwości. Opcja C nie używa słowa kluczowego this, co oznacza, że zmienne imie i nazwisko są traktowane jako zmienne globalne, a nie właściwości obiektu osoba. Jeżeli takie zmienne globalne nie istnieją, powoduje to błąd w wykonaniu, ponieważ kod próbuje odwołać się do niezdefiniowanych zmiennych. W opcji D użycie funkcji bez return powoduje, że metoda dane nie zwraca żadnej wartości, co skutkuje przypisaniem undefined do innerHTML, co jest oczywistym błędem w kontekście oczekiwanego wyświetlenia tekstu. Wszystkie te błędne podejścia wynikają z niepoprawnego zarządzania kontekstem obiektowym w JavaScript, co podkreśla znaczenie zrozumienia wiązania dynamicznego słowa kluczowego this i dobrych praktyk w projektowaniu metod obiektowych w JavaScript. Kluczowym aspektem jest zapewnienie, że metody mają dostęp do właściwości obiektu, w ramach którego zostały zdefiniowane, co jest osiągane przez poprawne użycie this w kontekście metody wewnętrznej obiektu.

Pytanie 15

Jak można umieścić komentarz w kodzie PHP, używając odpowiednich symboli?

A. <? ... ?>
B. /* ... */
C. <!-- ... -->
D. /? ... ?/
Pierwsza z podanych opcji, używająca składni '/? ... ?/', nie jest poprawnym sposobem na tworzenie komentarzy w PHP. Taka składnia nie jest zgodna z żadnym standardowym formatem komentarzy w tym języku, co czyni ją nieaktywną i nieczytelną dla interpretera. Z kolei opcja z '<? ... ?>' jest oznaczeniem bloku PHP, który pozwala na wstawienie kodu PHP w plikach HTML, ale nie jest przeznaczona do tworzenia komentarzy. Komentarze w PHP nie są interpretowane w obrębie takich znaczników, a ich działanie jest całkowicie inne. Z kolei użycie znaku '<!-- ... -->' jest typowe dla HTML, a nie dla PHP. Chociaż takie komentarze są używane do wykluczania fragmentów kodu HTML, nie będą skuteczne w kodzie PHP, gdyż interpreter PHP ich nie zrozumie. W PHP stosujemy wyłącznie standardowe oznaczenia komentarzy, aby zapewnić, że kod będzie działał poprawnie oraz aby uniknąć błędów w interpretacji skryptu.

Pytanie 16

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

A. W sekcji nagłówkowej dokumentu
B. W skrypcie dołączonym do dokumentu
C. W sekcji treści strony
D. W obrębie znacznika, którego dotyczy styl
Umieszczanie wewnętrznego arkusza stylów w ciele strony jest niepoprawną praktyką, ponieważ skutkuje opóźnieniem w załadowaniu i renderowaniu CSS. Przeglądarki interpretują HTML od góry do dołu, co oznacza, że style zdefiniowane w ciele strony mogą nie być zastosowane, zanim przeglądarka dotrze do odpowiedniego miejsca, co prowadzi do niepożądanego efektu wizualnego, nazywanego 'flash of unstyled content' (FOUC). Kolejnym błędnym podejściem jest umieszczanie arkusza stylów wewnątrz skryptu dołączonego do strony. Takie działanie jest sprzeczne z semantyką HTML i może powodować trudności w utrzymaniu oraz błędy w interpretacji przez przeglądarki. Skrypty powinny być odpowiedzialne za logikę i interaktywność, natomiast arkusze stylów powinny być wyraźnie oddzielone jako elementy zarządzające wyglądem. Ostatnia niepoprawna odpowiedź dotyczy umieszczania stylów wewnątrz znacznika, którego styl dotyczy. Choć technicznie jest to możliwe, nie jest to zalecana praktyka, ponieważ wprowadza chaos w strukturze dokumentu HTML i utrudnia jego późniejsze modyfikacje. Tego rodzaju podejście prowadzi do problemów z zarządzaniem kodem i obniża jego przejrzystość, szczególnie w większych projektach, gdzie lepszym rozwiązaniem jest stosowanie dedykowanych arkuszy stylów.

Pytanie 17

Jaki format CSS dla akapitu definiuje styl szarej ramki z następującymi cechami?

p {
  padding: 15px;
  border: 2px dotted gray; }
A. linia kreskowa; grubość 2 px; marginesy poza ramką 15 px
B. linia kropkowa; grubość 2 px; marginesy między tekstem a ramką 15 px
C. linia ciągła; grubość 2 px; marginesy poza ramką 15 px
D. linia ciągła; grubość 2 px; marginesy między tekstem a ramką 15 px
Odpowiedzi, które sugerują inne rodzaje obramowań, nie są zgodne z przedstawionym kodem CSS. Linia ciągła, określana jako 'solid', różni się od linii kropkowanej 'dotted', ponieważ jest to ciągła linia bez przerw. Wybór typu linii jest istotny w kontekście wizualnej prezentacji treści i ma wpływ na percepcję estetyczną strony internetowej. Ponadto, odpowiedzi sugerujące marginesy poza ramką zamiast marginesów wewnętrznych wprowadzają błąd w interpretacji właściwości 'padding'. 'Padding' odnosi się do przestrzeni wewnątrz elementu, pomiędzy jego zawartością a granicą, a nie do zewnętrznej przestrzeni między elementem a otaczającymi go obiektami, która jest kontrolowana za pomocą właściwości 'margin'. Tego typu błędne rozumienie może prowadzić do nieprawidłowego stylizowania elementów na stronie, co skutkuje nieestetycznym układem treści i pogorszoną czytelnością. Warto zawsze dokładnie zapoznać się z definicjami i działaniem poszczególnych właściwości CSS, aby unikać takich pomyłek. Zrozumienie różnicy między 'padding' a 'margin' jest kluczowe dla poprawnego projektowania układów stron zgodnie z najlepszymi praktykami w branży web designu

Pytanie 18

Jakie ustawienia dotyczące czcionki będą miały zastosowanie w przypadku kodu CSS?

* {
    font-family: Tahoma;
    color: Teal;
}
A. wszystkiego kodu HTML, niezależnie od kolejnych ustawień CSS.
B. znaczników o identyfikatorze równym *.
C. znaczników z klasą przypisaną jako *.
D. wszystkiego kodu HTML, jako domyślne formatowanie dla wszystkich elementów strony.
Nieprawidłowe odpowiedzi wskazują na nieporozumienie dotyczące działania selektorów w CSS oraz hierarchii stylów. Przykłady wskazujące na znaczenie id lub klas w kontekście selektora * są mylące, gdyż id i klasy są w CSS bardziej specyficznymi selektorami, które służą do stylizowania konkretnej grupy elementów, podczas gdy selektor uniwersalny działa na wszystkie elementy. Argumentowanie, że formatowanie dotyczy elementów o id równym * jest błędne, ponieważ id nie może być równy znaku *, a jego zastosowanie ogranicza się do unikalnych identyfikatorów. Podobnie, przypisanie klasy równą * jest niemożliwe do zrealizowania w praktyce. Odpowiedź sugerująca, że styl dotyczy całego kodu HTML w kontekście specyficznych ustawień CSS jest również myląca, ponieważ nie uwzględnia faktu, że późniejsze reguły CSS mogą nadpisywać wcześniejsze style. W praktyce oznacza to, że jeśli na elementach zastosowane zostaną bardziej szczegółowe selektory, mogą one zmienić wygląd tych elementów, co obala tezę o domyślnym formatowaniu. Takie podejście nie uwzględnia także koncepcji kaskadowości stylów, która jest kluczowym elementem funkcjonowania CSS, gdzie kolejność i specyficzność selektorów odgrywają kluczową rolę w aplikowaniu stylów. W efekcie, zrozumienie działania selektorów i ich hierarchii jest niezbędne dla efektywnego wykorzystania CSS w projektowaniu stron internetowych.

Pytanie 19

W systemie PHP złożono zapytanie SELECT do bazy przy pomocy funkcji mysqli_query. Jaką funkcję powinien wykorzystać użytkownik, aby ustalić liczbę rekordów, które zwróciło to zapytanie?

A. mysqli_connect
B. mysqli_num_rows
C. mysqli_query
D. mysqli_fetch_row
Wybór innych funkcji jako odpowiedzi na pytanie jest niezgodny z ich rzeczywistym przeznaczeniem w kontekście analizy wyników zapytań w PHP. Funkcje takie jak mysqli_fetch_row służą do pobierania pojedynczego wiersza z zestawu wyników i nie dostarczają informacji o łącznej liczbie rekordów. Użycie tej funkcji może prowadzić do błędnych wniosków, gdyż zamiast podać liczbę wyników, zwraca jedynie dane jednego wiersza. Innym przykładem jest mysqli_query, która jest odpowiedzialna za wykonanie zapytania, ale nie oferuje metody na określenie ilości zwróconych rekordów. Podobnie, mysqli_connect jest funkcją do nawiązywania połączenia z bazą danych, co jest zupełnie nieadekwatne w kontekście analizy wyników zapytań. Użytkownicy często mylą te funkcje, ponieważ wszystkie są częścią pakietu MySQLi, jednak każda z nich ma swoje specyficzne zastosowanie. Właściwe zrozumienie roli poszczególnych funkcji jest kluczowe dla efektywnej pracy z bazami danych w PHP. Ignorowanie tego może prowadzić do nieefektywnego kodu oraz problemów z wydajnością aplikacji. Dlatego ważne jest, aby przed przystąpieniem do pisania zapytań zrozumieć, jakie funkcje będą potrzebne i jakie dane chcemy uzyskać.

Pytanie 20

W jaki sposób funkcjonuje instrukcja do łączenia wyników zapytań INTERSECT w SQL?

A. Zwraca te wiersze, które wystąpiły w wyniku drugiego zapytania, natomiast nie było ich w wyniku pierwszego zapytania
B. Zwraca te wiersze, które wystąpiły w wyniku pierwszego zapytania, jednak nie były obecne w wyniku drugiego zapytania
C. Zwraca zbiór wyników z pierwszego zapytania oraz zbiór wyników z drugiego zapytania, automatycznie eliminując powtarzające się wiersze
D. Zwraca część wspólną wyników dwóch zapytań
Wszystkie niepoprawne odpowiedzi nie oddają istoty działania instrukcji INTERSECT. Opis dotyczący zwracania listy wyników z obu zapytań oraz usuwania powtarzających się wierszy jest mylący, ponieważ INTERSECT nie łączy wyników, lecz filtruje je, ograniczając się tylko do wspólnych wierszy. Ponadto wskazanie, że instrukcja ta zwraca wiersze z pierwszego zapytania, które nie znajdują się w drugim, jest błędne, ponieważ dotyczy to operatora EXCEPT, który działa na zasadzie różnicy zbiorów. Również stwierdzenie, że INTERSECT zwraca wiersze z drugiego zapytania, które nie występują w pierwszym, również jest mylące i nie ma podstaw w rzeczywistości działania tej instrukcji. W rzeczywistości, INTERSECT nie operuje na zasadzie różnic, lecz na zasadzie przecięcia zbiorów, co oznacza, że korzysta z logiki logicznego AND, a nie OR. Podsumowując, kluczowym elementem użycia INTERSECT jest zrozumienie, że jego zadaniem jest wyodrębnienie wspólnych elementów, co czyni go narzędziem do porównywania i analizy danych, a nie do łączenia ich czy analizy różnic.

Pytanie 21

W poniższym kodzie PHP wykonano operację na bazie danych. Której funkcji należy użyć, aby pobrać liczbę zmienionych w tabeli wierszy?

$zapytanie="UPDATE kadra SET stanowisko='Programista' WHERE id < 10";
mysqli_query($db, $zapytanie);
A. mysqli_num_rows()
B. mysqli_field_count()
C. mysqli_affected_rows()
D. mysqli_use_result()

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Gratulacje! Wybrałeś poprawną odpowiedź, która jest funkcją mysqli_affected_rows(). Ta funkcja jest specyficzna dla języka PHP i jest używana do zwracania liczby wierszy, które zostały zmienione, dodane lub usunięte przez ostatnie wywołanie funkcji mysqli_query() na serwerze MySQL. W kontekście operacji takich jak INSERT, UPDATE, REPLACE lub DELETE, mysqli_affected_rows() jest nieocenionym narzędziem do śledzenia ilości wykonanych zmian w bazie danych. Dlatego właśnie w przypadku przedstawionego pytania, gdzie w kodzie PHP wykonano operację UPDATE na bazie danych, idealnym rozwiązaniem jest użycie funkcji mysqli_affected_rows() do pobrania liczby zmienionych wierszy. Jest to kluczowe zrozumienie, aby efektywnie manipulować danymi w bazach danych MySQL za pomocą języka PHP.

Pytanie 22

Jakie polecenie wydane w terminalu systemu operacyjnego, które zawiera w swojej składni opcję --repair, pozwala na naprawę bazy danych?

A. mysqldump
B. mysqlcheck
C. truncate
D. create

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź "mysqlcheck" jest prawidłowa, ponieważ polecenie to jest częścią systemu zarządzania bazą danych MySQL i służy do sprawdzania oraz naprawy tabel w bazach danych. Użycie opcji <b>--repair</b> pozwala na automatyczne naprawienie uszkodzonych tabel, co jest kluczowe w przypadku wystąpienia błędów spowodowanych awarią systemu czy błędami w aplikacjach. Przykładowe użycie polecenia: "mysqlcheck --repair --databases nazwa_bazy". Warto podkreślić, że regularne sprawdzanie i naprawa tabel są elementami dobrych praktyk zarządzania bazą danych, które pomagają w utrzymaniu integralności danych i dostępności systemu. Oprócz opcji naprawy, mysqlcheck oferuje także inne funkcje, takie jak optymalizacja tabel, co przyczynia się do poprawy wydajności bazy. W przypadku dużych baz danych, efektywne zarządzanie i konserwacja są kluczowe dla zapewnienia wysokiej dostępności oraz niezawodności systemu. Używanie mysqlcheck zgodnie z dokumentacją MySQL pozwala na skuteczne zajmowanie się problemami, które mogą się pojawić.

Pytanie 23

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="display: table-cell">
B. <tr style="visibility: hidden">
C. <tr style="display: none">
D. <tr style="clear: none">

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Użycie stylu visibility: hidden w wierszu tabeli powoduje, że zawartość tego wiersza staje się niewidoczna, ale miejsce w dokumencie HTML, które zajmuje, pozostaje. Jest to przydatne, gdy chcemy zachować układ tabeli bez zmiany jej struktury, co ma znaczenie w projektach, gdzie layout musi pozostać spójny. Jest to różne od display: none, który całkowicie usuwa element z układu, co może prowadzić do zmiany położenia innych elementów. Zastosowanie visibility: hidden jest zgodne z dobrymi praktykami w przypadkach, gdy potrzebujemy ukryć elementy bez wpływu na otaczający je układ. Metoda ta jest często używana w scenariuszach dynamicznych interfejsów użytkownika, gdzie elementy mogą być tymczasowo ukrywane lub pokazywane bez restrukturyzacji całego layoutu. To podejście wspiera również koncepcje dostępności, gdyż ukryte w ten sposób treści mogą być dostępne dla technologii wspomagających, takich jak czytniki ekranu, w zależności od implementacji innych atrybutów.

Pytanie 24

W trakcie weryfikacji stron internetowych nie uwzględnia się

A. działania hiperłączy
B. błędów w składni kodu
C. źródła pochodzenia narzędzi edytorskich
D. zgodności z różnymi przeglądarkami

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Walidacja stron internetowych to proces, który ma na celu zapewnienie, że HTML, CSS oraz inne elementy technologii webowych są zgodne ze standardami określonymi przez W3C (World Wide Web Consortium). W kontekście walidacji nie bada się źródła pochodzenia narzędzi edytorskich, ponieważ te narzędzia, takie jak edytory tekstu czy IDE (Integrated Development Environment), są jedynie medium do tworzenia kodu, a nie jego treści. Z perspektywy walidacji, kluczowe jest, aby kod był syntaktycznie poprawny oraz spełniał standardy interoperability, takie jak HTML5 czy CSS3. Przykładem walidacji może być użycie narzędzi takich jak W3C Validator, które analizują kod strony i wskazują błędy składniowe, problemy z dostępnością oraz niezgodności z różnymi przeglądarkami. Dzięki walidacji, developers mogą zapewnić, że ich strony będą działały poprawnie na różnych urządzeniach i przeglądarkach, co wpływa na lepsze doświadczenia użytkowników. Walidacja jest zatem kluczowym krokiem w procesie tworzenia stron internetowych, zapewniającym ich jakość i zgodność ze światowymi standardami.

Pytanie 25

Jaki jest cel funkcji napisanej w PHP?

function fun1($liczba)
{
  if($liczba % 2 == 0)
    return 1;

  return 0;
}
A. Zwrócenie wartości 0, gdy liczba jest parzysta
B. Zwrócenie wartości 1, gdy liczba jest parzysta
C. Wypisanie liczby nieparzystej
D. Wypisanie liczby parzystej

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja w języku PHP została zaprogramowana w taki sposób, aby najpierw sprawdzić, czy podana liczba jest parzysta, używając operatora modulo (%). Operacja $liczba % 2 == 0 sprawdza resztę z dzielenia przez 2, która dla liczb parzystych wynosi 0. Jeśli warunek jest spełniony, funkcja natychmiast zwraca wartość 1, co oznacza, że liczba jest parzysta. Taki sposób kodowania jest wydajny, ponieważ funkcja zakończy działanie natychmiast po spełnieniu warunku, bez dalszego przetwarzania. Jest to dobry przykład stosowania operacji warunkowych w funkcjach, co jest zgodne z dobrymi praktykami programistycznymi, zwłaszcza gdy zależność logiczna jest prosta i może być szybko zidentyfikowana. Takie funkcje często wykorzystywane są w systemach walidacji danych, gdzie szybkie potwierdzenie poprawności danych jest kluczowe dla wydajności całego systemu. Pozwala również na łatwe rozszerzenie logiki, jeśli w przyszłości zajdzie taka potrzeba.

Pytanie 26

Do uruchomienia systemu CMS Joomla!, dla domyślnej konfiguracji, wymagane jest środowisko

A. Apache, PHP i MySQL
B. Python i MySQL
C. IIS, PERL i MySQL
D. C++ i MySQL

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawnie – Joomla! w swojej domyślnej, typowej instalacji działa w klasycznym stosie LAMP/WAMP, czyli serwer HTTP Apache, interpreter PHP oraz baza danych MySQL (obecnie często MariaDB, ale w praktyce nadal mówi się „MySQL”). Joomla! to system CMS napisany w PHP, więc potrzebuje środowiska, które potrafi wykonywać kod PHP po stronie serwera. Apache jest jednym z najpopularniejszych serwerów WWW, świetnie współpracuje z PHP poprzez moduł mod_php albo PHP-FPM i jest standardowo wspierany w dokumentacji Joomla!. Baza MySQL służy do przechowywania wszystkich treści: artykułów, użytkowników, menu, modułów, konfiguracji. Podczas instalacji Joomla! tworzy tabele w MySQL, zapisuje tam dane konfiguracyjne i później przy każdym wyświetleniu strony pobiera je zapytaniami SQL. W praktyce, jeśli stawiasz Joomla! na hostingu współdzielonym, dostajesz właśnie taki zestaw: Apache + PHP + MySQL, często z panelem typu cPanel lub DirectAdmin. To jest zgodne z dobrymi praktykami w branży webowej – prosty, sprawdzony stos, łatwy w administracji i dobrze udokumentowany. Moim zdaniem to też wygodne na etapie nauki: możesz lokalnie postawić XAMPP, WAMP lub Laragon i bez kombinowania odpalić Joomla! na swoim komputerze. W świecie produkcyjnym coraz częściej używa się też Nginx zamiast Apache, ale w treści pytania jest mowa o domyślnej, typowej konfiguracji, a tutaj dalej króluje Apache z PHP i MySQL jako standardowe, rekomendowane środowisko.

Pytanie 27

Który efekt został zaprezentowany na filmie?

A. Zmiana jasności zdjęć.
B. Przenikanie zdjęć.
C. Zmniejszenie kontrastu zdjęcia.
D. Zwiększenie ostrości zdjęcia.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawnie wskazany efekt to przenikanie zdjęć, często nazywane też płynnym przejściem (ang. crossfade). Polega to na tym, że jedno zdjęcie stopniowo zanika, jednocześnie drugie pojawia się z narastającą widocznością. W praktyce technicznej realizuje się to najczęściej przez zmianę przezroczystości (opacity) dwóch warstw – jedna warstwa z pierwszym obrazem ma zmniejszaną wartość opacity z 1 do 0, a druga z kolejnym zdjęciem zwiększaną z 0 do 1. Na stronach WWW taki efekt robi się zwykle za pomocą CSS (transition, animation, keyframes) albo JavaScriptu, czasem z użyciem bibliotek typu jQuery czy gotowych sliderów. Moim zdaniem to jest jeden z podstawowych efektów, który warto umieć odtworzyć, bo pojawia się w galeriach, sliderach na stronach głównych, prezentacjach produktów czy prostych pokazach slajdów. W materiałach multimedialnych, np. w edycji wideo, dokładnie ten sam efekt nazywa się przejściem typu „cross dissolve” lub „fade”, i zasada działania jest identyczna – płynne nakładanie się dwóch klatek obrazu w czasie. Dobre praktyki mówią, żeby nie przesadzać z czasem trwania przenikania: zwykle 0,5–1,5 sekundy daje przyjemny, profesjonalny wygląd, bez wrażenia „zamulenia” interfejsu. Warto też pilnować spójności – jeśli na stronie używasz przenikania w jednym miejscu, dobrze jest utrzymać podobny styl animacji w innych elementach, żeby całość wyglądała konsekwentnie i nie rozpraszała użytkownika. W kontekście multimediów na WWW przenikanie jest też korzystne wydajnościowo, bo operuje głównie na właściwości opacity i transformacjach, które przeglądarki potrafią optymalizować sprzętowo.

Pytanie 28

Przyjmując, że użytkownik Adam nie miał dotychczas żadnych uprawnień, polecenie SQL przyzna mu prawa jedynie do

GRANT CREATE, ALTER ON sklep.* TO adam;
A. dodawania i modyfikacji danych w tabeli sklep
B. tworzenia oraz modyfikowania struktury w tabeli sklep
C. dodawania i modyfikacji danych we wszystkich tabelach bazy sklep
D. tworzenia i zmiany struktury wszystkich tabel w bazie sklep

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
To, co zaznaczyłeś, jest jak najbardziej na miejscu. W tym SQL-u, 'GRANT CREATE, ALTER ON sklep.* TO adam;' dajesz użytkownikowi, czyli adamowi, możliwości tworzenia i zmieniania struktury wszystkich tabel w bazie 'sklep'. Słowo 'CREATE' pozwala mu na tworzenie nowych tabel, a 'ALTER' umożliwia mu wprowadzanie zmian w tych istniejących, na przykład dodawanie czy usuwanie kolumn. Ważne, żeby ogarnąć, że 'sklep.*' oznacza wszystkie tabele w danej bazie, co jest zgodne z dobrymi praktykami w zarządzaniu bazami danych. No bo jakby adam miał ochotę dodać nową tabelę albo zmodyfikować istniejącą, to musi mieć odpowiednie uprawnienia. Przykładem może być sytuacja, gdy administrator daje programiście dostęp do zmian w strukturze tabel, żeby móc dodać nowe funkcje do aplikacji – to naprawdę ważne dla rozwoju systemu.

Pytanie 29

Zaprezentowano kod dla tabeli 3x2. Jaką modyfikację należy wprowadzić w drugim wierszu, aby tabela przypominała tę z obrazka, gdzie wiersz jest niewidoczny?

<table>
    <tr>
        <td style="border: solid 1px;">Komórka 1</td>
        <td style="border: solid 1px;">Komórka 2</td>
    </tr>
    <tr>
        <td style="border: solid 1px;">Komórka 3</td>
        <td style="border: solid 1px;">Komórka 4</td>
    </tr>
    <tr>
        <td style="border: solid 1px;">Komórka 5</td>
        <td style="border: solid 1px;">Komórka 6</td>
    </tr>
</table>
/efekt jest na obrazie - nie dołączam - nie analizuj/
Ilustracja do pytania
A. <pre class="code-block">&lt;tr <span class="code-text">style=</span><span class="code-string">"display: table-cell"</span>&gt;</pre>
B. <pre class="code-block">&lt;tr <span class="code-text">style=</span><span class="code-string">"clear: none"</span>&gt;</pre>
C. <pre class="code-block">&lt;tr <span class="code-text">style=</span><span class="code-string">"display: none"</span>&gt;</pre>
D. <pre class="code-block">&lt;tr <span class="code-text">style=</span><span class="code-string">"visibility: hidden"</span>&gt;</pre>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź jest prawidłowa, ponieważ użycie stylu 'visibility: hidden' w wierszu tabeli skutkuje tym, że wiersz ten nie jest widoczny, ale nadal zajmuje miejsce w układzie tabeli. Oznacza to, że komórki poniżej nie przesuwają się w górę, a struktura tabeli pozostaje niezmieniona. To podejście jest zgodne z sytuacjami, w których chcemy ukryć zawartość bez zmiany rozmieszczenia innych elementów. Jest to przydatne w aplikacjach, gdzie układ strony musi pozostać stabilny dla zachowania spójności wizualnej lub funkcjonalnej. Przykładem może być ukrywanie tymczasowych informacji, które nie powinny wpływać na pozostały układ interfejsu użytkownika. Jest to zgodne z dobrymi praktykami projektowania front-endu, gdzie stylizacje powinny wspierać czytelność i przewidywalność układu strony. Alternatywnie, 'display: none' usunęłoby element z przepływu dokumentu, co zmienia układ, ale w tym przypadku zastosowanie 'visibility: hidden' jest właściwym wyborem dla zachowania struktury.

Pytanie 30

W języku JavaScript funkcja getElementById odnosi się do

A. elementu HTML z podanym id
B. zmiennej numerycznej
C. elementu HTML z określoną nazwą klasy
D. klasy zdefiniowanej w CSS

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Metoda getElementById w języku JavaScript jest kluczowym narzędziem do manipulacji DOM (Document Object Model), które pozwala deweloperom na łatwe odwoływanie się do konkretnych elementów HTML za pomocą ich atrybutu id. Dzięki temu, możemy dynamicznie zmieniać treść, style lub atrybuty tych elementów, co jest niezwykle przydatne w tworzeniu interaktywnych stron internetowych. Na przykład, jeśli mamy element HTML z atrybutem id='header', możemy użyć `document.getElementById('header')` do uzyskania do niego dostępu. To podejście jest zgodne z zasadami poprawnej struktury HTML, gdzie atrybut id powinien być unikalny w obrębie dokumentu. Rekomendowane jest, aby id było zrozumiałe i jasno określało zawartość elementu, co ułatwia późniejszą nawigację i skrypty, a także poprawia dostępność strony. W praktyce, korzystając z getElementById, możemy na przykład zmieniać tekst nagłówka: `document.getElementById('header').innerText = 'Nowy nagłówek';`.

Pytanie 31

Jakie są odpowiednie kroki w odpowiedniej kolejności, które należy podjąć, aby nawiązać współpracę pomiędzy aplikacją internetową po stronie serwera a bazą danych SQL?

A. wybór bazy, zapytanie do bazy, nawiązanie połączenia z serwerem baz danych, wyświetlenie na stronie WWW, zamknięcie połączenia
B. wybór bazy danych, nawiązanie połączenia z serwerem baz danych, zapytanie do bazy - wyświetlane na stronie WWW, zamknięcie połączenia
C. zapytanie do bazy, wybór bazy, wyświetlenie na stronie WWW, zamknięcie połączenia
D. nawiązanie połączenia z serwerem baz danych, wybór bazy, zapytanie do bazy - wyświetlane na stronie WWW, zamknięcie połączenia

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Aby nawiązać współpracę między aplikacją internetową a bazą danych SQL, niezbędne jest przestrzeganie odpowiedniej sekwencji kroków. Proces ten rozpoczyna się od nawiązania połączenia z serwerem baz danych, co jest kluczowe, ponieważ bez aktywnego połączenia aplikacja nie ma możliwości komunikacji z bazą. Następnie dokonujemy wyboru konkretnej bazy danych, z którą chcemy pracować. Jest to istotny krok, ponieważ w przypadku serwera mogą istnieć różne bazy, a aplikacja musi wiedzieć, z którą z nich ma się połączyć. Po dokonaniu wyboru bazy następuje wysłanie zapytania do bazy danych, które może być zapytaniem typu SELECT, INSERT, UPDATE, lub DELETE w zależności od potrzeb aplikacji. Po zrealizowaniu zapytania wyniki są przetwarzane i wyświetlane na stronie internetowej. Ostatnim krokiem jest zamknięcie połączenia z bazą danych, co jest ważne dla zarządzania zasobami, zapobiega to wyciekom pamięci i utrzymuje wydajność serwera. Te kroki są zgodne z ogólnymi standardami tworzenia aplikacji webowych i wzorcami projektowymi, jak na przykład architektura MVC, gdzie kontroler jest odpowiedzialny za zarządzanie komunikacją z bazą danych.

Pytanie 32

W poniższym kodzie CSS czcionka zmieni kolor na żółty

a[target="_blank"]
{
  color: yellow;
}
A. odnośników, które otwierają się w tej samej karcie
B. odnośników, które otwierają się w nowej karcie
C. tekstu akapitu
D. każdego linku

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowa odpowiedź wskazuje na zastosowanie selektora a[target="_blank"] w języku CSS. Ten selektor odnosi się do wszystkich odnośników HTML, które otwierają się w nowej karcie przeglądarki dzięki użyciu atrybutu target z wartością "_blank". Stylizacja tych odnośników na kolor żółty jest możliwa przez przypisanie właściwości color z odpowiednią wartością. Jest to praktyczne podejście, które pozwala na wizualne wyróżnienie linków otwierających się w osobnych zakładkach. Takie podejście jest zgodne z dobrymi praktykami projektowania stron internetowych, gdzie wskazane jest, aby użytkownicy mieli wyraźne sygnały o nietypowych działaniach linków. W kontekście dostępności webowej, takie stylizowanie wspiera użytkowników w szybszym orientowaniu się w sposobie działania poszczególnych elementów interfejsu. Separacja stylu i treści zgodnie z zasadami CSS umożliwia bardziej elastyczne zarządzanie wyglądem strony i ułatwia utrzymanie spójności wizualnej na całej witrynie. Przykład ten ilustruje, jak CSS może wpływać na interakcję użytkownika z elementami strony, co jest kluczowe w procesie tworzenia przyjaznych i intuicyjnych interfejsów użytkownika.

Pytanie 33

Aby przekształcić obraz z formatu JPEG do PNG bez utraty jakości, tak aby kolor biały w oryginalnym obrazie został zastąpiony przezroczystością w wersji docelowej, należy najpierw

A. załadować obraz do programu do edycji grafiki wektorowej
B. usunięcie gumką wszystkich białych miejsc
C. dodać kanał alfa
D. obniżyć rozdzielczość obrazu

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Żeby zmienić obrazek z formatu JPEG na PNG i zachować przezroczystość tam, gdzie wcześniej był biały kolor, ważny krok to dodanie kanału alfa. To w zasadzie taka dodatkowa warstwa w obrazie, która mówi, które piksele mają być przezroczyste. JPEG nie umie obsługiwać przezroczystości, więc białe obszary będą się pokazywać jako nieprzezroczyste. Jak już dodasz ten kanał alfa, możesz ustawić przezroczystość dla białych pikseli, co pozwoli na ich ukrycie lub zamianę na przezroczystość w końcowym obrazku. Na przykład, w programach jak Adobe Photoshop można użyć narzędzia do zaznaczania kolorów, żeby wybrać wszystkie białe piksele i potem je usunąć, zostawiając tylko przezroczystość. W ten sposób dostajesz efekt, którego chcesz w obrazie PNG, co jest zgodne z dobrą praktyką w obróbce grafiki i pomaga utrzymać wysoką jakość obrazu bez żadnych strat.

Pytanie 34

Które z poniższych zdań poprawnie opisuje utworzoną tabelę?

CREATE TABLE dane (kolumna INTEGER(3));
A. Tabela zawiera jedną kolumnę, która przechowuje trzyelementowe tablice
B. Tabela o nazwie dane ma jedną kolumnę typu całkowitego
C. Tabela o nazwie dane składa się z trzech kolumn typu całkowitego
D. Kolumny tabeli dane są nazwane: kolumna1, kolumna2, kolumna3

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Instrukcja CREATE TABLE w podanym przykładzie tworzy tabelę o nazwie `dane` z jedną, jedyną kolumną o nazwie `kolumna` i typie `INTEGER(3)`. Kluczowe są tu dwie rzeczy: po pierwsze, nazwa tabeli (`dane`), po drugie, lista kolumn w nawiasie. W tej liście jest tylko jedna pozycja: nazwa kolumny i jej typ danych. W SQL każda definicja kolumny to osobny wpis, oddzielany przecinkiem. Skoro nie ma przecinka, to znaczy, że jest dokładnie jedna kolumna. Zapis `INTEGER(3)` nie oznacza trzech kolumn ani tablicy, tylko typ liczbowy całkowity z określoną „szerokością wyświetlania” (w MySQL) lub po prostu liczbę całkowitą – w wielu silnikach baz danych nawias jest wręcz ignorowany. W praktyce tę kolumnę możemy potem używać np. do przechowywania wieku, liczby sztuk towaru, numeru poziomu uprawnień itp. Przykładowo: `INSERT INTO dane (kolumna) VALUES (5);` wstawi rekord z wartością 5 w tej jednej kolumnie. Z mojego doświadczenia warto przy projektowaniu tabel zawsze jasno nazywać kolumny, tak żeby z samej nazwy wynikało, co przechowują, np. `wiek`, `ilosc_sztuk`, a nie ogólne `kolumna`. Dobrą praktyką jest też od razu dodanie klucza głównego, np. `id INT AUTO_INCREMENT PRIMARY KEY`, ale w tym zadaniu skupiamy się tylko na liczbie kolumn i ich typie. To pytanie dobrze pokazuje, że w SQL struktura tabeli wynika z liczby pozycji w nawiasie, a nie z liczby w nawiasie przy typie danych.

Pytanie 35

Znak pisarski @ jest czytany w języku angielskim jako

A. monkey.
B. at.
C. on.
D. ape.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to „at”, bo właśnie tak w języku angielskim czyta się znak @. Ten znak nazywa się w terminologii technicznej „at sign” albo „commercial at”. W praktyce najczęściej spotykasz go w adresach e‑mail, np. w zapisie [email protected] czytamy to jako „user at example dot com”. W dokumentacji technicznej, w standardach internetowych (RFC dotyczących e‑maili, jak RFC 5322) i w różnych tutorialach programistycznych zawsze przyjmuje się właśnie taką wymowę i nazwę. W kontekście tworzenia stron WWW i programowania webowego dobrze jest kojarzyć zarówno nazwę znaku, jak i jego typowe zastosowanie. W HTML sam znak @ nie ma specjalnego znaczenia składniowego, ale pojawia się w treści, np. w linkach mailto: <a href="mailto:[email protected]">. W CSS czasem widzisz tzw. at‑rules, np. @media, @import, @font-face – tu też w dokumentacji wprost jest mowa o „at‑rule”. W różnych językach programowania webowego symbol @ ma różne role: w PHP oznacza operator wyciszający błędy (co zresztą jest uznawane za złą praktykę), w wielu frameworkach jest używany w szablonach (np. Blade w Laravelu: @if, @foreach), w adnotacjach czy dekoratorach w innych technologiach. Moim zdaniem warto po prostu przyzwyczaić się do angielskiej nazwy „at”, bo w pracy z dokumentacją, Stack Overflow, oficjalnymi specyfikacjami czy logami systemowymi praktycznie nikt nie używa żadnych lokalnych, zabawnych nazw. To drobny szczegół, ale w branży IT takie detale językowe bardzo ułatwiają komunikację w zespole i z klientem.

Pytanie 36

Fragment formularza zaprezentowany powyżej został przetworzony w skrypcie PHP. Wskaż poprawny sposób pobierania wartości z pola edycyjnego.

Ilustracja do pytania
A. $name = $_POST['imie']
B. name = GET['imie']
C. name = $_GET[imie]
D. $name = $POST['Imię']

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowe pobranie wartości z formularza przesłanego metodą POST w języku PHP wymaga użycia globalnej tablicy asocjacyjnej $_POST. W kontekście tego pytania, zmienna $name zostaje przypisana wartości wprowadzonej do pola edycyjnego o nazwie imie. Kluczowym aspektem jest zrozumienie różnic między metodami GET i POST w HTTP. Metoda POST jest często preferowana do przesyłania danych formularzy, ponieważ umożliwia przesyłanie większych ilości danych i oferuje większe bezpieczeństwo, ponieważ dane nie są widoczne w adresie URL. Użycie $_POST['imie'] jest zgodne z dobrymi praktykami, a także zgodne z zasadami bezpieczeństwa takimi jak sanitizacja danych wejściowych i walidacja. Przykładowo można użyć filtrów: $name = filter_input(INPUT_POST 'imie' FILTER_SANITIZE_STRING); co zapobiega wstrzyknięciom kodu. Takie podejście jest zgodne z najlepszymi praktykami programowania w PHP i zapewnia bezpieczeństwo oraz niezawodność aplikacji. Zrozumienie tych mechanizmów jest kluczowe w tworzeniu bezpiecznych i efektywnych aplikacji webowych.

Pytanie 37

Czego nie należy robić, aby zabezpieczyć serwer bazy danych przed atakami hakerów?

A. aktywacja zapory.
B. defragmentacja dysków.
C. używanie skomplikowanych haseł do bazy.
D. blokowanie portów związanych z bazą danych.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Defragmentacja dysków nie jest bezpośrednio związana z zabezpieczaniem serwera bazy danych przed atakami hakerskimi. Choć defragmentacja może poprawić wydajność systemu plików poprzez uporządkowanie fragmentów plików na dysku, nie ma wpływu na kwestie bezpieczeństwa. Przykłady skutecznych działań w zakresie zabezpieczeń obejmują włączenie zapory, co stanowi pierwszą linię obrony, blokowanie portów, które mogą być wykorzystywane przez potencjalnych intruzów, oraz stosowanie złożonych haseł, co minimalizuje ryzyko nieautoryzowanego dostępu. W kontekście zarządzania bezpieczeństwem baz danych, kluczowe jest przestrzeganie najlepszych praktyk, takich jak regularne aktualizacje oprogramowania, monitorowanie logów dostępu oraz stosowanie zasad minimalnych uprawnień. Właściwe zabezpieczenia powinny być wdrażane zgodnie z wytycznymi standardów takich jak ISO/IEC 27001.

Pytanie 38

Jaką wartość zwróci algorytm? ```Z = 0 N = 1 dopóki Z < 3: N = N * 2 + 1 Z = Z + 1 wypisz N```

A. 7
B. 5
C. 15
D. 3

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Algorytm wykonuje pętlę dopóki wartość Z jest mniejsza niż 3. Na początku Z jest równe 0, a N jest równe 1. W każdej iteracji pętli N jest mnożone przez 2, a następnie do wartości N dodawana jest 1. W tym przypadku, po pierwszej iteracji, N = 1 * 2 + 1 = 3 oraz Z = 1. W drugiej iteracji N = 3 * 2 + 1 = 7 oraz Z = 2. W ostatniej iteracji N = 7 * 2 + 1 = 15 oraz Z = 3. Pętla kończy się, gdy Z osiąga wartość równą 3. Zatem ostateczna wartość N, która jest wypisywana, wynosi 15. Taki rodzaj algorytmu jest przykładam pętli iteracyjnej, która jest często stosowana w programowaniu do wykonywania powtarzalnych operacji. Umożliwia to efektywne przetwarzanie danych oraz automatyzację zadań. W praktyce, takie podejście mogą wykorzystywać inżynierowie oprogramowania do obliczeń matematycznych czy przetwarzania dużych zbiorów danych.

Pytanie 39

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

A. WHERE dataDodania LIKE '2021%' OR (cena < 100 AND liczbaSztuk > 4)
B. WHERE dataDodania LIKE '2021%' AND (cena < 100 OR liczbaSztuk > 4)
C. WHERE dataDodania LIKE '2021%' OR cena < 100 OR liczbaSztuk > 4
D. WHERE dataDodania LIKE '2021%' AND cena < 100 AND liczbaSztuk > 4

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź trzecia jest poprawna, ponieważ stosuje logiczne połączenie warunków w sekcji WHERE, które precyzyjnie spełnia wymagania zawarte w pytaniu. Warunek 'dataDodania LIKE '2021%'' filtruje dane, aby uwzględnić jedynie te produkty, które zostały dodane w roku 2021. Następnie, użycie operatora AND łączy ten warunek z nawiasem, który grupuje dwa inne warunki: 'cena < 100 OR liczbaSztuk > 4'. Taki zapis oznacza, że wystarczy spełnić jeden z tych dwóch warunków - cena musi być niższa niż 100 zł lub liczba sztuk większa niż 4. Dzięki temu, zapytanie będzie wydajne i zwróci wszystkie pasujące rekordy, co jest kluczowe w pracy z bazami danych. Takie podejście jest zgodne z najlepszymi praktykami SQL, które sugerują stosowanie nawiasów do grupowania logiki warunków, co zwiększa czytelność i zrozumienie zapytania. Przykładem zastosowania tego podejścia jest sytuacja w dużych sklepach internetowych, gdzie istotne jest szybkie filtrowanie danych produktów, aby poprawić doświadczenie użytkownika oraz efektywność sprzedażową.

Pytanie 40

W języku CSS określono formatowanie znacznika h1 według poniższego wzoru. Zakładając, że do znacznika h1 nie dodano żadnego innego formatowania, wskaż sposób formatowania tego znacznika.

h1 {
    font-style: oblique;
    font-variant: small-caps;
    text-align: right;
}
Ilustracja do pytania
A. A.
B. B.
C. C.
D. D.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Gratulacje, Twoja odpowiedź jest prawidłowa. W CSS określono, że znacznik h1 ma być wyświetlany z pochyłą czcionką, co jest osiągane za pomocą właściwości 'font-style: oblique'. Dodatkowo, małe wielkie litery są realizowane przez 'font-variant: small-caps', które zmieniają wszystkie małe litery na wielkie litery, ale z zachowaniem mniejszego rozmiaru. Wreszcie, do wyrównania tekstu do prawej strony służy 'text-align: right'. Wszystko to razem składa się na formatowanie znacznika h1, które zostało zdefiniowane w CSS. To jest dobra praktyka, aby zrozumieć i zapamiętać różne właściwości CSS, ponieważ pozwalają one na bardzo szczegółowe kontrolowanie wyglądu i układu elementów na stronie. Pamiętaj, że CSS jest niezwykle potężnym narzędziem w rękach doświadczonego programisty front-end i pozwala na tworzenie estetycznych, responsywnych i przyjaznych dla użytkownika interfejsów.