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: 21 kwietnia 2026 21:36
  • Data zakończenia: 21 kwietnia 2026 21:54

Egzamin zdany!

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

Funkcję o nazwie policz, napisaną w PHP, wywołano z argumentem $Z = 1. Jaki wynik zostanie zwrócony? ```function policz($Z) { while($Z < 5) { $Z += 2 * $Z + 1; } return $Z; }```

A. 4
B. 7
C. 1
D. 13
Wybór nieprawidłowych odpowiedzi często wynika z niepełnego zrozumienia działania pętli oraz sposobu aktualizacji zmiennych w programie. Odpowiedzi takie jak 7 czy 4 mogą sugerować, że osoba odpowiadająca mogła mylnie obliczyć pierwszą iterację pętli, myśląc, że $Z wzrasta tylko o 1, a nie o wartość wynikającą z równania 2 * $Z + 1. Z kolei odpowiedź 1 jest efektem nieznajomości zasady działania pętli while, ponieważ opiera się na niezaktualizowanej wartości $Z, co prowadzi do błędnych wniosków o braku zmian w wartościach zmiennej. Takie błędne rozumienie może prowadzić do sytuacji, w których programista podejmuje niewłaściwe decyzje przy implementacji algorytmów, co w dłuższej perspektywie wpływa na efektywność oraz prawidłowość działania aplikacji. Ważne jest, aby podczas korzystania z pętli zrozumieć, jak wartości zmiennych są aktualizowane w każdej iteracji oraz jakie są warunki przerywające działanie pętli. Odpowiednie zrozumienie tych mechanizmów jest kluczowe dla skutecznego programowania w PHP oraz w innych językach programowania, gdzie podobne struktury kontrolne są wykorzystywane.

Pytanie 2

Na stronie internetowej dodano grafikę w kodzie HTML. Co się stanie, jeśli plik rysunek.png nie zostanie odnaleziony przez przeglądarkę?

<img src="rysunek.png" alt="pejzaż">
A. wyświetli tekst "pejzaż" w miejscu grafiki
B. nie pokaże strony internetowej
C. zademonstruje błąd wyświetlania strony w miejscu grafiki
D. wstawi tekst "rysunek.png" zamiast grafiki
W HTML znacznik <img> jest używany do wstawiania obrazów na stronach. Ważne, żeby pamiętać o atrybucie src, który mówi przeglądarce, skąd ma wziąć obraz. A alt to taki tekst zapasowy, który wyświetli się, jeśli obrazek nie załaduje się z jakiegoś powodu. To istotne, bo ułatwia dostępność dla osób, które mogą mieć trudności z widzeniem. Na przykład, gdy plik rysunek.png się nie załaduje, to wyświetli się tekst z atrybutu alt - w tym przypadku słowo pejzaż. To jest zgodne z dobrymi praktykami, bo każdy powinien wiedzieć, co miało być na obrazku, nawet jeśli go nie widzi. To także pomaga wyszukiwarkom w indeksowaniu treści. A używanie atrybutu alt to rzecz, którą warto stosować, jeśli chcemy, żeby nasza strona była dostępna i przyjazna dla użytkowników. Przy tym, przypomina mi się, że to też jest zgodne z zasadami dostępności WCAG.

Pytanie 3

Barwy kolorów reprezentowane na stożku można uzyskać w modelu

A. CIEXYZ
B. CMYK
C. HSV
D. RGB
Poprawna odpowiedź to HSV, bo właśnie ten model barw jest najczęściej przedstawiany w formie stożka (albo podwójnego stożka / walca). W HSV mamy trzy składowe: Hue (odcień), Saturation (nasycenie) i Value (jasność). Jeśli wyobrazisz sobie stożek: kąt wokół osi stożka to Hue – czyli przechodzenie przez kolory tęczy, od czerwieni przez zieleń do niebieskiego i z powrotem. Odległość od środka do krawędzi to Saturation – w środku szare, wypłowiałe barwy, na brzegu maksymalnie nasycone. Wysokość stożka to Value – na dole ciemno (prawie czerń), na górze jasno. Z mojego doświadczenia w grafice komputerowej i DTP model HSV jest dużo wygodniejszy przy doborze kolorów niż czyste RGB, bo jest bardziej „ludzki” – myślisz: chcę ten sam kolor, tylko jaśniejszy i mniej nasycony, a nie: zwiększę trochę składową G i zmniejszę B. W większości profesjonalnych programów graficznych (Photoshop, GIMP, Krita, narzędzia webowe typu Figma) koła barw i selektory kolorów bazują właśnie na HSV lub jego odmianach (HSL, HSB), często wizualizowanych jako stożek, walec albo koło z trójkątem. To jest zgodne z dobrymi praktykami projektowania interfejsów kolor-pickerów: użytkownik operuje na odcieniu, nasyceniu i jasności, a nie bezpośrednio na sygnałach składowych jak w RGB. W praktyce webowej możesz np. wygodnie generować palety kolorów, zmieniając tylko Value, żeby dostać całą serię odcieni do hoverów, borderów czy tła – i to właśnie sensowne jest w modelu HSV.

Pytanie 4

W przedstawionym kodzie PHP, co powinno się wyświetlić zamiast znaków zapytania?

$x = mysql_query('SELECT * FROM mieszkancy');
if(!$x)
echo "???????????????????????";
A. Niepoprawna nazwa bazy danych
B. Błąd w trakcie przetwarzania zapytania
C. Nieprawidłowe hasło do bazy danych
D. Zapytanie zostało zrealizowane pomyślnie
Odpowiedź 2 czyli Błąd przetwarzania zapytania jest poprawna ponieważ w kodzie PHP używana jest funkcja mysql_query do wykonania zapytania SQL Funkcja ta zwraca false w przypadku niepowodzenia co oznacza że blok if(!x) zostanie wykonany tylko wtedy gdy wystąpi błąd w przetwarzaniu zapytania Komunikat Błąd przetwarzania zapytania jest więc właściwy ponieważ odzwierciedla sytuację w której zapytanie nie mogło zostać wykonane poprawnie co może być wynikiem wielu czynników takich jak błędy składniowe w zapytaniu brak połączenia z serwerem bazy danych lub nieodpowiednie uprawnienia użytkownika Praktyczne podejście do obsługi błędów w PHP często obejmuje logowanie szczegółowych komunikatów błędów lub przekazywanie ich użytkownikowi w sposób przyjazny dla użytkownika co jest zgodne z najlepszymi praktykami w zakresie programowania Dodatkowo warto wspomnieć że funkcja mysql_query jest przestarzała i nie jest zalecana do użycia w nowych projektach Zaleca się używanie bardziej nowoczesnych funkcji takich jak mysqli_query lub PDO co poprawia bezpieczeństwo i wydajność aplikacji

Pytanie 5

Jaki zapis w języku C++ definiuje komentarz jednoliniowy?

