Przejdź do głównej treści
  1. Strona główna
  2. Wyniki egzaminu

Wyniki egzaminu

Nowy egzamin

Informacje o egzaminie

  • Zawód: Technik programista
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Rozpoczęcie: 7 czerwca 2026 23:03
  • Zakończenie: 7 czerwca 2026 23:30

Egzamin zdany!

Wynik: 29/40 punktów (72,5%)

Wymagane minimum: 20 punktów (50%)

Twój wynik na tle innych

Twój wynik jest lepszy niż 59% podejść do kwalifikacji INF.03.

Porównanie z 39483 zakończonymi podejściami do tej kwalifikacji (dane zbiorcze, bez wyników indywidualnych).

Zachowaj ten wynik na koncie

Załóż darmowe konto albo zaloguj się - ten egzamin przypiszemy do Twojego konta, więc wrócisz do swoich błędów, będziesz śledzić postęp i dostaniesz powtórki dobrane do Twoich odpowiedzi.

Analiza przebiegu egzaminu - sprawdź jak rozwiązywałeś pytania Przebieg egzaminu

Analiza przebiegu egzaminu

Odtwarzaj przebieg egzaminu krok po kroku i ucz się na własnych błędach - kolejność rozwiązywania, czas nad każdym pytaniem, momenty zmiany odpowiedzi.

  • Suwak czasu - przeglądaj pytania w kolejności rozwiązywania.
  • Tryb nauki - poprawne odpowiedzi i wyjaśnienia.
  • Analiza czasu - ile czasu nad każdym pytaniem.
  • Monitoring focusu - momenty opuszczenia zakładki.

Pochwal się swoim wynikiem!

Szczegółowe wyniki

Pytanie 1

Dla dowolnego a z zakresu (0,99) celem funkcji napisanej w języku JavaScript jest
function fun(a)
 {
    for(n=a; n <=100; n++)
    document.write(n);
    return(n);
 }

A. wypisanie liczb z zakresu a .. 99 oraz zwrócenie wartości 100
B. zwrócenie liczb z zakresu a .. 99
C. wypisanie liczb z zakresu a .. 100 oraz zwrócenie wartości zmiennej n
D. wypisanie wartości zmiennej a i zwrócenie wartości zmiennej n
Funkcja napisana w JavaScript przewiduje iterację w celu wypisania liczb z przedziału ustalonego przez zmienną 'a' do 100. W kodzie zastosowano pętlę for, która zaczyna się od wartości a, a kończy na 100. Wartość zmiennej 'n' jest używana jako iterator, zaczynając od 'a' i zwiększając się o 1 w każdym obiegu pętli, aż osiągnie 100. Warto zauważyć, że funkcja wykorzystuje metodę 'document.write()', która służy do zapisywania danych na stronie internetowej. Po zakończeniu iteracji funkcja zwraca wartość zmiennej 'n', co w kontekście tego zadania oznacza, że zwróci ona wartość 101, ponieważ po ostatniej iteracji n przekroczy wartość 100. Przykład użycia tej funkcji w praktyce może obejmować generowanie dynamicznych treści na stronach internetowych, które wymagają wyświetlenia zakresu wartości liczbowych. Warto również dodać, że zgodnie z aktualnymi standardami JavaScript, kod mógłby być bardziej elegancko zapisany, wykorzystując np. funkcję 'console.log()' zamiast 'document.write()', co jest bardziej zalecane w nowoczesnym podejściu do programowania w JavaScript.

Pytanie 2

W przedstawionym kodzie PHP przeprowadzono operację na bazie danych. Jaką funkcję należy wywołać, aby uzyskać liczbę wierszy, które zostały zmienione w tabeli?

$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()
Funkcja mysqli_affected_rows() jest używana w kontekście zapytań modyfikujących dane w bazie danych, takich jak INSERT, UPDATE, DELETE. Po wykonaniu zapytania, które zmienia dane, funkcja ta zwraca liczbę wierszy, które zostały zmodyfikowane w wyniku wykonania tego zapytania. W przypadku podanego zapytania, zmieniającego stanowisko w tabeli 'kadra' dla rekordów z identyfikatorem mniejszym niż 10, użycie mysqli_affected_rows() pozwoli na uzyskanie informacji o tym, ile wierszy zostało zaktualizowanych. Jest to niezwykle przydatne w sytuacjach, gdy programista chce mieć kontrolę nad tym, które operacje modyfikujące dane przyniosły zamierzony efekt. Przykładowo, jeśli po wykonaniu zapytania chcemy zaktualizować interfejs użytkownika lub wykonać dodatkowe operacje tylko wtedy, gdy zmiany zostały wprowadzone, użycie tej funkcji jest kluczowe. Dobrą praktyką jest również uwzględnienie obsługi błędów, aby upewnić się, że operacje na bazie danych są poprawnie wykonane, co można osiągnąć za pomocą funkcji mysqli_error() w przypadku błędów zapytań.

Pytanie 3

Który typ danych w języku C++ ma najszerszy zakres wartości całkowitych?

A. short
B. int
C. long int
D. long long
Spośród wymienionych typów całkowitych C++ najszerszy zakres ma long long (zwykle 64-bitowy). Dlatego największy zakres daje long long.

Pytanie 4

Który z linków ma prawidłową budowę?

A. <a href="mailto:adres"> tekst </a>
B. <a href='http://adres'> tekst </a>
C. <a href='mailto:adres'> tekst </a>
D. <a href="http://adres"> tekst <a>
Odpowiedzi, które nie spełniają standardów HTML, prowadzą do niepoprawnych wyników. Na przykład, użycie pojedynczych cudzysłowów w atrybucie href, jak w konstrukcji <a href='mailto:adres'> tekst </a>, choć działa w wielu przeglądarkach, nie jest zgodne z zaleceniami HTML5, które preferują podwójne cudzysłowy. Ten błąd może prowadzić do problemów z interpretacją przez parsery HTML, a w ekstremalnych przypadkach może uniemożliwić poprawne wyświetlanie odsyłaczy. Dodatkowo, ostatnia odpowiedź <a href="http://adres"> tekst <a> jest błędna, ponieważ nie zamyka znacznika <a>, co skutkuje usunięciem semantycznego znaczenia linku i może prowadzić do problemów z dostępnością oraz indeksowaniem przez wyszukiwarki. Tego typu błędy są często wynikiem niedbałości lub braku zrozumienia podstaw HTML. Poprawna konstrukcja odsyłaczy jest kluczowa w budowaniu dostępnych stron internetowych, które są łatwe do nawigacji i interpretacji przez różne urządzenia i technologie asystujące. Przykłady błędów w HTML mogą również prowadzić do frustracji użytkowników, którzy mogą mieć problemy z interakcją z witryną, co w efekcie wpływa na ich postrzeganie jakości i profesjonalizmu danej strony.

Pytanie 5

Jak nazywa się metoda udostępniania bazy danych w programie Microsoft Access, która dotyczy wszystkich obiektów bazy umieszczonych na dysku sieciowym i wykorzystywanych jednocześnie przez kilku użytkowników?

A. dzielonej bazy danych
B. witryny programu SharePoint
C. folderu sieciowego
D. serwera bazy danych
Odpowiedź "folderu sieciowego" jest prawidłowa, ponieważ w kontekście Microsoft Access, metoda udostępniania bazy danych, która obejmuje obiekty bazy umieszczone na dysku sieciowym, opiera się na wykorzystaniu folderów sieciowych. Dzięki temu wiele użytkowników może jednocześnie uzyskiwać dostęp do tych samych danych i obiektów bazy danych, co sprzyja współpracy i zwiększa efektywność pracy. Przykładem zastosowania folderu sieciowego może być sytuacja, w której zespół pracowników korzysta z jednolitej bazy danych klientów, przechowywanej w lokalizacji na serwerze. Wszyscy członkowie zespołu mogą wprowadzać, modyfikować i przeglądać dane, co umożliwia sprawną wymianę informacji i synchronizację działań. Warto również zaznaczyć, że stosowanie folderów sieciowych to jedna z dobrych praktyk w zarządzaniu danymi w organizacjach, ponieważ pozwala na centralizację zasobów oraz kontrolowanie dostępu do nich, co jest zgodne z zasadami bezpieczeństwa informacji.

Pytanie 6

W języku PHP pętla umieści liczby w tablicy

$x=0;
for($i=0; $i<10; $i++)
{
    $tab[$i]=$x;
    $x=$x+10;
}
A. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
B. 0, 10, 20, 30, 40, 50, 60, 70, 80, 90
C. 10, 20, 30, 40, 50, 60, 70, 80, 90, 100
D. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Rozważmy, dlaczego inne odpowiedzi są niepoprawne. Pierwsza z nich sugeruje, że pętla wstawi do tablicy sekwencję od 0 do 10, co implikuje iterację, która zwiększa zmienną o 1. Jednak w analizowanym kodzie zmienna $x jest zwiększana o 10. Natomiast druga odpowiedź zakłada, że wartości w tablicy będą rosnąć od 0 do 9 co również wskazuje na niepełne zrozumienie mechanizmu działania pętli i inkrementacji zmiennej $x. Z kolei ostatnia odpowiedź sugeruje że do tablicy zostaną wstawione liczby kończące się na 100. To wskazuje na błędne przetworzenie pętli, w której zakres wartości $x nigdy nie dochodzi do 100 w żadnym z kroków iteracji. Typowym błędem myślowym w tych przypadkach jest niezrozumienie jak wartość zmiennej $x jest zmieniana w każdym kroku pętli oraz jak indeksy tablicy są przypisywane. Kluczowym elementem prawidłowego zrozumienia działania tego kodu jest dostrzeżenie, że pętla for kontroluje liczbę iteracji, a zmienna $x jest modyfikowana zgodnie z wyrażeniem $x=$x+10 przy każdym obrocie, co prowadzi do systematycznego zwiększania wartości dodawanej do tablicy.

Pytanie 7

Kod źródłowy przedstawiony poniżej ma na celu wyświetlenie

Ilustracja do pytania
A. liczb wprowadzonych z klawiatury, aż do momentu wprowadzenia wartości 0
B. losowych liczb od 0 do 100, aż do wylosowania wartości 0
C. wylosowanych liczb z zakresu od 1 do 99
D. ciągu liczb od 1 do 100
Programowanie wymaga precyzyjnego zrozumienia działania każdej instrukcji oraz wpływu na końcowy wynik. W przypadku omawianego pytania kilka błędnych koncepcji mogło wprowadzić w błąd. Po pierwsze założenie że kod wyświetla wylosowane liczby od 1 do 99 jest nieprawidłowe ponieważ używana funkcja rand(0 100) pozwala na losowanie liczb od 0 do 100 włącznie. Należy zauważyć że zrozumienie zakresu generowanych wartości przez funkcje losujące jest kluczowe zwłaszcza w aplikacjach wymagających precyzyjnego sterowania zakresem danych wejściowych. Druga potencjalna pomyłka to przypisanie kodowi zadania wyświetlania kolejnych liczb od 1 do 100 co w rzeczywistości wymagałoby zupełnie innej konstrukcji pętli najlepiej for z precyzyjnie określonym zakresem liczbowym. Trzecim nieporozumieniem mogłoby być przyjęcie że program wczytuje liczby z klawiatury dopóki nie zostanie wpisane zero co sugerowałoby użycie funkcji pobierającej dane od użytkownika jak np. scanf w języku C lub input w Pythonie. Zrozumienie różnicy między pobieraniem danych od użytkownika a losowaniem z automatycznie generowanego przedziału jest istotne przy tworzeniu interaktywnych aplikacji. Rozróżnienie tych mechanizmów umożliwia tworzenie bardziej złożonych i elastycznych programów które mogą reagować na różne źródła danych oraz zmieniające się warunki w środowisku uruchomieniowym. Poprawne rozumienie i wykorzystanie tych koncepcji jest fundamentalne dla efektywnego tworzenia oprogramowania i optymalizacji procesów programistycznych.

Pytanie 8

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