A. #
B. //
C. <
D. /*
Komentarz jednoliniowy w języku C++ jest definiowany przez zapis //. Używanie tej składni pozwala programiście na dodanie uwag w kodzie, które są ignorowane przez kompilator. Komentarze są niezwykle przydatne, gdyż umożliwiają dokumentowanie kodu, co ułatwia jego zrozumienie i utrzymanie w przyszłości. Na przykład, jeśli mamy fragment kodu, który oblicza sumę dwóch liczb, możemy dodać komentarz jednoliniowy, aby wyjaśnić, co dany fragment robi: // Oblicza sumę dwóch liczb. Warto dodać, że w standardzie C++ zaleca się użycie komentarzy w miejscach, gdzie kod może być trudny do zrozumienia lub wymaga dodatkowego wyjaśnienia. Dobre praktyki programistyczne podkreślają znaczenie dokumentowania kodu, co ułatwia współpracę w zespole oraz przyszłe modyfikacje. Warto również wspomnieć, że komentarze nie powinny być nadmierne, aby nie wprowadzać w błąd lub nie zniechęcać do czytania samego kodu.

Pytanie 6

Który z opisów komentarza odzwierciedla działanie funkcji zdefiniowanej w języku PHP ```function fun1($a, $b) { if($a > $b) return $a; elseif($b > $a) return $b; else return -1; }```?

A. /* Funkcja zwraca niższą wartość spośród dwóch podanych, w przypadku równości zwraca wartość $a */
B. /* Funkcja zwraca wyższą wartość spośród dwóch podanych, w przypadku równości zwraca -1 */
C. /* Funkcja zwraca wyższą wartość spośród dwóch podanych, w przypadku równości zwraca wartość $a */
D. /* Funkcja zwraca niższą wartość spośród dwóch podanych, w przypadku równości zwraca -1 */
Funkcja `fun1` w języku PHP ma na celu porównanie dwóch wartości przekazanych jako argumenty `$a` i `$b`. Zastosowana logika w funkcji jest jasna: jeśli `$a` jest większe od `$b`, funkcja zwraca wartość `$a`; jeśli `$b` jest większe, zwraca wartość `$b`. W przypadku, gdy obie wartości są równe, funkcja zwraca -1, co jasno wskazuje na brak różnicy między tymi wartościami. Takie podejście jest zgodne z dobrymi praktykami programistycznymi, ponieważ funkcje powinny być jednoznaczne i przewidywalne w swoim działaniu. Wykorzystanie zwracania wartości -1 jako wskaźnika równości jest ciekawym rozwiązaniem, które może być przydatne w dalszej logice aplikacji, gdzie różne kody zwrotne mogą reprezentować różne stany. W praktycznych zastosowaniach taka funkcja mogłaby być używana w algorytmach sortujących lub w analizach danych, gdzie potrzeba porównania wartości jest powszechna. Dobrą praktyką jest także dokumentowanie funkcji, aby inni programiści mogli łatwo zrozumieć jej działanie i zastosowanie.

Pytanie 7

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

A. Zwraca część wspólną wyników dwóch zapytań
B. Zwraca te wiersze, które wystąpiły w wyniku pierwszego zapytania, jednak nie były obecne w wyniku drugiego zapytania
C. Zwraca te wiersze, które wystąpiły w wyniku drugiego zapytania, natomiast nie było ich w wyniku pierwszego zapytania
D. Zwraca zbiór wyników z pierwszego zapytania oraz zbiór wyników z drugiego zapytania, automatycznie eliminując powtarzające się wiersze
Instrukcja INTERSECT w języku SQL jest używana do zwracania wspólnych wyników dwóch lub więcej zapytań SELECT. W praktyce INTERSECT identyfikuje i zwraca jedynie te wiersze, które występują zarówno w pierwszym, jak i w drugim zbiorze wyników. Warto zauważyć, że podczas używania tej instrukcji, domyślnie usuwane są duplikaty, co oznacza, że każde unikalne wystąpienie wspólnych wierszy zostanie zwrócone tylko raz. Na przykład, jeżeli mamy dwa zapytania: pierwsze zwracające klientów z miasta A, a drugie klientów z miasta B, zastosowanie INTERSECT pozwoli nam uzyskać listę klientów, którzy znajdują się w obu zbiorach, co może być istotne w kontekście analizy danych lub segmentacji rynku. W kontekście standardów SQL, INTERSECT jest jednym z operatorów zbiorowych, obok UNION i EXCEPT, co czyni go fundamentalnym narzędziem w pracy z relacyjnymi bazami danych. Użycie INTERSECT może być korzystne w sytuacjach, gdy chcemy uzyskać analizę porównawczą lub zidentyfikować wspólne elementy pomiędzy różnymi zestawami danych, co jest kluczowe w wielu zastosowaniach analitycznych i raportowych.

Pytanie 8

Jak należy poprawnie udokumentować wzorzec weryfikacji dla pola nazwa w kodzie aplikacji JavaScript?

Ilustracja do pytania
A. /* Pole nazwa może zawierać dowolny ciąg cyfr (z wyłączeniem 0), następnie musi zawierać dużą literę i ciąg minimum dwóch małych liter. */
B. /* Pole nazwa może składać się z dowolnego ciągu cyfr (z wyłączeniem 0), małych i dużych liter. */
C. /* Pole nazwa powinno składać się w tej kolejności: z ciągu cyfr (z wyłączeniem 0), następnie dużej litery i ciągu małych liter. */
D. /* Pole nazwa musi składać się w tej kolejności: z ciągu cyfr (z wyłączeniem 0), następnie dużych liter i dwóch małych liter. */
Poprawna odpowiedź zakłada, że pole 'nazwa' musi zawierać określoną strukturę wyrażenia regularnego które jest kluczowym elementem w walidacji danych wejściowych w aplikacjach JavaScript. Wzorzec /[1-9]*[A-Z]{1}[a-z]{2,}$/ wskazuje że pole może zaczynać się od dowolnej liczby cyfr z wyłączeniem 0 po których następuje jedna duża litera i co najmniej dwie małe litery. Taka konstrukcja jest przydatna w tworzeniu bezpiecznych aplikacji ułatwiając wymuszenie określonego formatu danych które mogą być używane na przykład w formularzach rejestracyjnych gdzie wymagane jest podanie specyficznego identyfikatora użytkownika. Warto pamiętać że walidacja po stronie klienta jak w tym przypadku powinna być zawsze wspierana dodatkowymi sprawdzeniami po stronie serwera co jest dobrą praktyką programistyczną w celu zabezpieczenia aplikacji przed niepożądanym dostępem oraz złośliwymi atakami. Zrozumienie i stosowanie wyrażeń regularnych znacznie poprawia jakość kodu oraz jego zdolność do adaptacji w różnych warunkach technicznych co jest kluczowe w dzisiejszym dynamicznym środowisku IT.

Pytanie 9

Jaką formę ma instrukcja w języku PHP, która tworzy obiekt pkt w klasy Punkt zdefiniowanej w klasie?

Ilustracja do pytania
A. pkt= new Punkt();
B. pkt Punkt;
C. Punkt() pkt;
D. pkt Punkt();
W języku PHP każda z podanych niepoprawnych opcji wynika z niewłaściwego zrozumienia konstrukcji obiektowej. Pierwszy błąd polega na próbie inicjalizacji obiektu przy użyciu składni pkt Punkt;, która jest niepoprawna, gdyż nie wykorzystuje słowa kluczowego new obowiązkowego podczas tworzenia instancji klasy. Taka składnia przypomina deklarację zmiennych typów prostych, co nie znajduje zastosowania w kontekście obiektowym. Innym powszechnym nieporozumieniem jest myślenie, że pkt Punkt(); jest poprawne, co sugeruje funkcję, jednakże PHP wymaga jawnego użycia new. Kolejna błędna koncepcja to Punkt() pkt;, która zdaje się używać składni funkcji z przypisaniem, co również jest niezgodne z semantyką PHP dla obiektów. Tego typu błędy często wynikają z prób zastosowania logiki innych języków programowania lub z niewłaściwej interpretacji składni PHP. Zrozumienie różnicy między deklaracją zmiennej a tworzeniem obiektu jest kluczowe dla efektywnego programowania obiektowego. Aby uniknąć takich błędów, warto zwrócić uwagę na dokumentację i praktykować pisanie kodu zgodnie z konwencjami przyjętymi w PHP, co nie tylko zwiększa czytelność kodu, ale także ułatwia późniejsze jego modyfikacje oraz integrację z większymi systemami. Poprawne zrozumienie konstrukcji obiektowej jest fundamentalne dla każdego programisty PHP, szczególnie w kontekście tworzenia aplikacji skalowalnych i łatwych do zarządzania.

Pytanie 10

Dane z pola input o typie number zostały zapisane do zmiennej a, a następnie przetworzone w kodzie JavaScript w sposób następujący: ```var x = parseFloata);``` Jakiego typu będzie zmienna x?

A. zmiennoprzecinkowego
B. NaN
C. liczbowego, całkowitego
D. napisowego
Widzisz, zmienna x dostaje wartość z funkcji parseFloat, która zmienia coś z pola input typu number na liczbę zmiennoprzecinkową. To jest dość standardowa funkcja w JavaScript, często używana do zamiany tekstu (czyli stringów) na liczby zmiennoprzecinkowe. Na przykład, jak w polu input masz '123.45', to po napisaniu var x = parseFloat(a);, x stanie się liczbą 123.45. Tylko pamiętaj, że jak przekazany tekst nie może być zmieniony na liczbę, to dostaniesz NaN (czyli Not-a-Number). Ta funkcja jest zgodna z ECMAScript i jest naprawdę przydatna, np. w sytuacjach, gdy trzeba walidować dane, które użytkownicy wprowadzają. Twoja odpowiedź jest na plus, bo korzystając z parseFloat, dostajesz typ zmiennoprzecinkowy, co jest ważne w obliczeniach matematycznych. Zresztą, dokładność w tych wartościach liczbowych jest kluczowa.

Pytanie 11

W języku JavaScript zadeklarowano funkcję.
function absValue(f) {
    return Math.abs(f);
}

A. zwrócić wartość bezwzględną z f
B. wypisać wartość bezwzględną z f
C. zwrócić wartość przeciwną do f
D. wypisać wartość przeciwną do f
Poprawna odpowiedź to „zwrócić wartość bezwzględną z f”. Funkcja absValue(f) korzysta z wbudowanej metody Math.abs(), która zwraca wartość bezwzględną liczby przekazanej jako argument. Oznacza to, że jeśli liczba f jest ujemna, zostanie zamieniona na dodatnią, a jeśli dodatnia — pozostanie bez zmian. Funkcja nie wypisuje wartości, lecz zwraca wynik, który można następnie wykorzystać w dalszych obliczeniach. Takie podejście jest często stosowane w programowaniu, gdy chcemy operować na wielkościach zawsze nieujemnych, np. przy obliczaniu różnic, odległości lub w analizie danych numerycznych.

Pytanie 12

Aby utworzyć styl strony responsywnej dla ekranów o szerokości od 600 px do 800 px należy zastosować regułę CSS

A. @media screen and (max-width: 800px) and (min-width: 600px){/*style css*/}
B. @media (max-width: 800px) (min-width: 600px){/*style css*/}
C. @media screen (min-width: 800px) and (max-width: 600px){/*style css*/}
D. @media (min-width: 800px){/*style css*/}
Prawidłowa reguła to @media screen and (max-width: 800px) and (min-width: 600px){/*style css*/}, bo dokładnie określa zakres szerokości ekranu od 600 px do 800 px i robi to w sposób zgodny ze składnią CSS. Kluczowe są tu trzy elementy: słowo kluczowe screen, operator and oraz poprawna kolejność i zapis warunków min-width i max-width. Media queries działają tak, że przeglądarka sprawdza, czy wszystkie warunki połączone słowem and są spełnione. W tym przypadku styl zadziała tylko wtedy, gdy typ urządzenia to ekran (screen) i szerokość widoku (viewport) jest jednocześnie nie mniejsza niż 600 px i nie większa niż 800 px. To jest właśnie typowy zapis tzw. przedziału (range) w responsywnym CSS. W praktyce taki zakres wykorzystuje się np. do stylowania widoków tabletów w pozycji pionowej lub poziomej, w zależności od projektu. Możesz tam zmieniać układ kolumn z trzech na dwie, powiększać przyciski, dostosowywać rozmiary czcionek, marginesy, czy ukrywać mniej ważne elementy. Co ważne, użycie screen ogranicza stosowanie tych styli tylko do ekranów, a nie np. do wydruku (print), co jest zgodne z dobrą praktyką opisaną w specyfikacji CSS Media Queries Level 3 i nowszych. Z mojego doświadczenia dobrym nawykiem jest zawsze pilnować spójnych breakpointów, np. 480 px, 600 px, 768 px, 1024 px, i dla każdego z nich pisać media queries w dokładnie takim formacie, jak w tej poprawnej odpowiedzi. Ułatwia to późniejsze utrzymanie kodu i eliminuje dziwne „przeskoki” layoutu między rozdzielczościami. Dodatkowo warto pamiętać, że kolejność min-width i max-width nie ma znaczenia dla działania, ale przyjęcie jednej konwencji w projekcie mocno poprawia czytelność kodu zespołowego.

Pytanie 13

Jakie polecenie SQL umożliwia usunięcie z tabeli artykuly wierszy, w których pole tresc zawiera słowo „sto” w dowolnej lokalizacji?

A. DELETE * FROM artykuly WHERE tresc LIKE "%sto%";
B. DELETE FROM artykuly WHERE tresc LIKE "%sto%";
C. DELETE * FROM artykuly WHERE tresc = "%sto%";
D. DELETE FROM artykuly WHERE tresc = "%sto%";
Odpowiedź "DELETE FROM artykuly WHERE tresc LIKE '%sto%';" jest całkiem na miejscu. Użycie polecenia DELETE z klauzulą WHERE oraz operatorem LIKE to standardowe podejście w SQL do usuwania danych w oparciu o jakiś wzorzec. Operator LIKE świetnie sprawdza się w wyszukiwaniu tekstów, a te znaki procenta (%) przed i po słowie 'sto' mówią SQL-owi, żeby szukał tego słowa w różnych miejscach w kolumnie 'tresc'. Na przykład, jeśli mamy takie przykłady jak 'Moje stoisko', 'sto lat' czy 'stoły', to wszystkie te wiersze znikną po wykonaniu tego zapytania. Takie działanie jest zgodne z dobrą praktyką, bo pozwala na elastyczne wyszukiwanie i zmniejsza ryzyko błędów, które mogłyby się zdarzyć przy prostym porównywaniu. Zawsze jednak warto zrobić kopię zapasową danych przed takim krokiem, żeby nie stracić czegoś ważnego.

Pytanie 14

Dla strony internetowej stworzono styl, który będzie stosowany tylko do wybranych znaczników, takich jak niektóre nagłówki oraz kilka akapitów. W tej sytuacji, aby przypisać styl do konkretnych znaczników, najodpowiedniejsze będzie użycie

Ilustracja do pytania
A. pseudoklasy
B. klasy
C. selektora akapitu
D. identyfikatora
Użycie klasy w CSS jest najlepszym rozwiązaniem, gdy chcemy zastosować ten sam styl do wielu elementów HTML, ale nie do wszystkich. Klasy w CSS są definiowane za pomocą kropki przed nazwą klasy, np. .nazwa-klasy, i mogą być przypisane do dowolnego elementu HTML za pomocą atrybutu class. Dzięki temu możemy elastycznie i efektywnie zarządzać stylami na stronie internetowej. Klasy są bardzo przydatne w dużych projektach, gdzie powtarzalność i spójność stylów są kluczowe. Pozwalają także na ponowne wykorzystanie tych samych stylów w różnych miejscach projektu bez konieczności kopiowania kodu CSS. Użycie klas zwiększa czytelność i organizację kodu, co jest zgodne z najlepszymi praktykami programowania. Stosowanie klas jest także zalecane w kontekście frameworków CSS, takich jak Bootstrap, które intensywnie wykorzystują klasy do definiowania komponentów i układów. Przykład zastosowania klasy: .align-right { text-align: right; } można przypisać do różnych nagłówków czy akapitów, które mają być wyrównane do prawej.