$liczba = 1;
while ($liczba != 0)
{
  $liczba = rand(0, 100);
  echo $liczba;
}
A. losowe liczby od 0 do 100 aż do momentu, gdy wylosowana zostanie wartość 0
B. wylosowane liczby od 1 do 99
C. kolejne liczby od 1 do 100
D. liczby wprowadzane z klawiatury do momentu, gdy wczytana zostanie wartość 0
Odpowiedzi, które sugerują, że kod generuje kolejne liczby od 1 do 100, wylosowane liczby od 1 do 99, czy też wczytane z klawiatury liczby, zawierają fundamentalne błędy w interpretacji logiki działania przedstawionego kodu. Po pierwsze, pętla while w kodzie analizowanym opiera się na losowym generowaniu liczb z wykorzystaniem funkcji rand(), a nie na sekwencyjnym przydzielaniu wartości. Kod nie generuje przyrostu numerycznego, jak sugeruje odpowiedź sugerująca liczby od 1 do 100. Ponadto, nie ma żadnej logiki, która wprowadzałaby wartości do programu z klawiatury, co całkowicie wyklucza odpowiedzi sugerujące wczytywanie liczb. Ważne jest, aby zrozumieć, że w kontekście programowania różnica pomiędzy losowym generowaniem a sekwencyjnym przydzielaniem wartości ma kluczowe znaczenie. Niepoprawne koncepcje pochodzą często z mylenia pojęć losowości i deterministycznych sekwencji, co prowadzi do błędnych wniosków. Każdy programista musi być świadomy tych różnic, aby unikać nieporozumień w kodzie, co jest istotne zarówno w codziennej praktyce programistycznej, jak i w bardziej złożonych projektach, gdzie precyzyjne działanie kodu jest kluczowe dla uzyskania oczekiwanych wyników.

Pytanie 9

W zaprezentowanym fragmencie algorytmu użyto

Ilustracja do pytania
A. jeden blok decyzyjny.
B. jedną pętlę.
C. trzy bloki operacyjne (procesy).
D. dwie pętle.
W przedstawionym fragmencie algorytmu zastosowano jedną pętlę co jest zgodne z poprawną odpowiedzią. Pętla to konstrukcja programistyczna pozwalająca wielokrotnie wykonywać fragment kodu dopóki spełniony jest określony warunek. W analizowanym schemacie widzimy jednokrotną pętlę oznaczoną powrotem do wcześniejszego punktu co jest charakterystyczne dla takich struktur. Najczęściej używane pętle to for while i do-while różniące się sposobem sprawdzania warunku początkowego. Pętle są fundamentalne w algorytmice i pozwalają na realizację złożonych operacji takich jak iteracja po tablicach czy przetwarzanie danych wejściowych. Ich zastosowanie zwiększa efektywność kodu i upraszcza jego strukturę. Dobrą praktyką jest dbanie o czytelność pętli i unikanie skomplikowanych zależności co poprawia zrozumienie kodu przez innych programistów. Warto również pamiętać o zasadach optymalizacji np. minimalizowanie liczby iteracji co przekłada się na lepszą wydajność.

Pytanie 10

Fragment kodu w języku JavaScript realizujący dodawanie dwóch liczb ma poniższą postać. Aby dodawanie wykonane było po kliknięciu przycisku o nazwie "dodaj", należy w wykropkowane miejsce wstawić

Podaj pierwszą liczbę: <input type="text" name="liczba1" />
Podaj drugą liczbę: <input type="text" name="liczba2" />
….
<script type=text/javascript>
function dodaj()
{
    // ta funkcja realizuje dodawanie i podaje jego wynik
}
</script>
A. <button onclick="return dodaj()">dodaj</button>
B. <button onselect="return dodaj()">dodaj</button>
C. <button onclick="return oblicz()">dodaj</button>
D. <button onselect="return dodaj()">oblicz</button>
Gratulacje, wybrałeś poprawną odpowiedź. Przycisk w JavaScript jest aktywowany poprzez zdarzenie onclick, które jest wyzwalane po kliknięciu przycisku. Właściwość onclick jest jednym z wielu zdarzeń w JavaScript, które są używane do obsługi interakcji użytkownika. Kiedy użytkownik kliknie przycisk, zdarzenie onclick jest wywoływane i kod zawarty w tym zdarzeniu jest wykonany. W tym przypadku, kod to 'return dodaj()', co oznacza, że funkcja 'dodaj' jest wywoływana. Ta funkcja została zdefiniowana w skrypcie JavaScript i realizuje dodawanie dwóch liczb. Zdarzenie onclick jest często używane w praktycznych zastosowaniach, takich jak przyciski subskrybcji, przyciski do logowania czy przyciski do przesyłania formularzy. Zasada ta jest zgodna z dobrymi praktykami programowania, które zalecają utrzymanie interakcji użytkownika w kodzie JavaScript zamiast HTML.

Pytanie 11

Jakie wyrażenie logiczne powinno być użyte w języku JavaScript, aby zastosować operacje tylko dla wszystkich liczb ujemnych z przedziału jednostronnie domkniętego <-200,-100)?

A. (liczba <=-200) && (liczba<-100)
B. (liczba >=-200) || (liczba>-100)
C. (liczba <=-200) || (liczba>-100)
D. (liczba >=-200) && (liczba<-100)
Jeśli chcesz wykonywać operacje tylko na liczbach ujemnych w przedziale od -200 do -100 w JavaScript, musisz użyć takiego wyrażenia: (liczba >= -200) && (liczba < -100). To wyrażenie łączy dwa warunki, co oznacza, że oba muszą być spełnione, żeby całość była prawdziwa. Pierwszy warunek mówi, że liczba musi być większa lub równa -200, a drugi, że musi być mniejsza niż -100. Tak definiujemy przedział, co jest zgodne z zasadami ECMAScript, na których oparty jest JavaScript. Dla przykładu, jeśli weźmiesz liczbę -150, to to wyrażenie zwróci prawdę, bo -150 jest w tym przedziale. Natomiast dla -250, wyrażenie zwróci fałsz, bo nie spełnia pierwszego warunku. Dzięki temu, programista ma pewność, że operacje wykonywane są jedynie na liczbach w danym przedziale. Takie zastosowanie można spotkać na przykład w walidacji danych w formularzach czy w filtracji danych w aplikacjach webowych.

Pytanie 12

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

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

Pytanie 13

W bazie danych księgarni znajduje się tabela ksiazki, która zawiera pola: id, idAutor, tytul, ileSprzedanych, oraz tabela autorzy z polami: id, imie, nazwisko. Jak można utworzyć raport sprzedanych książek zawierający tytuły oraz nazwiska autorów?