Pytanie 15

Który ze sposobów komentowania kodu nie jest stosowany w kodzie jako komentarz PHP?

A. // komentarz
B. /* komentarz */
C. <!-- komentarz -->
D. # komentarz
Poprawnie wskazano, że zapis <!-- komentarz --> nie jest komentarzem PHP, tylko komentarzem HTML. To jest bardzo ważne rozróżnienie: komentarze PHP muszą być interpretowane przez interpreter PHP, więc używa się składni typowej dla języków z rodziny C. W PHP mamy trzy podstawowe sposoby komentowania kodu: znak # na początku linii, podwójny ukośnik // oraz komentarze blokowe /* ... */. Wszystkie te formy działają tylko wewnątrz bloku PHP, czyli między znacznikami <?php i ?>. Przykład poprawnych komentarzy PHP:<?php # komentarz jednolinijkowy // inny komentarz jednolinijkowy /* komentarz wielolinijkowy */ echo "Hello"; // komentarz obok instrukcji ?>Natomiast <!-- komentarz --> to komentarz HTML, który jest widoczny po stronie przeglądarki jako element kodu źródłowego HTML, ale kompletnie ignorowany przez interpreter PHP. Jeśli wstawisz coś takiego wewnątrz bloku PHP, po prostu dostaniesz błąd składni. Moim zdaniem warto zapamiętać prostą zasadę: komentarze PHP używają #, // lub /* */, a komentarze HTML używają <!-- -->. W praktyce często łączy się oba typy w jednym pliku: w sekcji PHP komentujemy kod logiki serwera, a w sekcji HTML komentujemy strukturę widoku. Dobrą praktyką jest stosowanie // do krótkich, jednowierszowych komentarzy przy instrukcjach oraz /* ... */ do dłuższych opisów funkcji, klas czy bardziej skomplikowanych fragmentów logiki. W dokumentacji PHP (php.net) wszystkie przykłady konsekwentnie używają właśnie tych trzech form, więc warto się tego trzymać, żeby kod był czytelny też dla innych programistów.

Pytanie 16

W CSS, aby ustalić wewnętrzny górny margines, czyli odstęp pomiędzy elementem a jego obramowaniem, należy zastosować komendę

A. local-top
B. border-top
C. padding-top
D. outline-top
Odpowiedź 'padding-top' jest prawidłowa, ponieważ w CSS termin 'padding' odnosi się do wewnętrznego odstępu, który tworzy przestrzeń pomiędzy zawartością elementu a jego granicą (border). 'padding-top' specyfikuje górny odstęp wewnętrzny, co jest istotne w kontekście estetyki i układu strony. Definiując 'padding-top', możemy dostosować wygląd elementów, aby lepiej pasowały do reszty projektu i poprawiły czytelność. Na przykład, jeśli mamy przycisk z tekstem, użycie 'padding-top: 10px;' zapewni, że tekst nie będzie przyklejony do górnego brzegu przycisku, co zwiększy jego estetykę oraz użyteczność. W praktyce dobrą praktyką jest również stosowanie 'padding' w połączeniu z 'margin', aby osiągnąć odpowiednią separację między różnymi elementami w układzie. Przestrzeganie standardów CSS pomaga w tworzeniu responsywnych i dostosowanych układów, które dobrze działają na różnych urządzeniach.

Pytanie 17

Interpreter PHP zgłosi błąd i nie zrealizuje kodu, jeśli programista

A. pobierze wartość z formularza, w którym pole input nie zostało wypełnione
B. nie umieści średnika po wyrażeniu w instrukcji if, jeśli po nim występuje sekcja else
C. będzie pisał kod bez odpowiednich wcięć
D. będzie definiował zmienne w obrębie warunku
W języku PHP, średnik jest traktowany jako znak końca instrukcji. W przypadku, gdy po wyrażeniu w instrukcji 'if' następuje sekcja 'else', programista musi upewnić się, że poprawnie zakończył instrukcję 'if' średnikiem. W przeciwnym razie, interpreter PHP nie będzie w stanie poprawnie zinterpretować kodu, co prowadzi do błędu składniowego. Przykład: 'if ($a > $b) echo 'a jest większe'; else echo 'b jest większe';' jest poprawny, ponieważ średnik znajduje się po instrukcji 'if'. Jednak, jeśli napiszemy 'if ($a > $b) echo 'a jest większe' else echo 'b jest większe';', to zaowocuje to błędem, ponieważ brak średnika prowadzi do niejednoznaczności w interpretacji. Standardy PHP wymagają, aby każda instrukcja była zakończona średnikiem, co jest kluczowym elementem składni tego języka.

Pytanie 18

Przygotowując raport w systemie zarządzania relacyjnymi bazami danych, można uzyskać

A. aktualizowanie danych w tabelach
B. dodawanie danych do tabel
C. analizę wybranych danych
D. usuwanie danych z tabel
Usuwanie danych w tabelach nie jest efektem działania raportów, a raczej operacją DML (Data Manipulation Language), której celem jest modyfikacja danych. Ta czynność jest związana z ryzykiem utraty informacji i wymaga szczególnej ostrożności, ponieważ raz usunięte dane mogą być trudne lub niemożliwe do odzyskania. Z perspektywy zarządzania bazą danych, usuwanie powinno być starannie dokumentowane oraz kontrolowane. Dodawanie danych w tabelach również nie jest częścią procesu raportowania, ponieważ raporty koncentrują się na analizie danych już istniejących, a dodawanie nowych danych jest procesem, który wprowadza zmiany w strukturze bazy. Użytkownicy muszą mieć odpowiednie uprawnienia, aby móc dodawać lub edytować dane, co nie ma związku z funkcjonalnościami raportowania. Aktualizowanie danych w tabelach również nie jest związane z raportowaniem. Zmiany w danych są często związane z operacjami, które zmieniają stan bazy, a raporty służą jedynie do przedstawienia już istniejących informacji. W związku z tym operacje takie jak usuwanie, dodawanie czy aktualizowanie danych są częścią procesu zarządzania danymi, a nie analizy i generowania raportów.

Pytanie 19

Jakie słowo kluczowe w języku SQL należy zastosować, aby usunąć powtarzające się rekordy?

A. GROUP BY
B. LIKE
C. DISTINCT
D. ORDER BY
Słowo DISTINCT w SQL to taki sprytny sposób na pozbycie się duplikatów w wynikach zapytań. Jak robisz zapytanie SELECT, które zwraca różne wiersze, to dzięki DISTINCT dostaniesz tylko unikalne wartości w kolumnach, które wybierzesz. Na przykład, mając tabelę 'pracownicy' z kolumną 'miasto', jak użyjesz zapytania 'SELECT DISTINCT miasto FROM pracownicy;', to dostaniesz listę wszystkich miast, w których są pracownicy, a powtórzenia polecą w odstawkę. Warto pamiętać, że DISTINCT działa na całej kombinacji kolumn, które zwracasz. Jak dodasz więcej kolumn w zapytaniu, to SQL wyciągnie unikalne zestawienia tych kolumn. To naprawdę przydatne, zwłaszcza przy dużych zbiorach danych, gdzie duplikaty mogą namieszać w analizach i raportach. DISTINCT jest standardowym elementem w SQL i działa praktycznie w każdym systemie zarządzania bazami danych, jak MySQL czy PostgreSQL, co czyni to narzędzie mega uniwersalnym w codziennym grzebaniu w danych.

Pytanie 20

Który z poniższych formatów plików graficznych wspiera przejrzystość?

A. BMP
B. NEF
C. PNG
D. JPG
Format PNG (Portable Network Graphics) jest jednym z najpopularniejszych formatów plików graficznych obsługujących przezroczystość. Jego główną zaletą jest możliwość zachowania kanału alfa, który umożliwia tworzenie obrazów z przezroczystymi elementami. PNG wykorzystuje bezstratną kompresję, co oznacza, że jakość obrazu nie ulega pogorszeniu podczas zapisywania i otwierania pliku. Format ten jest szczególnie ceniony w aplikacjach internetowych, ponieważ pozwala na uzyskanie estetycznych efektów, takich jak cienie, przezroczystość i delikatne przejścia kolorów. Warto również zauważyć, że PNG obsługuje głębię kolorów do 48 bitów, co umożliwia uzyskanie bogatych i szczegółowych obrazów. Standard PNG został opracowany w 1996 roku jako alternatywa dla formatu GIF, który był ograniczony do 256 kolorów oraz nie obsługiwał przezroczystości w sposób, który byłby zadowalający dla projektantów. Dzięki swoim właściwościom, PNG jest szeroko stosowany w grafice komputerowej, w tym w tworzeniu logo, ikon oraz w elementach interfejsów użytkownika, a także w fotografii cyfrowej, gdzie zachowanie jakości jest kluczowe.

Pytanie 21

Które z poniższych poleceń pozwala na dodanie kolumny zadanie_kompletne do tabeli zadania?

A. ALTER TABLE zadania ADD COLUMN zadanie_kompletne int
B. CREATE INDEX zadania ADD COLUMN zadanie_kompletne int
C. INSERT INTO zadania VALUES zadanie_kompletne
D. ADD COLUMN zadanie_kompletne WITH zadania
Dodanie kolumny do istniejącej tabeli w relacyjnej bazie danych może być realizowane za pomocą polecenia ALTER TABLE. To polecenie jest standardem SQL i jest wspierane przez większość systemów zarządzania bazami danych, takich jak MySQL, PostgreSQL, Oracle czy Microsoft SQL Server. W przypadku zapytania 'ALTER TABLE zadania ADD COLUMN zadanie_kompletne int', polecenie to modyfikuje strukturę tabeli 'zadania', dodając nową kolumnę o nazwie 'zadanie_kompletne', która będzie przechowywać dane typu całkowitego (int). Praktycznym przykładem zastosowania tego polecenia może być system zarządzania projektami, w którym chcemy śledzić status zadań. Po dodaniu tej kolumny, możemy wprowadzać wartości 0 lub 1, które mogą reprezentować, czy zadanie zostało ukończone, czy nie. Użycie ALTER TABLE jest niezbędne, gdyż inne polecenia, takie jak CREATE INDEX czy INSERT INTO, służą do innych celów, takich jak tworzenie indeksów lub wstawianie danych, a nie do modyfikacji struktury tabeli. W praktyce, aby upewnić się, że zmiany są zgodne z wymaganiami systemu, zaleca się zawsze wykonanie kopii zapasowej bazy danych przed przeprowadzeniem operacji na strukturze tabeli.

Pytanie 22

Odizolowane środowisko ogólnego przeznaczenia, utworzone na fizycznym serwerze z wykorzystaniem technologii wirtualizacji, to

A. serwer DHCP.
B. serwer VPS.
C. serwer aplikacji.
D. serwer dedykowany.
Prawidłowo – opis dokładnie pasuje do serwera VPS (Virtual Private Server). VPS to odizolowane środowisko ogólnego przeznaczenia uruchomione na fizycznym serwerze z użyciem technologii wirtualizacji, np. KVM, VMware, Hyper-V czy Xen. Z punktu widzenia użytkownika taki VPS zachowuje się jak osobna maszyna: ma własny system operacyjny, własne konto root/administrator, własne usługi, własną konfigurację sieci, a jednocześnie współdzieli fizyczny sprzęt (CPU, RAM, dyski, interfejsy sieciowe) z innymi VPS-ami na tym samym serwerze. Moim zdaniem to jedno z najbardziej praktycznych rozwiązań dla nauki administracji i małych projektów komercyjnych. Na VPS-ie możesz zainstalować serwer WWW (np. Apache, Nginx), serwer baz danych (MySQL, PostgreSQL), środowisko uruchomieniowe dla PHP, Node.js czy Pythona, systemy cache (Redis, Memcached) i traktować go jak mini serwer dedykowany. W dobrej praktyce administracyjnej na VPS-ach wydziela się osobne środowiska dla różnych aplikacji (np. produkcja, test, staging) i dba o podstawowe zasady bezpieczeństwa: aktualizacje systemu, konfiguracja firewalla (iptables, nftables, ufw), certyfikaty SSL/TLS (Let’s Encrypt), kopie zapasowe. Branżowo przyjęło się, że VPS-y są elastycznym kompromisem między hostingiem współdzielonym a serwerem dedykowanym: dają izolację, własny adres IP, możliwość instalacji dowolnego oprogramowania, a jednocześnie są dużo tańsze niż fizyczna maszyna tylko dla jednego klienta. W praktyce webowej większość mniejszych sklepów internetowych, serwisów firmowych czy aplikacji SaaS na start ląduje właśnie na VPS-ach, bo łatwo je skalować (dokupując RAM, CPU, SSD) i migrować między serwerami bez zmiany architektury aplikacji.

Pytanie 23

Który modyfikator jest związany z opisem podanym poniżej?

Metoda oraz zmienna jest dostępna wyłącznie dla innych metod własnej klasy.
A. protected
B. public
C. private
D. static
Modyfikator static to pojęcie związane nie z ograniczaniem dostępu, a z przypisywaniem pola lub metody do samej klasy, a nie instancji obiektu. Użycie static nie wpływa na kontrolę dostępu do metod lub zmiennych z innych klas, jest raczej związane z zarządzaniem pamięcią i odwołaniami. Public z kolei oznacza brak ograniczeń w dostępie, umożliwiając użycie metod i zmiennych przez inne klasy, co jest przeciwieństwem private. Public sprawia, że elementy klasy są dostępne dla wszystkich, co może prowadzić do niezamierzonych zmian i trudności w utrzymaniu kodu szczególnie w dużych systemach. Protected to modyfikator pozwalający na dostęp do elementów klasy jedynie klasom dziedziczącym i znajdującym się w tym samym pakiecie (w Java). Jest przydatny w dziedziczeniu, ale nie ogranicza dostępu tak jak private. Typowym błędem jest mylenie static i public z mechanizmami ochrony danych, podczas gdy odnoszą się one do innych aspektów zarządzania klasami. Static dotyczy współdzielenia danych w obrębie klasy, a public szerokiego dostępu. Wybór odpowiedniego modyfikatora dostępu jak private jest kluczowy dla implementacji enkapsulacji, co jest fundamentem bezpieczeństwa i elastyczności w programowaniu obiektowym. Static i public to koncepcje o różnym zastosowaniu, niekoniecznie związane z ochroną i ukrywaniem danych przed dostępem zewnętrznym.

Pytanie 24

Do czego służy funkcja PHP o nazwie mysql_num_rows?