A. trzeba utworzyć dwie oddzielne kwerendy: pierwsza do wyszukiwania tytułów książek, druga do wyszukiwania nazwisk autorów
B. konieczne jest stworzenie kwerendy, która wyszukuje tytuły książek
C. należy zdefiniować relację 1..1 pomiędzy tabelami ksiazki a autorzy, a następnie stworzyć kwerendę łączącą obie tabele
D. należy zdefiniować relację l..n pomiędzy tabelami ksiazki a autorzy, a następnie stworzyć kwerendę łączącą obie tabele
Relacja l..n między tabelami 'ksiazki' i 'autorzy' jest naprawdę ważna. To oznacza, że jeden autor może napisać kilka książek, co jest całkiem normalne w świecie księgarni. Dzięki tej relacji, dla każdego 'idAutor' w tabeli 'ksiazki' możemy mieć wiele wpisów, co super ułatwia powiązanie tytułów z autorami. Jakbyś stworzył kwerendę, która łączy te obie tabele, to bez problemu uzyskasz dane, które jasno pokazują te relacje. Na przykład, taka kwerenda SQL mogłaby wyglądać tak: SELECT ksiazki.tytul, autorzy.nazwisko FROM ksiazki JOIN autorzy ON ksiazki.idAutor = autorzy.id; Taki sposób działania jest zgodny z normalizacją danych, co sprawia, że nasze bazy danych będą efektywne i dobrze zorganizowane.

Pytanie 14

Jakim słowem kluczowym można zainicjować zmienną w JavaScript?

A. var
B. instanceof
C. variable
D. new
W języku JavaScript, deklaracja zmiennej przy użyciu słowa kluczowego 'var' jest jednym z podstawowych i fundamentalnych aspektów programowania. Słowo kluczowe 'var' umożliwia tworzenie zmiennych, które mogą przechowywać wartości zarówno typu prymitywnego, jak i obiektowego. Wartością dodaną użycia 'var' jest to, że zmienne zadeklarowane w ten sposób mają zasięg funkcji, co oznacza, że są dostępne w obrębie funkcji, w której zostały zadeklarowane, jak również w zasięgu globalnym, jeśli zostały zdefiniowane poza funkcją. Przykład użycia 'var': var liczba = 10; zmienna 'liczba' jest teraz dostępna w obrębie całej funkcji. Warto również zauważyć, że w nowszych standardach JavaScript, takich jak ECMAScript 6, wprowadzono dodatkowe słowa kluczowe takie jak 'let' i 'const', które oferują bardziej precyzyjny zasięg blokowy i zwiększają bezpieczeństwo kodu. 'Var' pozostaje jednak ważnym elementem do zrozumienia dla każdego programisty JavaScript, ponieważ jest fundamentem, na którym opiera się wiele starszych i nadal używanych skryptów.

Pytanie 15

W aplikacji webowej komunikat powinien być wyświetlany jedynie wtedy, gdy użytkownik odwiedza stronę po raz pierwszy. Jakiej funkcji PHP należy użyć w tym przypadku?

A. session_destroy
B. define
C. mysqli_change_user
D. setcookie
Funkcja setcookie w PHP jest wykorzystywana do ustawiania ciasteczek w przeglądarkach użytkowników. Ciasteczka te mogą przechowywać różne informacje, co umożliwia personalizację doświadczeń użytkownika na stronie internetowej. W kontekście opisanego zagadnienia, można zastosować setcookie do zdefiniowania ciasteczka, które będzie informować, że dany użytkownik odwiedza stronę po raz pierwszy. Przykładowe zastosowanie może wyglądać tak: jeśli na stronie nie ma określonego ciasteczka (np. 'first_visit'), można wyświetlić komunikat powitalny i wówczas ustawić ciasteczko z odpowiednim czasem ważności, co pozwala na ukrycie tego komunikatu przy kolejnych wizytach. Użycie tej funkcji jest zgodne z najlepszymi praktykami w zakresie zarządzania sesjami użytkowników, ponieważ pozwala na zachowanie stanu użytkownika w sposób prosty i efektywny. Dodatkowo, dzięki ciasteczkom, można analizować zachowanie użytkowników, co pozwala na dalsze optymalizowanie doświadczeń na stronie.

Pytanie 16

Aby wyróżnić innym kolorem wiersz tabeli, na który aktualnie najeżdża kursor myszy, należy w CSS użyć:

A. pseudoelementu :first-line
B. nowego selektora klasy dla wiersza tabeli
C. pseudoklasy :visited
D. pseudoklasy :hover
Pseudoklasa :hover stosuje wybrane reguły CSS tylko wtedy, gdy kursor myszy znajduje się nad elementem. Aby podświetlić wiersz tabeli przy najechaniu, zapisuje się np. tr:hover { background: #eee; }. Po zsunięciu kursora styl znika. Dlatego do wyróżnienia wskazywanego wiersza służy pseudoklasa :hover.

Pytanie 17

Tabela gory zawiera dane o polskich wzniesieniach oraz łańcuchach górskich, w których te wzniesienia się znajdują. Aby uzyskać Koronę Gór Polskich, czyli najwyższe wzniesienie w każdym z łańcuchów górskich, należy wykonać kwerendę

A. SELECT pasmo, szczyt, MAX(wysokosc) FROM gory
B. SELECT pasmo, szczyt, MAX(wysokosc) FROM gory GROUP BY pasmo
C. SELECT pasmo, szczyt FROM gory GROUP BY wysokosc
D. SELECT pasmo, szczyt, wysokosc FROM gory
W analizowanym pytaniu, wszystkie pozostałe zapytania nie są w stanie dostarczyć wymaganych informacji o najwyższych szczytach górskich w każdym paśmie. Pierwsza odpowiedź, SELECT pasmo, szczyt, wysokosc FROM gory; po prostu wyświetli wszystkie kolumny bez jakiejkolwiek agregacji, co prowadzi do nieprzydatnych wyników, gdyż nie wskazuje na najwyższe szczyty, które nas interesują. Druga odpowiedź, SELECT pasmo, szczyt, MAX(wysokosc) FROM gory;, jest błędna, ponieważ nie zawiera klauzuli GROUP BY. Bez niej, zapytanie zwróci jedynie najwyższą wysokość w całej tabeli, a nie w podziale na poszczególne pasma, co jest kluczowym elementem naszego zapytania. Trzecia opcja, SELECT pasmo, szczyt FROM gory GROUP BY wysokosc;, jest również niepoprawna, gdyż grupowanie według wysokości nie ma sensu w kontekście poszukiwania najwyższych szczytów w ramach pasm. Takie podejście prowadziłoby do niejednoznacznych wyników, ponieważ w każdym paśmie mogłoby być wiele szczytów o różnych wysokościach, a nie ma możliwości zidentyfikować najwyższego szczytu. Ustalanie grupy na podstawie niewłaściwego kryterium, jak w tym przypadku, często prowadzi do błędnych wniosków i jest typowym błędem myślowym, który należy unikać podczas pracy z danymi. Kluczowym wymogiem w takich zapytaniach jest zrozumienie, jakie kryteria powinny być zastosowane do grupowania danych oraz odpowiednie wykorzystanie funkcji agregujących w kontekście danego problemu.

Pytanie 18

Jak nazywa się mechanizm, dzięki któremu klasa pochodna przejmuje pola i metody klasy bazowej?

A. hermetyzacją
B. polimorfizmem
C. wirtualizacją
D. dziedziczeniem
Mechanizm, dzięki któremu klasa pochodna (potomna) przejmuje pola i metody klasy bazowej, nazywa się DZIEDZICZENIEM. Pozwala wielokrotnie wykorzystać i rozszerzać istniejący kod. Dlatego to dziedziczenie.

Pytanie 19

Jak dołączyć do strony skrypt z pliku przyklad.js?

A.
<script src="/przyklad.js"></script>
B.
<script link="przyklad.js"></script>
C.
<script>przyklad.js</script>
D.
<link rel="script" href="/przyklad.js">
Zewnętrzny plik JavaScript podłącza się znacznikiem <script>, wskazując jego lokalizację w atrybucie src (tak jak źródło obrazu w <img>): <script src="/przyklad.js"></script>. Znacznik <script> zawsze wymaga części zamykającej, nawet gdy nie ma między tagami żadnego kodu. Dlatego poprawny jest ten zapis.

Pytanie 20

Która funkcja PHP wczyta zawartość pliku do zmiennej (jako ciąg znaków)?

A.
fwrite()
B.
get_file()
C.
file_get_contents()
D.
eof()
fwrite() ZAPISUJE dane do pliku, a nie odczytuje. eof() i get_file() to funkcje nieistniejące w PHP w tej postaci. Zawartość pliku wczyta file_get_contents().

Pytanie 21

Którego zdarzenia użyć, aby funkcja JavaScript uruchomiła się PO ZAŁADOWANIU strony?

A.
onload
B.
onkeydown
C.
onclick
D.
onmouseout
Zdarzenie onload uruchamia funkcję dopiero PO całkowitym załadowaniu strony lub elementu - gdy gotowe są wszystkie zasoby (obrazy, style, skrypty). Dlatego skrypt operujący na elementach strony często startuje właśnie z <body onload="start()">, by mieć pewność, że dany element już istnieje w drzewie DOM. Zapamiętaj: „load” = wczytano - dopiero wtedy działaj.

Pytanie 22

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

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

Pytanie 23

Ograniczanie dostępu do niektórych pól lub metod obiektów danej klasy, tak aby mogły być one wykorzystywane wyłącznie przez wewnętrzne metody tej klasy lub funkcje zaprzyjaźnione, to

A. konkatenacja
B. dziedziczenie
C. polimorfizm
D. hermetyzacja
Dziedziczenie to mechanizm, który pozwala na tworzenie nowych klas na podstawie już istniejących, co umożliwia ponowne wykorzystanie kodu i wprowadzanie hierarchii w projektach, jednak nie ma nic wspólnego z ukrywaniem pól i metod. W dziedziczeniu, klasy pochodne dziedziczą właściwości i metody klas bazowych, co sprawia, że możliwe jest ich wykorzystanie, a nie ukrycie. Kolejną koncepcją jest konkatenacja, która w kontekście programowania nie odnosi się do hermetyzacji, lecz do łączenia ciągów tekstowych, co nie ma zastosowania przy ukrywaniu danych w klasach. Polimorfizm natomiast to zdolność obiektów do przyjmowania wielu form, co jest związane z interfejsami i dziedziczeniem, ale również nie dotyczy hermetyzacji. Typowym błędem myślowym jest mylenie tych pojęć z hermetyzacją, ponieważ wszystkie one są fundamentami programowania obiektowego, lecz służą różnym celom. Zrozumienie tego rozróżnienia jest istotne dla prawidłowego stosowania technik programistycznych i wdrażania efektywnych rozwiązań w praktyce.

Pytanie 24

W sklepie internetowym wykorzystuje się tabelę faktura. W trakcie generowania faktury pole dataPlatnosci nie zawsze jest uzupełnione. Aby to skorygować, pod koniec dnia należy wprowadzić bieżącą datę do wierszy, gdzie to pole jest puste. W tym celu można wykorzystać kwerendę

A. UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataplatnosci = '0000-00-00'
B. UPDATE faktury SET dataPlatnosci=CURTIME() WHERE id = 3
C. UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataPlatnosci IS NULL
D. UPDATE faktury SET dataPlatnosci=CURTIME() WHERE dataPlatnosci IS NOT NULL
Poprawna odpowiedź to 'UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataPlatnosci IS NULL;'. Ta kwerenda jest odpowiednia, ponieważ aktualizuje pole 'dataPlatnosci' w tabeli 'faktury' tylko w tych wierszach, gdzie to pole jest puste (NULL). Użycie funkcji CURDATE() pozwala na wprowadzenie aktualnej daty, co jest praktycznym rozwiązaniem dla problemu niewypełnionych dat płatności. Warto pamiętać, że korzystanie z NULL jest standardem w bazach danych, który oznacza brak wartości. Z perspektywy dobrych praktyk w zarządzaniu danymi, ważne jest, aby dbać o pełność danych, co wpływa na późniejsze analizy i generowanie raportów. Tego rodzaju kwerendy powinny być stosowane regularnie, aby zapewnić integralność i aktualność danych w systemie, co jest kluczowe w kontekście e-commerce, gdzie terminowość transakcji ma istotne znaczenie. Na przykład, w sytuacji, gdy system generuje raporty dotyczące płatności, brak daty płatności może prowadzić do nieprawidłowych wniosków.

Pytanie 25

Który operator w PHP oznacza sumę logiczną (logiczne LUB)?

A.
&&
B.
+
C.
!
D.
||
Pozostałe operatory oznaczają co innego. && to iloczyn logiczny (logiczne ORAZ) - wymaga obu warunków, czyli przeciwieństwo „lub”. ! to NEGACJA (odwraca wartość logiczną). + to dodawanie arytmetyczne. Sumę logiczną daje ||.

Pytanie 26

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

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

Pytanie 27

Jaką właściwość CSS należy zastosować, aby ustawić wewnętrzne marginesy dla danego elementu?

A. width
B. margin
C. hight
D. padding
Właściwość CSS, którą należy zastosować do definiowania marginesów wewnętrznych elementu, to padding. Padding określa przestrzeń wewnętrzną między zawartością elementu a jego granicami. Przy pomocy paddingu możemy dostosować, jak dużo przestrzeni chcemy mieć wokół tekstu, obrazów czy innych elementów wewnątrz danego kontenera. Na przykład, zastosowanie padding: 20px; w CSS sprawi, że wewnętrzny margines będzie wynosił 20 pikseli od wszystkich stron wokół zawartości. Na poziomie praktycznym, padding jest niezwykle użyteczny w projektowaniu responsywnych interfejsów użytkownika, ponieważ pozwala na lepsze dostosowanie elementów do różnych rozmiarów ekranów. Dobrą praktyką jest używanie paddingu w połączeniu z innymi właściwościami, takimi jak margin, aby uzyskać pełną kontrolę nad położeniem i rozkładem elementów na stronie. Warto także pamiętać, że w CSS możemy ustalać padding oddzielnie dla górnej, prawej, dolnej i lewej strony, co daje jeszcze większą elastyczność w projektowaniu.

Pytanie 28

W języku PHP wykorzystano funkcję

is_float()
. Które z poniższych wywołań tej funkcji zwróci rezultat true?
A. is_float(3.34)
B. is_float('3,34')
C. is_float(334)
D. is_float(NULL)
Funkcja is_float() w PHP to coś, co naprawdę warto znać, bo sprawdza, czy dana wartość jest liczbą zmiennoprzecinkową. Na przykład, jak wywołasz is_float(3.34), to dostaniesz true, bo 3.34 to faktycznie float. W programowaniu ważne jest, żeby poprawnie rozróżniać różne typy danych, bo inaczej mogą być problemy przy obliczeniach. W finansach czy modelowaniu danych, dobór typów danych to kluczowa sprawa, bo chcemy, żeby nasze obliczenia były precyzyjne. Warto wiedzieć, że w PHP liczby zmiennoprzecinkowe działają według standardu IEEE 754, co czasem może powodować zaskoczenia przy dużych albo bardzo małych liczbach. Dlatego lepiej używać funkcji is_float() do sprawdzania danych wprowadzanych przez użytkowników, żeby nie wkradały się błędy, które mogą popsuć nasze obliczenia.

Pytanie 29

Atrybut wskazujący na lokalizację pliku graficznego w znaczniku <img> to

A. href
B. link
C. alt
D. src
Atrybut 'src' (source) jest kluczowym elementem znacznika <img>, ponieważ wskazuje lokalizację pliku graficznego, który ma być wyświetlony na stronie internetowej. Użycie tego atrybutu jest niezbędne, aby przeglądarka mogła zlokalizować i załadować odpowiedni obraz. Na przykład, jeśli chcesz wyświetlić grafikę logo na stronie, możesz użyć znacznika <img src='logo.png'>, gdzie 'logo.png' jest ścieżką do pliku graficznego. Ważne jest, aby pamiętać o dokładnym podaniu ścieżki, która może być względna lub absolutna. Zgodnie z najlepszymi praktykami, ważne jest również użycie atrybutu 'alt', który opisuje obraz dla osób z problemami wzrokowymi oraz w przypadku, gdy obraz nie może być załadowany. Przestrzeganie standardów W3C w zakresie HTML zapewnia lepszą dostępność i użyteczność stron internetowych.

Pytanie 30

Wskaż sposób, w jaki należy odwołać się do pliku default.css, jeśli index.html znajduje się bezpośrednio w katalogu Strona?

Ilustracja do pytania
A. <link rel="stylesheet" type="text/css" href="c:/style/default.css" />
B. <link rel="stylesheet" type="text/css" href="c:\style/default.css" />
C. <link rel="stylesheet" type="text/css" href="./style/default.css" />
D. <link rel="stylesheet" type="text/css" href="...\style\default.css" />
Wybrana odpowiedź jest poprawna, ponieważ poprawnie odwołuje się do pliku CSS za pomocą ścieżki względnej. W HTML, aby odwołać się do pliku zlokalizowanego w katalogu nadrzędnym, używa się ścieżki względnej, która zaczyna się od './', co oznacza bieżący katalog. Następnie podaje się nazwę podkatalogu (w tym przypadku 'style') i nazwę pliku (tutaj 'default.css'). W praktyce, gdy budujesz strukturę katalogową dla swojej strony internetowej, dobrą praktyką jest organizowanie plików w sposób logiczny i konsekwentny, aby ułatwić nawigację i odwołanie do plików. Pamiętaj też, że ścieżki względne są preferowane w większości przypadków, ponieważ są uniwersalne i niezależne od konkretnego systemu plików, co ułatwia przenoszenie kodu między różnymi środowiskami.

Pytanie 31

Aby sprawdzić poprawność składni kodu CSS, można skorzystać z:

A. optymalizatora
B. walidatora
C. debuggera
D. konsolidatora
Poprawność składni CSS sprawdza walidator - na przykład walidator CSS organizacji W3C (jigsaw.w3.org/css-validator). Analizuje arkusz pod kątem zgodności ze standardem i wypisuje błędy oraz ostrzeżenia: literówki we właściwościach, nieprawidłowe wartości czy brakujące średniki. Dlatego do kontroli składni CSS służy walidator.

Pytanie 32

W bazie danych samochodów pole kolor z tabeli samochody przyjmuje wartości kolorów jedynie ze słownika lakier. Aby połączyć tabele samochody i lakier relacją należy, zastosować kwerendę

A. ALTER TABLE samochody
   ADD FOREIGN KEY kolor REFERENCES lakier;

B. ALTER TABLE samochody
   ADD FOREIGN KEY (kolor) REFERENCES lakier(lakierId);

C. ALTER TABLE samochody
   ADD FOREIGN KEY barwa REFERENCES samochody.lakier;

D. ALTER TABLE lakier
   ADD FOREIGN KEY (barwa) REFERENCES samochody(kolor);
A. B.
B. D.
C. A.
D. C.
Błędne odpowiedzi wynikają z niezrozumienia jak działa łączenie tabel w SQL lub z błędów w składni. W przypadku relacji między tabelami, klucz obcy w jednej tabeli odpowiada kluczowi głównemu w drugiej tabeli. Tymczasem, niektóre z błędnych odpowiedzi zawierają niewłaściwe odniesienia do kluczy głównych i obcych. Próby utworzenia klucza obcego bez odwołania do odpowiadającego mu klucza głównego, lub odwołanie się do nieistniejących pól w tabeli, skutkują błędami i niepoprawnym działaniem bazy danych. Błędy w składni SQL, takie jak niepoprawne użycie słów kluczowych czy polecenia utworzenia klucza obcego, mogą także prowadzić do nieprawidłowych wyników. Zrozumienie relacji między tabelami i prawidłowe stosowanie składni SQL są kluczowe dla efektywnej pracy z bazami danych.

Pytanie 33

Aby przekształcić tekst „ala ma psa” na „ALA MA PSA”, jaka funkcja PHP powinna być zastosowana?

A. strtoupper('ala ma psa');
B. ucfirst ('ala ma psa');
C. strtolower('ala ma psa');
D. strstr ('ala ma psa');
Funkcja strtoupper w PHP jest używana do konwersji wszystkich liter w danym ciągu znaków na wielkie litery. W kontekście modyfikacji tekstu „ala ma psa” na „ALA MA PSA”, zastosowanie funkcji strtoupper('ala ma psa') jest poprawnym podejściem. Funkcja ta jest częścią standardowej biblioteki PHP i jest szeroko stosowana w projektach, gdzie zachowanie wielkich liter jest kluczowe. Przykład użycia funkcji strtoupper jest prosty: wystarczy przekazać do niej ciąg, który ma zostać przekształcony. Przykładem może być zapis: $text = 'ala ma psa'; $uppercaseText = strtoupper($text); echo $uppercaseText; co wygeneruje wynik ALA MA PSA. Warto zauważyć, że funkcja ta nie zmienia oryginalnego ciągu, lecz zwraca nowy ciąg z przekształconymi literami. Zastosowanie funkcji strtoupper jest szczególnie przydatne w aplikacjach webowych, gdzie formatowanie tekstu może być kluczowe dla zapewnienia spójności danych wyjściowych oraz ich estetyki.

Pytanie 34

Wskaż nieprawdziwe zdanie dotyczące normalizacji dźwięku.

A. Normalizacja polega na obniżeniu poziomu najgłośniejszej próbki w sygnale do określonej wartości, a następnie w odniesieniu do niej proporcjonalnym zwiększeniu głośności pozostałej części sygnału.
B. Podczas normalizacji poziom głośności całego nagrania jest wyrównywany.
C. Funkcja normalizacja znajduje się w menu programu do edycji dźwięku.
D. Gdy najgłośniejszy fragment dźwięku ma wartość pół na skali, to wszystkie dźwięki zostaną wzmocnione dwukrotnie - w ten sposób najgłośniejszy fragment osiągnie maksymalną wartość na skali.
W tej odpowiedzi jest pewne nieporozumienie związane z tym, co to znaczy normalizacja sygnału dźwiękowego. To nie jest po prostu podwojenie głośności najgłośniejszego kawałka, to by było za proste. Chodzi o to, żeby całe nagranie miało odpowiednią głośność bez wprowadzania zniekształceń. Jeśli najgłośniejszy fragment audio jest na poziomie 50%, normalizacja ma za zadanie podnieść poziom całego nagrania tak, żeby ten najgłośniejszy kawałek dotarł do maksymalnej wartości. To nie jest kwestia po prostu pomnożenia przez dwa, a raczej odpowiedniego dostosowania do skali decybelowej. To jest szczególnie ważne, bo w normalizacji musimy unikać clippingu, czyli zniekształceń dźwięku, które mogą się zdarzyć, gdy poziom wyjściowy jest za wysoki. Normalizacja dobrze działa w połączeniu z innymi technikami, takimi jak kompresja i limitacja, żeby uzyskać najlepsze efekty w produkcji audio. Dlatego warto to dobrze rozumieć, bo źle użyta normalizacja może prowadzić do kiepskiej jakości dźwięku oraz ogólnie nieprzyjemnych wrażeń podczas słuchania.

Pytanie 35

Którą właściwością CSS ustawia się kolor tła elementu (np. strony)?

A.
text-background
B.
bgcolor
C.
background-color
D.
color
Kolor tła elementu ustawia w CSS właściwość background-color, np. body { background-color: #f0f0f0; }. Można podać nazwę koloru, zapis szesnastkowy lub funkcję rgb. To nowoczesny, zgodny ze standardem sposób - w przeciwieństwie do dawnego atrybutu HTML bgcolor. Dlatego tło ustawia background-color.

Pytanie 36

Którą funkcję z menu Kolory programu GIMP użyto, w celu uzyskania efektu przedstawionego w filmie?

A. Progowanie.
B. Inwersja.
C. Barwienie.
D. Krzywe.
Wiele osób myli w GIMP-ie różne narzędzia z menu Kolory, bo na pierwszy rzut oka kilka z nich „mocno zmienia” obraz. Jednak efekt pokazany na filmie, gdzie obraz staje się dwuwartościowy (czarno-biały, bez półtonów), jest typowym działaniem funkcji Progowanie. Kluczowe jest tu zrozumienie, czym różnią się od siebie dostępne operacje. Krzywe służą do zaawansowanej korekcji tonalnej i kontrastu. Można nimi mocno przyciemnić lub rozjaśnić wybrane zakresy jasności, robić tzw. efekt kontrastu „S”, korygować prześwietlenia itd. Ale nawet przy bardzo agresywnych ustawieniach krzywych obraz nadal zawiera półtony – pojawiają się stopniowe przejścia między odcieniami, a nie ostre odcięcie na zasadzie czarne/białe. To świetne narzędzie do retuszu zdjęć, ale nie do uzyskania efektu progowania. Inwersja (Kolory → Inwersja) po prostu odwraca wartości kolorów lub jasności: jasne staje się ciemne, czerwony zmienia się na cyjan, zielony na magentę itd. To jak negatyw fotograficzny. Struktura szczegółów pozostaje identyczna, zmienia się tylko ich „biegun”. Nie pojawia się żadne odcięcie progowe, więc obraz wciąż ma pełne spektrum odcieni. W praktyce inwersja przydaje się np. przy przygotowaniu masek lub pracy z materiałami skanowanymi, ale nie generuje typowego, „plakatowego” efektu czerni i bieli jak progowanie. Barwienie z kolei (Kolory → Barwienie) służy do nadania całemu obrazowi jednolitego odcienia, zwykle po wcześniejszym sprowadzeniu go do skali szarości. Można w ten sposób uzyskać np. sepię, niebieski ton nocny albo dowolny kolorystyczny „filtr”. Jasność i kontrast lokalny pozostają bardzo podobne, zmienia się dominująca barwa. To zupełnie inna kategoria operacji niż progowanie, które pracuje na poziomie progów jasności, a nie na poziomie koloru. Typowym błędem jest patrzenie tylko na to, że „obraz bardzo się zmienił” i przypisywanie tego narzędziom takim jak krzywe czy inwersja. W pracy z grafiką warto zawsze zadać sobie pytanie: czy efekt polega na zmianie rozkładu jasności, na odwróceniu kolorów, czy na twardym podziale na dwa poziomy? Jeśli widzisz brak półtonów i ostre granice, praktycznie zawsze chodzi o progowanie, które zostało wskazane jako poprawna funkcja.

Pytanie 37

Funkcja phpinfo() umożliwia:

A. sprawdzanie wartości zmiennych wykorzystanych w skrypcie PHP
B. uzyskanie informacji o środowisku pracy serwera obsługującego PHP
C. analizowanie kodu PHP pod kątem błędów
D. inicjowanie skryptu w języku PHP
Funkcja phpinfo() jest kluczowym narzędziem w ekosystemie PHP, które dostarcza szczegółowych informacji o konfiguracji środowiska, w którym działa PHP. Użycie tej funkcji pozwala deweloperom na uzyskanie danych takich jak wersja PHP, zainstalowane rozszerzenia, ustawienia konfiguracyjne, oraz dane o systemie operacyjnym. Przykładowo, deweloper może wykorzystać phpinfo() do szybkiego sprawdzenia, czy potrzebne rozszerzenie, takie jak GD lub cURL, jest zainstalowane na serwerze. Pozwoli to uniknąć problemów związanych z brakującymi funkcjami w kodzie. Ponadto, funkcja ta jest także pomocna w procesach rozwiązywania problemów, ponieważ umożliwia natychmiastowy wgląd w kluczowe zmienne konfiguracyjne, co jest zgodne z najlepszymi praktykami w zakresie zarządzania środowiskami aplikacji webowych. Warto jednak pamiętać, że phpinfo() powinno być używane ostrożnie i tylko w środowisku deweloperskim, aby nie ujawniać danych konfiguracyjnych w produkcji.

Pytanie 38

Element

<meta charset="utf-8">
służy do definiowania metadanych witryny internetowej związanych z
A. słowami kluczowymi
B. kodowaniem znaków
C. opisem witryny
D. językiem witryny
Element <meta charset="utf-8"> jest kluczowym fragmentem kodu HTML, który definiuje kodowanie znaków używane na stronie internetowej. Ustawienie kodowania na UTF-8 jest obecnie standardem branżowym, który pozwala na prawidłowe wyświetlanie tekstów w różnych językach, a także obsługę różnorodnych znaków specjalnych. Dzięki temu strona będzie renderować się poprawnie niezależnie od używanego języka, co jest szczególnie istotne w kontekście globalizacji i dostępności treści dla szerokiego grona użytkowników. W praktyce, poprawne kodowanie znaków eliminuje problemy z wyświetlaniem polskich znaków diakrytycznych, takich jak ą, ć, ę, ł czy ź. Warto także zauważyć, że błędne ustawienie kodowania może prowadzić do tzw. "krzaków" w treści, co znacząco obniża jakość prezentacji strony oraz jej użyteczność. Dlatego zaleca się zawsze stosować <meta charset="utf-8"> w nagłówku dokumentu HTML, aby zapewnić pełną kompatybilność i poprawność wyświetlania treści w różnych przeglądarkach i systemach operacyjnych.

Pytanie 39

Jakie są właściwe etapy tworzenia bazy danych?

A. Zdefiniowanie celu, utworzenie relacji, stworzenie tabel, normalizacja
B. Zdefiniowanie celu, stworzenie tabel, utworzenie relacji, normalizacja
C. Zdefiniowanie celu, normalizacja, utworzenie relacji, stworzenie tabel
D. Zdefiniowanie celu, normalizacja, stworzenie tabel, utworzenie relacji
W procesie tworzenia bazy danych kluczowym pierwszym krokiem jest określenie celu, który pozwala zrozumieć, jakie dane będą gromadzone oraz jakie operacje będą na nich wykonywane. Następnie przystępuje się do stworzenia tabel, które stanowią fundamentalne elementy bazy danych. Każda tabela powinna odpowiadać określonym kategoriom danych, a ich struktura powinna być dobrze przemyślana, aby umożliwić efektywne przechowywanie, zarządzanie oraz odczytywanie informacji. Po utworzeniu tabel ważne jest, aby zdefiniować relacje między nimi, co umożliwia integrację danych oraz ich logiczne powiązanie. Na końcu procesu następuje normalizacja, która ma na celu eliminację redundancji danych oraz zwiększenie integralności bazy, co przekłada się na jej wydajność. Przykładem może być stworzenie bazy danych dla systemu zarządzania uczelnią, gdzie tabele odpowiadają za studentów, kursy i wykładowców. Właściwe zdefiniowanie relacji pomoże w zrozumieniu, którzy studenci uczą się na jakich kursach, a normalizacja zabezpieczy przed powielaniem danych.

Pytanie 40

W zapytaniu SQL, umieszczonym w ramce, symbol gwiazdki wskazuje, że w wyniku tego zapytania

Ilustracja do pytania
A. zostanie pominięty warunek dotyczący imienia
B. zostanie pokazane pole o nazwie "*" (gwiazdka)
C. zostaną wyświetlone wszystkie kolumny tabeli mieszkańcy
D. zostaną wyświetlone wszystkie wpisy z tabeli mieszkańcy
W zapytaniach SQL użycie znaku gwiazdki (*) po klauzuli SELECT jest częstą praktyką, która wskazuje na potrzebę wyświetlenia wszystkich kolumn z tabeli wynikowej. W kontekście zapytania SELECT * FROM mieszkańcy WHERE imie = 'Anna'; oznacza to, że zostaną zwrócone wszystkie kolumny dla rekordów, które spełniają warunek imie='Anna'. Jest to szybki sposób na uzyskanie pełnych danych dla określonych kryteriów bez konieczności wyszczególniania nazw kolumn, co może być szczególnie przydatne w przypadku tabel o dużej liczbie kolumn. Ważnym aspektem jest tutaj optymalizacja zapytań; choć użycie * jest wygodne, w dużych zbiorach danych lepiej jest selekcjonować tylko te kolumny, które są rzeczywiście potrzebne do analizy, co zmniejsza obciążenie bazy danych i poprawia wydajność. W praktykach branżowych zaleca się również zwracanie uwagi na bezpieczeństwo danych i dostępność użytkowników do informacji, szczególnie w kontekście RODO i innych regulacji dotyczących ochrony danych osobowych.