A. oddawać następny rekord z wyników zapytania
B. zwracać rekord, którego numer został przekazany jako parametr funkcji
C. podawać liczbę wierszy, które są w wynikach zapytania
D. przyporządkować numery rekordom w bazie danych
Funkcja mysql_num_rows w PHP jest kluczowym narzędziem do interakcji z bazami danych MySQL, umożliwiając programistom efektywne zarządzanie danymi. Jej głównym zadaniem jest zwrócenie liczby wierszy, które zostały zwrócone w wyniku zapytania SQL. Jest to niezwykle przydatne w sytuacjach, gdy chcemy ocenić, ile rekordów spełnia określone kryteria, co może być istotne na przykład w przypadku paginacji wyników lub dynamicznego dostosowywania interfejsu użytkownika w zależności od liczby dostępnych danych. Użycie tej funkcji polega na przesłaniu do niej wskaźnika na wynik zapytania, co pozwala na bezpośrednie uzyskanie liczby wierszy bez konieczności przeszukiwania danych. Przykładowo, po wykonaniu zapytania SELECT, aby uzyskać liczbę wierszy, wystarczy użyć: $result = mysql_query('SELECT * FROM tabela'); $liczba_wierszy = mysql_num_rows($result);. Funkcja ta jest zgodna z wytycznymi dotyczącymi standardów SQL i jest szeroko stosowana w aplikacjach webowych, które wymagają efektywnego przetwarzania danych. Należy jednak pamiętać, że mysql_num_rows jest częścią przestarzałego rozszerzenia MySQL, a programiści powinni rozważyć użycie mysqli lub PDO, które oferują lepszą obsługę i bezpieczeństwo.

Pytanie 25

Dzięki poleceniu ALTER TABLE można

A. zmieniać strukturę tabeli
B. skasować tabelę
C. usunąć rekord
D. zmieniać wartości rekordów
Polecenie ALTER TABLE jest kluczowym elementem w zarządzaniu bazami danych, umożliwiającym wprowadzanie zmian w strukturze istniejących tabel. Dzięki temu poleceniu możemy dodawać nowe kolumny, zmieniać typy danych istniejących kolumn, usuwać kolumny, a także zmieniać ograniczenia, takie jak klucze główne czy obce. Na przykład, w przypadku potrzeby dodania kolumny 'data_urodzenia' do tabeli 'użytkownicy', można użyć komendy: ALTER TABLE użytkownicy ADD data_urodzenia DATE;. Zmiany strukturalne są niezbędne, aby dostosować bazę danych do ewoluujących potrzeb aplikacji oraz do zapewnienia integralności danych. W praktyce, operacje te są często stosowane przy modernizacji aplikacji lub w odpowiedzi na zmieniające się wymagania biznesowe. Dobre praktyki wskazują, że przed wprowadzeniem zmian w strukturze tabeli warto wykonać kopię zapasową danych oraz przeanalizować wpływ tych zmian na istniejące zapytania i aplikacje, które korzystają z danej tabeli.

Pytanie 26

W katalogu www znajdują się podkatalogi html oraz styles, w których umieszczone są pliki o rozszerzeniu html oraz pliki z rozszerzeniem css. Aby dołączyć styl.css do pliku HTML, należy zastosować

A. <link rel="Stylesheet" type="text/css" href="styl.css" />
B. <link rel=" Stylesheet" type="text/css" href="www/style/styl. css" />
C. <link rel="Stylesheet" type="text/css" href="/style/styl.css" />
D. <link rel="Stylesheet" type="text/css" href="../style/styl.css" />
Poprawna odpowiedź to <link rel="Stylesheet" type="text/css" href="../style/styl.css" />. Użycie tej ścieżki względnej jest kluczowe, ponieważ wskazuje na lokalizację pliku styl.css w stosunku do pliku HTML, w którym jest osadzony. Folder 'www' zawiera podfoldery 'html' oraz 'style', a aby poprawnie zaadresować plik styl.css, który jest w folderze 'style', musimy wyjść z folderu 'html' (stąd '../') i następnie wejść do folderu 'style', gdzie znajduje się plik styl.css. W praktyce jest to zgodne z dobrą praktyką organizacji plików w projektach webowych, ponieważ ułatwia zarządzanie i lokalizowanie zasobów. Warto również zauważyć, że poprawne wskazanie ścieżki do plików CSS jest niezbędne dla prawidłowego renderowania stylów na stronie, co wpływa na jej wygląd i użytkowalność. Wszyscy deweloperzy front-end powinni być świadomi znaczenia dokładnego wskazywania ścieżek oraz stosować się do konwencji dotyczących organizacji struktur plików w projekcie.

Pytanie 27

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

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

W HTML, aby utworzyć poziomą linię, należy zastosować znacznik

A. <hr>
B. <line>
C. <br>
D. <hl>
Aby zdefiniować poziomą linię w języku HTML, należy użyć znacznika <hr>. Ten znacznik jest standardowym elementem HTML, który reprezentuje wizualną separację pomiędzy różnymi sekcjami treści. Znacznik <hr> jest samodzielny, co oznacza, że nie wymaga znacznika zamykającego. Jest to element blokowy, co oznacza, że zajmuje całą szerokość swojego rodzica i tworzy odstęp w pionie. W kontekście standardów HTML, <hr> jest częścią struktury dokumentu i jest rekomendowany do użycia w sytuacjach, gdy trzeba oddzielić różne tematy lub sekcje treści. Na przykład, jeśli mamy artykuł podzielony na kilka części, możemy użyć <hr> do wizualnego oddzielenia tych części, co zwiększa czytelność. Można również zastosować style CSS, aby dostosować wygląd linii, takie jak kolor, grubość czy styl linii. Przykładowy kod HTML z użyciem <hr> może wyglądać następująco: <h1>Tytuł Artykułu</h1><p>Treść pierwszej sekcji.</p><hr><p>Treść drugiej sekcji.</p>

Pytanie 29

Podczas przygotowywania grafiki do umieszczenia na stronie internetowej konieczne jest wycięcie tylko pewnego fragmentu. Jak nazywa się ta czynność?

A. odwracanie obrazu.
B. kadrowanie.
C. łączanie warstw.
D. zmiana rozmiaru.
Kadrowanie to taka technika, która pomaga nam lepiej uchwycić to, co najważniejsze w obrazie. Wycinając niektóre fragmenty grafiki, skupiamy uwagę na tym, co naprawdę się liczy. Dobrze jest to mieć na uwadze, zwłaszcza przy zdjęciach portretowych, gdzie chcemy, żeby wzrok przyciągała twarz modela, a nie jakieś niepotrzebne tło. Kiedy kadrujemy, warto pamiętać o takich zasadach jak zasada trzecich, bo to pomaga zrobić fajną kompozycję. Można to robić w wielu programach graficznych, jak na przykład Adobe Photoshop czy GIMP. Tak w ogóle, dobrze jest dbać o proporcje i rozdzielczość, żeby obraz nie stracił na jakości. Gadżetem kadrowania można się też posługiwać w projektowaniu stron www, bo odpowiednie wybory graficzne poprawiają estetykę i funkcjonalność strony.

Pytanie 30

W aplikacji webowej komunikat powinien być wyświetlany jedynie w przypadku, gdy dany użytkownik odwiedza stronę po raz pierwszy. Którą funkcję PHP należy wykorzystać w tym celu?

A. define
B. setcookie
C. session_destroy
D. mysqli_change_user
Funkcja setcookie w PHP jest kluczowym narzędziem do zarządzania ciasteczkami. Ciasteczka są małymi plikami przechowywanymi na urządzeniu użytkownika, które mogą być wykorzystywane do różnych celów, w tym do śledzenia sesji użytkownika, personalizacji doświadczeń oraz, w tym przypadku, do kontrolowania wyświetlania komunikatów. Gdy użytkownik odwiedza stronę po raz pierwszy, można ustawić ciasteczko, które informuje system, że użytkownik jest nowym odwiedzającym. Na przykład, można ustawić ciasteczko o nazwie "first_visit" z wartością "1", co oznacza, że komunikat powinien się pojawić. Przy kolejnych wizytach, przed wyświetleniem komunikatu, system sprawdzi, czy to ciasteczko istnieje. Jeśli tak, komunikat nie zostanie wyświetlony. Przykładowa implementacja wyglądałaby tak: if (!isset($_COOKIE['first_visit'])) { setcookie('first_visit', '1', time() + 3600); // Ciasteczko ważne przez 1 godzinę echo 'Witamy na stronie!'; // Wyświetlenie komunikatu } Dzięki temu podejściu można efektywnie zarządzać doświadczeniem użytkownika i unikać zasypywania ich komunikatami przy każdej wizycie, co jest zgodne z najlepszymi praktykami UX.

Pytanie 31

Zidentyfikuj poprawnie zbudowany warunek w języku PHP, który sprawdza brak połączenia z bazą MySQL.

A. if (mysqli_connect_errno()){}
B. if {mysql_connect_errno()}{}
C. if {mysqli_connect_error()}{}
D. if (mysql_connect_error())()
No, odpowiedzi, które wybrałeś, mają sporo błędów. Na przykład, 'if (mysql_connect_error())()' jest źle napisane, bo masz tu podwójne nawiasy, a powinny być pojedyncze. 'if {mysql_connect_errno(){}}' i 'if {mysqli_connect_error()}' używają klamr, gdzie powinny być nawiasy okrągłe, bo w PHP warunki muszą być w nawiasach. Te stare funkcje, takie jak 'mysql_connect_error()' czy 'mysql_connect_errno()', to już przeżytek, zostały usunięte w PHP 7.0. Teraz, wybierając 'mysqli', zapewniasz sobie lepsze bezpieczeństwo i działanie aplikacji. To jest kluczowe, żeby zrozumieć, jak poprawnie pisać kod, bo bez tego ciężko osiągniesz sukces w programowaniu w PHP.

Pytanie 32

Według którego parametru oraz dla ilu tabel zostaną zwrócone wiersze na liście w wyniku przedstawionego zapytania?

SELECT * FROM producent, hurtownia, sklep, serwis WHERE
  producent.nr_id = hurtownia.nr_id AND
  producent.wyrob_id = serwis.wyrob_id AND
  hurtownia.nr_id = sklep.nr_id AND
  sklep.nr_id = serwis.nr_id AND
  producent.nr_id = 1;
A. Według parametru wyrób Jd wyłącznie dla trzech tabel.
B. Według parametru wyrób id dla wszystkich tabel.
C. Według parametru nr id wyłącznie dla trzech tabel.
D. Według parametru nr id dla wszystkich tabel.
Brawo! Wybrałeś poprawną odpowiedź, zgodnie z którą parametrem nr id zwraca wiersze dla wszystkich tabel. To zapytanie SQL odnosi się do czterech tabel: producent, hurtownia, sklep i serwis. Zwraca ono wiersze, gdzie wartość kolumny nr_id jest taka sama we wszystkich tych tabelach i równa 1. Dodatkowo, jakość danych jest wspierana przez fakt, że zapytanie sprawdza zgodność wartości kolumny wyrob_id między tabelami producent i serwis. Zrozumienie tego, jak działa to zapytanie i dlaczego to jest ważne, jest kluczowe w praktyce programistycznej. Zapewnia to, że możemy skutecznie i efektywnie manipulować danymi, a także zrozumieć, jak nasze zapytania wpływają na wyniki, które otrzymujemy. Dobra praktyka jest zawsze zrozumienie, jakie dane są zwracane przez nasze zapytanie, zanim zaczniemy z nich korzystać w naszym kodzie. Ostatecznie, zrozumienie, jak korzystać z zapytań SQL do manipulacji i odzyskiwania danych, jest kluczowym elementem dowolnej roli programistycznej.

Pytanie 33

Aby ustanowić połączenie z serwerem bazy danych w języku PHP, należy użyć funkcji

A. mysqli_autocommit()
B. mysqli_connect()
C. mysqli_fetch_row()
D. mysqli_get_connection_stats()
Funkcja mysqli_connect() to taka podstawa w PHP, która pomaga połączyć się z bazą danych MySQL. Musisz jej użyć z czterema argumentami: nazwą hosta, użytkownika, hasłem i nazwą bazy danych. Dzięki mysqli_connect() Twoja aplikacja będzie działać sprawniej i bezpieczniej, co jest mega ważne. Na przykład, żeby połączyć się z bazą, możesz użyć takiego kodu: $conn = mysqli_connect('localhost', 'username', 'password', 'database_name');. Jak już masz połączenie, to później możesz robić różne zapytania SQL i manipulować danymi. To też jest zgodne z zasadą separacji, bo oddziela logikę od zarządzania danymi. No i pamiętaj, że warto zadbać o obsługę błędów przy łączeniu, najlepiej sprawdzić to przy pomocy prostego warunku: if (!$conn) { die('Connection failed: ' . mysqli_connect_error()); } Moim zdaniem, to bardzo przydatne podejście.

Pytanie 34

W języku PHP zapis // służy do

A. używania tablicy superglobalnej
B. dodawania komentarza wieloliniowego
C. zastosowania operatora dzielenia bez reszty
D. dodawania komentarza jednoliniowego
Znak // w języku PHP jest używany do wstawiania komentarzy jednoliniowych. Oznacza to, że wszystko, co znajduje się po tym znaku na danej linii, zostanie zignorowane przez interpreter PHP. Komentarze są istotnym elementem programowania, ponieważ umożliwiają programistom dodawanie wyjaśnień i notatek do kodu, co znacznie ułatwia jego późniejsze zrozumienie i konserwację. Przykładowo, możesz użyć komentarza jednoliniowego, aby wyjaśnić określoną funkcjonalność w kodzie: // To jest funkcja obliczająca sumę. Warto również pamiętać, że stosowanie komentarzy jest standardową praktyką w branży, która zwiększa czytelność i jakość kodu. Dobrą praktyką jest stosowanie komentarzy, aby wyjaśniać bardziej złożone fragmenty kodu, co wpływa na łatwiejsze współdzielenie pracy w zespołach programistycznych, a także na przyszłe modyfikacje kodu przez innych programistów. Warto zaznaczyć, że PHP obsługuje także komentarze wieloliniowe, które zaczynają się od /* i kończą na */. Jednak dla prostych, jednozdaniowych notatek znak // jest najbardziej odpowiedni.

Pytanie 35

Czy automatyczna weryfikacja właściciela witryny dostępnej przez protokół HTTPS jest możliwa dzięki

A. informacjom kontaktowym na stronie
B. kluczom prywatnym
C. certyfikatowi SSL
D. danym whois
Automatyczna weryfikacja właściciela strony udostępnianej przez protokół HTTPS jest możliwa dzięki certyfikatowi SSL, który jest kluczowym elementem infrastruktury bezpieczeństwa w sieci. Certyfikat SSL (Secure Socket Layer) to dokument cyfrowy, który potwierdza tożsamość właściciela witryny oraz umożliwia szyfrowanie danych przesyłanych pomiędzy przeglądarką użytkownika a serwerem. W procesie weryfikacji certyfikatu, przeglądarka internetowa kontaktuje się z odpowiednim urzędem certyfikacji (CA), który wystawił dany certyfikat, w celu potwierdzenia, że certyfikat jest ważny oraz że podany w nim adres URL rzeczywiście należy do określonego właściciela. Przykładowe zastosowanie certyfikatów SSL obejmuje e-commerce, gdzie ochrona danych osobowych i transakcji jest kluczowa. Standardy takie jak X.509 określają format certyfikatów SSL, a ich zastosowanie zapewnia użytkownikom bezpieczniejsze przeglądanie stron internetowych. W kontekście SEO, posiadanie certyfikatu SSL jest również korzystne, gdyż wyszukiwarki, takie jak Google, preferują strony zabezpieczone HTTPS, co wpływa na ich pozycjonowanie.

Pytanie 36

Wskaż zapis stylu CSS, który formatuje punktor listy numerowanej na wielkie cyfry rzymskie oraz listy punktowanej na kwadraty?

A. ol { list-style-type: disc; } ul { list-style-type: upper-alpha; }
B. ol { list-style-type: upper-alpha; } ul { list-style-type: disc; }
C. ol { list-style-type: square; } ul { list-style-type: upper-roman; }
D. ol { list-style-type: upper-roman; } ul { list-style-type: square; }
Odpowiedź jest poprawna, ponieważ styl CSS `ol { list-style-type: upper-roman; }` ustawia numerację dla listy uporządkowanej na wielkie cyfry rzymskie, co jest zgodne z wymaganiami. Użycie `ul { list-style-type: square; }` definiuje styl dla listy nieuporządkowanej, gdzie punkty są przedstawiane jako kwadraty. Stylizacja list w CSS jest kluczowa dla estetyki i czytelności dokumentu, a korzystanie z różnych typów markerów dla różnych rodzajów list potrafi znacząco poprawić organizację treści. Przykładem zastosowania może być dokumentacja techniczna, gdzie numery rzymskie używane są do oznaczania sekcji głównych, a kwadratowe punkty do podpunktów. Tego rodzaju stylizacja jest zgodna z dobrymi praktykami w projektowaniu stron internetowych, które wymaga dobrego zrozumienia CSS i jego właściwości. Ponadto, CSS pozwala na elastyczne dostosowywanie stylów, co jest istotne w kontekście responsywności i dostępności stron.

Pytanie 37

Funkcje takie jak rozmycie Gaussa, wygładzanie oraz szum RGB są elementami oprogramowania do przetwarzania

A. Grafiki wektorowej
B. Ścieżki audio
C. Dźwięku w standardzie MIDI
D. Grafiki rastrowej
Rozmycie Gaussa, wygładzanie oraz szum RGB to techniki powszechnie stosowane w obróbce grafiki rastrowej. Rozmycie Gaussa, jako technika filtracji, ma na celu zmiękczenie krawędzi i wygładzenie obrazów, co jest szczególnie przydatne w retuszu zdjęć oraz usuwaniu szumów. Przykładem zastosowania może być poprawa jakości zdjęć w programach takich jak Adobe Photoshop, gdzie techniki te są wykorzystywane do uzyskania bardziej estetycznych efektów wizualnych. Wygładzanie, z kolei, pomaga w eliminacji szumów, co jest kluczowe w przypadku obrazów o niskiej jakości, a również poprawia czytelność obrazów, co jest nieocenione w projektowaniu graficznym. Szum RGB to zjawisko, które występuje często w obrazach cyfrowych, a jego minimalizacja za pomocą filtrów wygładzających prowadzi do osiągnięcia bardziej realistycznych kolorów i lepszej jakości obrazu. Te techniki są zgodne z najlepszymi praktykami w dziedzinie grafiki komputerowej, gdzie jakość wizualna odgrywa kluczową rolę w tworzeniu profesjonalnych projektów.

Pytanie 38

W bazie danych znajduje się tabela pracownicy z kolumnami: id, imie, nazwisko, pensja. W nowym roku zdecydowano o podwyżce pensji dla wszystkich pracowników o 100 zł. Ta aktualizacja w bazie danych powinna mieć formę

A. UPDATE pracownicy SET pensja = 100
B. UPDATE pensja SET +100
C. UPDATE pracownicy SET pensja = pensja + 100
D. UPDATE pensja SET 100
Odpowiedź 'UPDATE pracownicy SET pensja = pensja + 100;' jest właściwa, ponieważ używa standardowej składni SQL do aktualizacji danych w tabeli. W tym przypadku, instruktacja 'SET pensja = pensja + 100' oznacza, że dla każdego rekordu w tabeli 'pracownicy', wartość kolumny 'pensja' zostanie zwiększona o 100 zł. To podejście jest zgodne z zasadami dobrych praktyk w programowaniu SQL, ponieważ aktualizuje wartość na podstawie jej bieżącej wartości, co pozwala na zachowanie pełnej kontroli nad danymi. Tego rodzaju aktualizacja jest często stosowana w bazach danych, gdy konieczne jest modyfikowanie istniejących danych na podstawie ich aktualnych wartości. Na przykład, jeśli w tabeli mamy pracowników z różnymi wynagrodzeniami, każdemu z nich dodamy stałą kwotę, co sprawia, że struktura danych pozostaje spójna. Dodatkowo, takie podejście ma zastosowanie w praktycznych scenariuszach, takich jak coroczne podwyżki wynagrodzeń, co jest powszechną praktyką w wielu organizacjach, a poprawność tej operacji można zweryfikować poprzez zapytania SELECT po aktualizacji.

Pytanie 39

Która z definicji tablicy asocjacyjnej w PHP jest składniowo poprawna?

A. $wiek = array("Anna"=>"35", "Ewa"=>"37", "Oliwia"=>"43");
B. $wiek = array({"Anna", "35"}, {"Ewa", "37"}, {"Oliwia", "43"});
C. $wiek = array("Anna"=35, "Ewa"=37, "Oliwia"=43);
D. $wiek = array([Anna, 35], [Ewa, 37], [Oliwia, 43]);
Definicja tablicy asocjacyjnej w języku PHP, przedstawiona jako $wiek = array("Anna"=>"35", "Ewa"=>"37", "Oliwia"=>"43");, jest poprawna składniowo. Tablice asocjacyjne to struktury danych, które pozwalają na przechowywanie wartości w parach klucz-wartość. Kluczami mogą być stringi lub liczby, a wartości mogą być różnego typu. Użycie operatora => jest kluczowe, ponieważ wskazuje, że dla danego klucza (np. "Anna") przypisana jest konkretna wartość (np. "35"). W praktyce tablice asocjacyjne są niezwykle użyteczne w wielu sytuacjach, takich jak przetwarzanie danych z formularzy, gdzie klucze odpowiadają nazwom pól, a wartości to wprowadzone przez użytkownika dane. Dzięki tablicom asocjacyjnym można z łatwością uzyskiwać dostęp do wartości, analizować je i manipulować, co czyni je standardowym narzędziem w programowaniu w PHP i praktycznym podejściem w tworzeniu aplikacji webowych.

Pytanie 40

Zgodnie z zasadami ACID dotyczącymi przeprowadzania transakcji wymóg izolacji (ang. isolation) wskazuje, że

A. gdy dwie transakcje działają równocześnie, to zazwyczaj nie dostrzegają zmian wprowadzanych przez siebie
B. po zrealizowaniu transakcji system bazy danych będzie zgodny
C. w sytuacji konfliktu z inną transakcją obie zmieniają te same dane równocześnie
D. pod określonymi warunkami dane modyfikowane przez transakcję mogą być cofnięte
Izolacja (ang. isolation) jest jednym z kluczowych elementów właściwości ACID, które zapewniają niezawodność transakcji w systemach baz danych. Oznacza ona, że kiedy dwie lub więcej transakcji są wykonywane równolegle, nie powinny one wzajemnie wpływać na swoje wyniki. W praktyce oznacza to, że zmiany wprowadzone przez jedną transakcję nie są widoczne dla innych transakcji, dopóki nie zostaną one zatwierdzone (ang. commit). Przykładem może być sytuacja, w której jedna transakcja aktualizuje stan konta użytkownika, a druga transakcja odczytuje saldo tego konta. Dzięki właściwości izolacji, druga transakcja nie zobaczy zmian wprowadzonych przez pierwszą, co zapobiega niepożądanym efektom, takim jak odczytanie nieaktualnych danych. W praktycznych rozwiązaniach, takich jak bazy danych współczesnych systemów informatycznych, często stosuje się różne poziomy izolacji, takie jak Read Uncommitted, Read Committed, Repeatable Read czy Serializable, które pozwalają na dostosowanie stopnia izolacji do specyficznych wymagań aplikacji. Właściwe skonfigurowanie poziomu izolacji ma kluczowe znaczenie dla zachowania integralności danych oraz wydajności systemu.