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: 10 grudnia 2025 10:50
  • Data zakończenia: 10 grudnia 2025 10:59

Egzamin niezdany

Wynik: 19/40 punktów (47,5%)

Wymagane minimum: 20 punktów (50%)

Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

Które z poniższych stwierdzeń na temat klucza głównego jest prawdziwe?

A. W przypadku tabeli z danymi osobowymi może to być pole nazwisko
B. Składa się wyłącznie z jednego pola
C. Może przyjmować wyłącznie wartości liczbowe
D. Jest unikalny dla danej tabeli
Klucz podstawowy to atrybut (lub zbiór atrybutów) w tabeli, który jednoznacznie identyfikuje każdy wiersz w tej tabeli. Jego unikalność w obrębie tabeli jest kluczowa, ponieważ pozwala na zapobieganie duplikatom i zapewnia integralność danych. Na przykład, w tabeli przechowującej informacje o klientach, kolumna z identyfikatorem klienta (np. ID klienta) powinna być kluczem podstawowym, ponieważ każdy klient musi mieć unikalny identyfikator. Standardy baz danych, takie jak model relacyjny, podkreślają znaczenie kluczy podstawowych w zapewnieniu stabilności i efektywności w przechowywaniu danych. Użycie klucza podstawowego również wpływa na wydajność operacji wyszukiwania i łączenia tabel, dlatego w projektowaniu baz danych należy starannie dobierać atrybuty, które będą pełnić tę rolę, aby spełniały wymagania unikalności oraz wydajności.

Pytanie 2

W przedstawionym kodzie PHP w miejscu kropek powinno znajdować się polecenie

Ilustracja do pytania
A. mysqli_num_fields($zapytanie);
B. mysqli_free_result($zapytanie);
C. mysqli_fetch_row($zapytanie);
D. mysqli_query($zapytanie);
Koncept mysqli_free_result wydaje się atrakcyjny gdyż służy do zwalniania pamięci zajmowanej przez zestaw wyników. Jednak jego zastosowanie w tym kontekście jest błędne ponieważ zwalnianie pamięci powinno odbywać się po zakończeniu przetwarzania danych a nie przed pobraniem wierszy. Użycie mysqli_num_fields mogłoby wprowadzić w błąd ponieważ funkcja ta zwraca liczbę kolumn w zestawie wyników a nie jest związana z pobieraniem poszczególnych wierszy danych. W kontekście iteracji po wierszach zapytania jest to nieadekwatne. Funkcja mysqli_query jest używana do wysyłania zapytań do bazy danych i zwraca wynik zapytania ale sama w sobie nie pobiera danych z zestawu wyników co w tym zadaniu jest niezbędne. Częstym błędem jest mylenie funkcji wynikowych z funkcjami wykonującymi zapytania. Kluczowym do zrozumienia jest właściwe wykorzystanie funkcji do iteracyjnego pobierania danych co wymaga rozróżnienia zadań jakie pełni każda z funkcji w kontekście przetwarzania wyników zapytań do bazy danych. Prawidłowe rozróżnianie tych funkcji pozwala na efektywne zarządzanie danymi i pamięcią co jest istotne w kontekście aplikacji webowych oraz zapewnienia ich wydajności i poprawnego działania.

Pytanie 3

W jaki sposób, stosując język PHP można usunąć ciasteczko o nazwie ciastko?

A. unsetcookie(""$ciastko"");
B. setcookie(""ciastko"", """", time()-3600);
C. setcookie(""$ciastko"", """", 0);
D. deletecookie(""ciastko"");
Wiele z błędnych odpowiedzi opiera się na niepoprawnych założeniach dotyczących metod usuwania ciasteczek w PHP. Przykładowo, użycie deletecookie("ciastko") jest nieprawidłowe, ponieważ w standardowej bibliotece PHP nie istnieje funkcja o takiej nazwie. PHP nie dostarcza wbudowanej funkcji do bezpośredniego usuwania ciasteczek; zamiast tego należy użyć setcookie, aby ustawić ciasteczko z przestarzałym czasem ważności. Podobnie, użycie unsetcookie("$ciastko") jest błędne, ponieważ nie ma takiej funkcji w PHP. Użytkowanie funkcji unset dotyczy zmiennych, a nie ciasteczek, co może prowadzić do konfuzji. W praktyce, aby usunąć ciasteczko, musisz wyraźnie określić jego nazwę z użyciem setcookie, a także wartość oraz czas wygaśnięcia. Ostatecznie, niewłaściwe podejścia do usuwania ciasteczek mogą prowadzić do problemów z bezpieczeństwem, na przykład w sytuacjach, gdy aplikacja niepoprawnie zarządza sesjami użytkowników, co naraża dane na nieautoryzowany dostęp. Aby skutecznie zarządzać ciasteczkami, ważne jest zrozumienie ich mechanizmów oraz stosowanie zgodnych z normami metod ich usuwania.

Pytanie 4

To pytanie jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się lub utwórz konto aby zobaczyć pełną treść pytania.

Odpowiedzi dostępne po zalogowaniu.

Wyjaśnienie dostępne po zalogowaniu.


Pytanie 5

Aby wyciszyć dźwięk w filmie odtwarzanym w przeglądarce, do podanej definicji znacznika <video> powinien zostać dodany atrybut <video> <source src="film.mp4" type="video/mp4"> </video>

A. loop
B. autoplay
C. controls
D. muted
Atrybut 'muted' w znaczniku <video> jest kluczowy dla zarządzania dźwiękiem w odtwarzanych filmach. Gdy dodamy atrybut 'muted', zapewniamy, że film będzie odtwarzany bez dźwięku, co jest szczególnie istotne w kontekście doświadczenia użytkownika na stronie internetowej. W praktyce, wiele stron korzysta z automatycznego odtwarzania filmów w tle, co jest popularne w serwisach informacyjnych oraz mediach społecznościowych. Bez dźwięku, użytkownicy nie są rozpraszani, a strona nie wpływa negatywnie na ich doświadczenie przeglądania. Zgodnie z najlepszymi praktykami, należy również pamiętać o dostępności – filmy bez dźwięku mogą być łatwiej przyswajalne dla osób z problemami ze słuchem, a także unikamy sytuacji, w której nagłe dźwięki mogłyby wywołać dyskomfort. Atrybut 'muted' jest więc nie tylko funkcjonalny, ale także zgodny z zasadami projektowania stron internetowych, które stawiają na komfort użytkownika.

Pytanie 6

W programie Audacity, podczas edytowania dźwięku pozyskanego z płyty analogowej, konieczne jest usunięcie pojedynczych trzasków typowych dla płyt winylowych. Jakie narzędzie jest do tego celu przeznaczone?

A. Redukcja szumu (Noise Reduction)
B. Normalizuj (Normalize)
C. Obwiednia (Envelope)
D. Usuwanie stukotu (Click Removal)
Odpowiedź 'Usuwanie stukotu (Click Removal)' jest poprawna, ponieważ narzędzie to jest specjalnie zaprojektowane do eliminowania niepożądanych dźwięków, takich jak trzaski i kliknięcia, które często występują na nagraniach pochodzących z płyt winylowych. Proces ten opiera się na analizie sygnału audio, identyfikując charakterystyczne wzorce związane z trzaskami, a następnie ich usuwaniu bez wpływania na jakość dźwięku pozostałej części nagrania. W praktyce, użytkownicy Audacity mogą z łatwością zaznaczyć fragmenty dźwięku i zastosować to narzędzie, co pozwala na precyzyjne i efektywne usuwanie zakłóceń. Ponadto, dobre praktyki w obróbce audio zalecają przeprowadzanie testów na różnych ustawieniach narzędzia, co pomaga w uzyskaniu optymalnych rezultatów. Warto również wspomnieć, że podczas pracy z analogowymi źródłami dźwięku, usuwanie stukotu powinno być częścią szerszego procesu poprawy jakości dźwięku, który może obejmować także inne techniki, takie jak normalizacja poziomów czy redukcja szumów, co pozwala na uzyskanie czystszego i bardziej profesjonalnego brzmienia nagrania.

Pytanie 7

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

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

Pytanie 8

Funkcji session_start() w PHP należy używać podczas realizacji

A. każdej strony, która wykorzystuje ciasteczka
B. przetwarzania formularzy
C. ładowania danych z zewnętrznych plików
D. wielostronicowej strony internetowej, która wymaga dostępu do danych przy przechodzeniu między stronami
Funkcja session_start() jest kluczowym elementem zarządzania sesjami w PHP, co jest niezbędne w kontekście wielostronicowych witryn internetowych. Jej głównym zadaniem jest inicjalizacja sesji, która pozwala na przechowywanie i udostępnianie danych użytkownika pomiędzy różnymi stronami serwisu. Gdy wywołasz session_start(), PHP sprawdza, czy istnieje już aktywna sesja. Jeśli tak, został załadowany odpowiedni identyfikator sesji, co umożliwia dostęp do danych przechowywanych w superglobalnej tablicy $_SESSION. Przykładami zastosowania mogą być koszyki zakupowe, gdzie użytkownik dodaje produkty na różnych stronach, a dane o tych produktach muszą być zachowane i dostępne na każdej z nich. Dobre praktyki zalecają, aby session_start() było wywoływane na początku skryptu, przed jakimkolwiek wyjściem na ekran, aby uniknąć problemów z nagłówkami HTTP. Ponadto, zarządzanie sesjami powinno być realizowane z uwzględnieniem bezpieczeństwa, np. poprzez regenerację identyfikatorów sesji po zalogowaniu oraz zabezpieczenie przed atakami CSRF.

Pytanie 9

Jakie słowo kluczowe wykorzystuje się do deklaracji zmiennej w języku JavaScript?

A. instanceof
B. variable
C. var
D. new
W JavaScript, żeby zadeklarować zmienną, używa się słowa 'var'. To jeden z najważniejszych elementów tego języka. Używając 'var', tworzysz zmienną, która może mieć zasięg tylko w danej funkcji albo być dostępna globalnie, w zależności od tego, jak ją zadeklarujesz. Jeśli na przykład napiszesz 'var x = 10;', to stworzysz zmienną 'x' i przypiszesz jej wartość 10. Warto jednak zauważyć, że od momentu, gdy wprowadzono ES6, zaleca się używanie 'let' oraz 'const' do deklaracji zmiennych, bo są bardziej przewidywalne, zwłaszcza jeśli chodzi o zasięg zmiennych (block scope). Mimo to, 'var' wciąż można spotkać w wielu starych projektach i dobrze jest znać to słowo, żeby lepiej rozumieć, jak działa JavaScript. Fajnie jest ograniczać 'var' na rzecz 'let' i 'const', bo dzięki temu kod staje się bardziej przejrzysty i łatwiejszy do ogarnienia w większych projektach.

Pytanie 10

Prezentowany blok kodu ilustruje proces

Ilustracja do pytania
A. załadowania lub wyświetlenia informacji
B. użycia zdefiniowanej procedury lub funkcji
C. realizacji zadania w pętli
D. podjęcia decyzji
Pierwsza odpowiedź sugeruje że blok reprezentuje zastosowanie gotowej procedury lub funkcji co jest niepoprawne Romb w schematach blokowych nie jest używany do oznaczania procedur lub funkcji lecz do podejmowania decyzji Stosowanie procedur i funkcji zazwyczaj związane jest z blokami prostokątnymi symbolizującymi operacje a nie z decyzjami które wymagają warunkowego rozgałęzienia Druga odpowiedź wczytania lub wyświetlenia danych również nie jest poprawna Operacje związane z wczytywaniem i wyświetlaniem danych są zazwyczaj przedstawiane za pomocą bloków równoległoboków które obrazują wejście i wyjście danych Wczytywanie danych polega na pozyskaniu informacji z zewnętrznych źródeł lub użytkownika a wyświetlanie polega na prezentacji wyników jednak obie te czynności nie mają charakteru decyzyjnego Odpowiedź dotycząca wykonania zadania w pętli jest także błędna Pętle które umożliwiają powtarzanie określonych czynności są zazwyczaj wyrażane za pomocą konstrukcji prostokątnych z dodatkowymi wskaźnikami powrotu nie zaś za pomocą rombu który odzwierciedla logiczne warunkowe ścieżki przepływu danych Typowym błędem myślowym jest przypisywanie rombowi funkcji powiązanych z iteracjami lub operacjami co wynika z mylnego zrozumienia zasad tworzenia algorytmów w formie graficznej Intuicja podpowiada że decyzja i powtarzanie mogą być podobne jednak w diagramach blokowych różnią się symboliką i zastosowaniem

Pytanie 11

W sklepie z farbami obowiązuje określony sposób obliczania kosztu farby: dla koloru niebieskiego i zielonego przy pojemności 2 litry cena farby wynosi cena bazowa + 20%. Wyrażenie logiczne w języku JavaScript, które weryfikuje tę zasadę, ma formę

A. (kolor == 'niebieski' || kolor == 'zielony') && pojemnosc == 2
B. (kolor = 'niebieski' || kolor = 'zielony') || pojemnosc = 2
C. kolor = 'niebieski' || kolor = 'zielony' && pojemnosc = 2
D. kolor == 'niebieski' && kolor == 'zielony' && pojemnosc == 2
Analizując niepoprawne odpowiedzi, można zauważyć kilka powszechnych błędów, które prowadzą do mylnych wniosków. Przede wszystkim, użycie operatora '=' zamiast '==' jest fundamentalnym błędem w kontekście języka JavaScript. Operator '=' służy do przypisania wartości, podczas gdy '==' jest operatorem porównania, który sprawdza, czy dwie wartości są sobie równe. Zastosowanie '=' w warunkach logicznych prowadzi do nieprawidłowego działania warunków, ponieważ zamiast porównania wykonujemy przypisanie, co zazwyczaj skutkuje zawsze prawdziwym wynikiem. Ponadto, użycie operatora '&&' w przypadku kolorów w odpowiedzi, która stwierdza, że kolor jest jednocześnie 'niebieski' i 'zielony', jest logicznie niemożliwe, ponieważ jedna zmienna nie może przyjmować dwóch różnych wartości jednocześnie. Tego typu niepoprawne podejścia mogą prowadzić do niezamierzonych wyników w kodzie, co jest sprzeczne z podstawowymi zasadami programowania, takimi jak zasada jedności odpowiedzialności. Kluczowe jest również zrozumienie, że warunki powinny być jasno sformułowane, aby kod był zarówno funkcjonalny, jak i łatwy do zrozumienia dla innych programistów. Dobre praktyki programistyczne wskazują na konieczność stosowania dobrze zdefiniowanych i jednoznacznych warunków, co znacznie ułatwia dalszy rozwój i konserwację kodu.

Pytanie 12

Do czego można wykorzystać program FileZilla?

A. do interpretacji kodu PHP
B. do publikowania strony internetowej
C. do testowania prędkości ładowania strony
D. do weryfikacji strony internetowej
FileZilla to dosyć popularny program, który służy do przesyłania plików za pomocą FTP. W dużym skrócie, jest to narzędzie, które umożliwia publikację stron internetowych. Dzięki niemu można łatwo wrzucać różne pliki, takie jak HTML, CSS czy JavaScript, na serwer. Jego obsługa jest naprawdę prosta – można tworzyć foldery, przenosić, kopiować czy usuwać pliki, co jest bardzo ważne, kiedy zarządza się stroną. Na przykład, jeżeli projektujesz stronę na swoim komputerze i chcesz, żeby była dostępna w Internecie, wystarczy, że skonfigurujesz połączenie FTP w FileZilla, wpiszesz dane logowania do serwera i przeciągniesz pliki do odpowiedniego folderu. Używanie FTP do publikacji to standard w branży, bo jest to bezpieczny i skuteczny sposób na zarządzanie swoimi stronami.

Pytanie 13

Przedstawiony fragment kodu PHP ma za zadanie umieścić dane znajdujące się w zmiennych $a, $b, $c w bazie danych, w tabeli dane. Tabela dane zawiera cztery pola, z czego pierwsze to autoinkrementowany klucz główny. Które z poleceń powinno być przypisane do zmiennej $zapytanie?

<?php
...
$zapytanie = "...";
mysqli_query($db, $zapytanie);
...
?>
A. SELECT '$a', '$b', '$c' FROM dane;
B. INSERT INTO dane VALUES ('$a', '$b', '$c');
C. SELECT NULL, '$a', '$b', '$c' FROM dane;
D. INSERT INTO dane VALUES (NULL, '$a', '$b', '$c');
Właściwe polecenie to 'INSERT INTO dane VALUES (NULL, '$a', '$b', '$c');'. Użycie NULL w pierwszym polu pozwala na automatyczne ustawienie wartości klucza głównego, co jest zgodne z zasadą autoinkrementacji w bazach danych. Wartości zmiennych $a, $b i $c są wstawiane do kolejnych pól tabeli, co jest standardową praktyką w przypadku dodawania nowych rekordów do bazy danych. Dobrą praktyką jest również stosowanie przygotowanych zapytań, aby zminimalizować ryzyko ataków typu SQL injection. Można to osiągnąć za pomocą funkcji mysqli_prepare, co zwiększa bezpieczeństwo aplikacji. W kontekście standardów branżowych, PostgreSQL oraz MySQL stosują podobne zasady dotyczące wstawiania danych, co czyni tę wiedzę uniwersalną dla różnych systemów zarządzania bazami danych. Warto również zrozumieć, że wstawianie danych bezpośrednio przy użyciu zmiennych bez walidacji może prowadzić do błędów, dlatego zaleca się ich odpowiednie przetwarzanie przed wykonaniem zapytania.

Pytanie 14

Aby uzyskać dane dotyczące środowiska, w którym działa serwer obsługujący PHP, należy użyć funkcji

A. php()
B. phpinformation()
C. phpgetinfo()
D. phpinfo()
Funkcja phpinfo() jest kluczowym narzędziem dla programistów i administratorów systemów, pozwalającym na uzyskanie szczegółowych informacji o środowisku PHP zainstalowanym na serwerze. Po jej wywołaniu otrzymujemy kompletny zestaw danych, który obejmuje wersję PHP, zainstalowane rozszerzenia, konfiguracje oraz informacje o serwerze, takie jak wersja serwera HTTP. Przykładowe użycie polega na umieszczeniu w skrypcie PHP linii <?php phpinfo(); ?>, co spowoduje wygenerowanie strony z informacjami, które mogą być przydatne w diagnostyce problemów lub podczas optymalizacji aplikacji. Funkcja ta jest zgodna ze standardami PHP i jest powszechnie stosowana w celu monitorowania środowiska pracy. Ważne jest, aby pamiętać, że udostępnianie wyników phpinfo() publicznie może stanowić zagrożenie dla bezpieczeństwa, dlatego zaleca się ograniczenie dostępu do tej informacji tylko do zaufanych użytkowników i środowisk deweloperskich. W kontekście rozwoju aplikacji, phpinfo() jest również pomocne przy identyfikacji dostępnych ustawień konfiguracyjnych oraz ich wartości, co jest nieocenione podczas procesu rozwoju i testowania.

Pytanie 15

Jakiego znacznika w języku HTML nie można użyć do wstawienia grafiki dynamicznej na stronę?

A. style="margin-bottom: 0cm;"><img>
B. <object>
C. <strike>
D. style="margin-bottom: 0cm;"><embed>
Wybór odpowiedzi 1, 3 lub 4 może wydawać się zrozumiały, jednak każdy z tych znaczników ma swoje specyficzne zastosowanie i może być użyty do integrowania grafik dynamicznych. Element <img> jest jednym z najbardziej powszechnie używanych znaczników do wyświetlania obrazów, zarówno statycznych, jak i dynamicznych, takich jak animacje w formacie GIF. Odpowiedź 3, <embed>, umożliwia osadzenie multimediów, takich jak wideo czy animacje Flash, a odpowiedź 4, <object>, jest elastycznym elementem, który może wyświetlać różne typy mediów, w tym grafiki i aplikacje interaktywne. Wybierając te odpowiedzi, można dojść do błędnego wniosku, że są one nieodpowiednie, gdyż wszystkie one wspierają umieszczanie mediów na stronie. Typowym błędem myślowym jest mylenie stylizacji tekstu z funkcjonalnością mediów, co prowadzi do niewłaściwego korzystania z semantyki HTML. Zrozumienie różnic między tymi znacznikami i ich zastosowaniem jest kluczowe dla efektywnego tworzenia stron internetowych oraz ich dostępności dla użytkowników.

Pytanie 16

Kolumna, która pełni funkcję klucza głównego w tabeli, powinna

A. posiadać ciągłą numerację
B. być innego rodzaju niż inne kolumny
C. zawierać unikalne wartości
D. zawierać wartości liczbowe
Klucz główny w tabeli bazy danych to naprawdę ważny element. To taki unikalny identyfikator, który pozwala na jednoznaczne rozróżnianie rekordów. Dzięki temu unikamy dublowania danych, co jest istotne, żeby wszystko było jasne i klarowne, bo jak byśmy mieli dwa takie same rekordy, to mogłoby być sporo zamieszania. Na przykład w tabeli 'Klienci' klucz główny to np. numery PESEL czy jakieś unikalne identyfikatory klientów. W praktyce stosuje się też różne standardy, jak SQL, które pomagają ustawić te klucze jako ograniczenia. To sprawia, że nasze dane są bezpieczniejsze i bardziej poprawne. No i tak z doświadczenia, najlepiej jest, jak klucz główny jest prosty, może jako liczba całkowita, bo wtedy wszystko działa szybciej. Podsumowując, unikalność klucza głównego to podstawa, żeby mieć pewność, że nasze dane są spójne i wiarygodne. To kluczowe w każdym systemie bazodanowym.

Pytanie 17

Aby strona WWW mogła być przesyłana do przeglądarki w formie zaszyfrowanej, należy zastosować protokół

A. HTTPS
B. SFTP
C. SSH
D. HTTP
HTTPS (Hypertext Transfer Protocol Secure) to protokół komunikacyjny, który umożliwia bezpieczne przesyłanie danych pomiędzy przeglądarką internetową a serwerem. Jego podstawowym zadaniem jest zapewnienie poufności i integralności informacji, co osiąga dzięki zastosowaniu szyfrowania. HTTPS korzysta z protokołu SSL/TLS do szyfrowania połączenia, co oznacza, że dane przesyłane pomiędzy użytkownikiem a serwerem są chronione przed podsłuchiwaniem i modyfikacją. Na przykład, w przypadku logowania się do bankowości internetowej, użycie HTTPS zapewnia, że nasze dane logowania są bezpieczne przed potencjalnymi atakami. Zastosowanie HTTPS stało się standardem w branży webowej, zwłaszcza po wprowadzeniu przez Google polityki priorytetowego traktowania stron zabezpieczonych tym protokołem w wynikach wyszukiwania. To nie tylko wzmacnia bezpieczeństwo, ale także zwiększa zaufanie użytkowników do witryn. Standardy dotyczące bezpieczeństwa w sieci zalecają użycie HTTPS jako domyślnego protokołu dla wszystkich stron internetowych, co jest zgodne z najlepszymi praktykami w zakresie ochrony danych.

Pytanie 18

Jakie wyniki zostaną wyświetlone po wykonaniu podanej w ramce kwerendy SQL SELECT na tabeli pracownicy, która zawiera rekordy?

idimienazwiskopensja
1AnnaKowalska3400
2MonikaNowak1300
3EwelinaNowakowska2600
4AnnaPrzybylska4600
5MariaKowal2200
6EwaNowacka5400
SELECT SUM(pensja) FROM pracownicy WHERE pensja > 4000;
A. Kwota 10000, co stanowi sumę pensji pracowników o id=4 i id=6
B. Dwie kwoty: 4600 oraz 5400, jako wynagrodzenia pracowników przekraczające 4000
C. Kwota 19500, czyli suma wszystkich pensji zatrudnionych
D. Kwota 5400, co oznacza najwyższą pensję wśród pracowników
W zapytaniu SQL użyto funkcji agregującej SUM, która służy do sumowania wartości w określonej kolumnie. Klauzula WHERE ogranicza zbiór rekordów do tych, które spełniają dany warunek. W tym przypadku, pensja musi być większa niż 4000. Analizując tabelę, znajdujemy dwie osoby z pensjami spełniającymi ten warunek: pracownik o id=4 z pensją 4600 oraz pracownik o id=6 z pensją 5400. SUM(4600 + 5400) daje 10000. Prawidłowe zrozumienie wykorzystania funkcji agregujących w SQL jest kluczowe w analizie danych i raportowaniu. Jest to standardowa praktyka w branży IT, gdzie analiza danych jest podstawą przy podejmowaniu decyzji biznesowych. Funkcje agregujące, takie jak SUM, AVG, MAX, są fundamentalnymi narzędziami analitycznymi w bazach danych. Przy pracy nad większymi zbiorami danych, takie zapytania pomagają szybko uzyskać podsumowania, co jest nieocenione w analizie finansowej czy tworzeniu raportów zarządczych.

Pytanie 19

Wykonanie poniższej kwerendy SQL doprowadzi do usunięcia

A. tabel, w których pole status ma wartość 1, z bazy danych mieszkania
B. rekordów, dla których pole status ma wartość 1, z tabeli mieszkania
C. tabeli mieszkania z systemu baz danych
D. pola o nazwie status w tabeli mieszkania
Patrząc na niepoprawne odpowiedzi, zauważam kilka typowych nieporozumień związanych z tym, jak działają kwerendy SQL. Jedna z odpowiedzi sugeruje, że można usunąć tabelę mieszkania z bazy danych, co jest błędne, bo do tego potrzeba polecenia DROP TABLE, a nie DELETE. To jest zasadnicza różnica! DROP TABLE kasuje całą tabelę, a DELETE tylko pojedyncze rekordy. Kolejny błąd to stwierdzenie, że usuwane jest pole o nazwie status. W rzeczywistości DELETE nie zmienia struktury tabeli ani kolumn; po prostu znika rekord na podstawie wskazanych kryteriów. I jeszcze, że całe tabele będą usunięte, gdzie status wynosi 1 - to też mija się z prawdą. W SQL nie da się usuwać tabeli na podstawie wartości w kolumnach; to działa tylko na danych w tabeli. Te błędy często wynikają z niepełnego zrozumienia, jak różne są operacje na danych i operacje na strukturze bazy. Dlatego ważne jest, aby nauczyć się, jak działają zapytania SQL, bo to pomoże uniknąć takich nieporozumień i skuteczniej zarządzać danymi.

Pytanie 20

Które wyrażenie należy wstawić w miejsce ??? w pętli zapisanej w języku C++, aby zostały wyświetlone jedynie elementy tablicy tab

int tab[6];
for (int i = 0; ???; i++)
cout << tab[i];
A. i < 6
B. i > 6
C. i <= 6
D. i >= 6
Odpowiedź 'i >= 6' jest błędna, bo prowadzi do tego, że pętla opuści wszystkie elementy tablicy. Gdy i osiągnie 6 lub więcej, pętla staje, więc nic się nie wyświetli, bo przecież indeksy zaczynają się od 0, a kończą na 5. To jest typowy błąd, który wynika z nie do końca zrozumienia, jak działają tablice w C++. Z kolei 'i <= 6' też nie jest ok, bo wtedy pętla zakończy się po wyświetleniu elementu z indeksem 6, co prowadzi do niezdefiniowanego zachowania – a to nie jest fajne, bo nie ma takiego elementu w tablicy z sześcioma elementami. Odpowiedź 'i > 6' też jest źle, bo nie wykona żadnej iteracji, znowu pomijając całą tablicę. Ważne jest, żeby pamiętać, że indeksy tablic zaczynają się od 0, a ostatni indeks przy rozmiarze n wynosi n-1. Stosowanie złych warunków w pętlach może prowadzić do sporych problemów z pamięcią, więc trzeba uważać i pisać warunki, które dobrze pokazują rzeczywisty rozmiar tablicy.

Pytanie 21

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

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

Pytanie 22

W programowaniu tylko jedna zmienna z wbudowanego typu może przyjmować zaledwie dwie wartości. Jakie to jest?

A. znakowy
B. logiczy
C. tablicowy
D. łańcuchowy
Typ logiczny, znany także jako boolean, jest jednym z podstawowych typów danych w większości języków programowania, które przyjmuje tylko dwie wartości: prawda (true) i fałsz (false). Ten typ danych jest kluczowy w logice programowania, ponieważ umożliwia podejmowanie decyzji i sterowanie przepływem programu na podstawie warunków. Na przykład, w języku Python można zdefiniować zmienną logiczną jako: 'is_active = True', co oznacza, że zmienna 'is_active' ma wartość prawda. Użycie typów logicznych jest fundamentalne dla struktur warunkowych, takich jak instrukcje if, które wykonują kod tylko wtedy, gdy warunek jest spełniony. Wartości logiczne są także wykorzystywane w operacjach logicznych, takich jak AND, OR oraz NOT, co pozwala na tworzenie bardziej złożonych warunków. W kontekście standardów, typ logiczny jest częścią specyfikacji języków programowania, takich jak C, Java czy JavaScript, co czyni go uniwersalnym narzędziem w programowaniu.

Pytanie 23

Jakie kodowanie w języku HTML pozwala na sformatowanie paragrafu dla tekstu

 Tekst może być zaznaczony albo istotny dla autora

należy użyć polecenia?
A. <p>Tekst może być <mark>zaznaczony albo <em>istotny</em> dla autora</mark></p>
B. <p>Tekst może być <mark>zaznaczony albo <i>istotny</i> dla autora</mark></p>
C. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny</em> dla autora</p>
D. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny dla autora</p>
Nieprawidłowe odpowiedzi zawierają różne błędy w zastosowaniu znaczników HTML, które wynikają z nieporozumienia dotyczącego ich semantyki i kontekstu użytkowania. W przypadku niepoprawnych odpowiedzi można zauważyć pomieszanie znaczników, co prowadzi do nieczytelnych lub mylących wyników. Użycie <i> zamiast <em> w niektórych odpowiedziach ignoruje semantyczne różnice, które są kluczowe w HTML5. Chociaż <i> jest zdefiniowane jako kursywa, nie przekazuje żadnych dodatkowych informacji o znaczeniu, podczas gdy <em> sygnalizuje, że dany tekst jest istotny. Warto również podkreślić, że błędne zamknięcie znaczników, jak w przypadku braku zamknięcia <mark> w niektórych odpowiedziach, prowadzi do nieprawidłowego renderowania strony i negatywnie wpływa na jej strukturę. Takie błędy mogą skutkować naruszeniem zasad walidacji HTML, co jest istotne dla osiągnięcia standardów branżowych. Właściwe i zgodne z normami używanie znaczników nie tylko poprawia estetykę strony, ale również jej funkcjonalność i dostępność. Ignorowanie tych zasad może prowadzić do problemów z indeksowaniem przez wyszukiwarki i ograniczyć dostępność treści dla osób korzystających z technologii asystujących. Dlatego tak ważne jest, aby stosować odpowiednie znaczniki zgodnie z ich przeznaczeniem, aby zapewnić optymalne doświadczenia użytkowników.

Pytanie 24

W ramce przedstawiono właściwości pliku graficznego:

Wymiary:4272 x 2848px
Rozdzielczość:72 dpi
Format:JPG
W celu optymalizacji czasu ładowania rysunku na stronę WWW należy:
A. zmienić proporcje szerokości do wysokości.
B. zmniejszyć wymiary rysunku.
C. zwiększyć rozdzielczość.
D. zmienić format grafiki na CDR.
Wybór niepoprawnej odpowiedzi wskazuje na nieporozumienie dotyczące optymalizacji czasu ładowania obrazów na stronie WWW. Zmiana formatu grafiki na CDR, zwiększenie rozdzielczości oraz zmiana proporcji szerokości do wysokości nie prowadzą do optymalizacji czasu ładowania. Format CDR jest specyficznym formatem firmy Corel i nie jest standardowo używany do obrazów internetowych. Zwiększenie rozdzielczości zwiększyłoby rozmiar pliku i tym samym spowolniłoby ładowanie strony, co jest przeciwne do zamierzonego celu. Zmiana proporcji obrazu może zmienić jego wygląd, ale nie wpłynie znacząco na rozmiar pliku. Optymalizacja czasu ładowania obrazów na stronę WWW jest najczęściej osiągana przez zmniejszenie ich wymiarów, co skutkuje zmniejszeniem rozmiaru pliku.

Pytanie 25

Zestaw narzędzi oraz funkcji umożliwiający tworzenie aplikacji, który dodatkowo narzuca ramy wizualne aplikacji, jej strukturę oraz czasami wzór, według którego ma być stworzona aplikacja, to

A. biblioteka
B. middleware
C. komponent
D. framework
Biblioteka, komponent oraz middleware to pojęcia, które różnią się od frameworków zarówno pod względem funkcji, jak i sposobu wykorzystania w procesie tworzenia oprogramowania. Biblioteki to zestawy zdefiniowanych funkcji i procedur, które programista może wykorzystać w swoim projekcie, ale nie narzucają one struktury ani architektury aplikacji. Użytkownik biblioteki ma pełną kontrolę nad tym, jak i kiedy dany kod zostanie wykorzystany, co czyni ją bardziej elastyczną, ale także bardziej ryzykowną, gdyż łatwo można wprowadzić nieporządek w kodzie. Komponenty, z kolei, to niezależne moduły, które można wykorzystać w różnych miejscach aplikacji. Zazwyczaj są częścią większej architektury, ale same w sobie nie definiują szkieletu aplikacji. Middleware natomiast to oprogramowanie, które działa jako pośrednik w komunikacji między różnymi systemami lub aplikacjami. Jego główną funkcją jest zarządzanie danymi przesyłanymi pomiędzy aplikacjami, a nie ustalanie struktury samej aplikacji. W związku z tym, wybór frameworku jako odpowiedzi na postawione pytanie jest poprawny, ponieważ jedynie frameworki narzucają szkielet, strukturę i wzorce, które ułatwiają proces programowania.

Pytanie 26

Funkcją w PHP, która służy do tworzenia ciasteczek, jest

A. addcokie()
B. setcookie()
C. createcookie()
D. echocokie()
Funkcja setcookie() w języku PHP jest kluczowym narzędziem do zarządzania ciasteczkami (cookies) na poziomie serwera. Umożliwia ona tworzenie i konfigurowanie ciasteczek, które następnie są przesyłane do przeglądarki użytkownika. Ciasteczka są używane do przechowywania informacji o sesji, preferencjach użytkownika oraz danych śledzących. Funkcja setcookie() przyjmuje kilka argumentów, w tym nazwę ciasteczka, jego wartość, czas wygaśnięcia (w postaci znacznika czasowego), ścieżkę, domenę oraz flagi bezpieczeństwa. Przykładowe użycie funkcji może wyglądać następująco: setcookie('user', 'John Doe', time() + 86400, '/'); co tworzy ciasteczko o nazwie 'user', z wartością 'John Doe', które wygasa po jednym dniu. Ważne jest, aby zwrócić uwagę, że funkcja ta musi być wywoływana przed jakimkolwiek wysyłaniem nagłówków HTTP, co oznacza, że należy ją umieścić na początku skryptu PHP. Również, aby znacząco poprawić bezpieczeństwo, warto korzystać z flagi HttpOnly, aby zminimalizować ryzyko ataków XSS. Zastosowanie setcookie() w odpowiedni sposób przyczynia się do poprawy doświadczeń użytkowników oraz zwiększa funkcjonalność aplikacji internetowych.

Pytanie 27

Narzędzie zaprezentowane na ilustracji służy do

Ilustracja do pytania
A. sprawdzania zgodności witryny ze standardem HTML5
B. walidacji stylów CSS
C. debugowania strony internetowej
D. walidacji kodu HTML i XHTML
Walidacja kodu HTML i XHTML nie jest głównym celem narzędzia przedstawionego na ilustracji. Mimo że omawiana usługa W3C może wspierać analizę dokumentów HTML zawierających style CSS, jej podstawową funkcją jest analiza i walidacja samego CSS. Z kolei debugowanie strony internetowej to proces identyfikacji i usuwania błędów w kodzie, co wymaga użycia narzędzi takich jak przeglądarkowe narzędzia deweloperskie, np. Google Chrome DevTools, które oferują inspekcję DOM, monitorowanie działań sieciowych oraz debugowanie JavaScript. Narzędzie to nie sprawdza również zgodności witryny ze standardem HTML5, ponieważ koncentruje się wyłącznie na arkuszach stylów CSS. Walidacja pod kątem zgodności z HTML5 wymaga użycia innego narzędzia, takiego jak W3C Markup Validation Service, które analizuje składnię i strukturę kodu HTML. Wybór nieodpowiedniego narzędzia do walidacji może prowadzić do błędnych wniosków na temat jakości i zgodności kodu, co podkreśla znaczenie stosowania właściwych narzędzi do odpowiednich zadań.

Pytanie 28

Pokazane pole input pozwala na  

<input type = "checkbox" name = "text1" value = "text2">

A. wybranie opcji
B. wprowadzenie hasła
C. wprowadzenie dowolnego tekstu
D. selekcja opcji z listy o wartościach text1 i text2
Odpowiedzi takie jak "wpisanie dowolnego tekstu", "wpisanie hasła" czy "wybranie opcji z listy o wartości text1 i text2" są mylne, bo nie oddają rzeczywistego działania pola typu checkbox. Jak chodzi o checkboxa, to nie wprowadza się tekstu ani haseł. Checkboxy są do wyboru opcji, a nie do wpisywania danych. Wydaje mi się, że pisanie dowolnego tekstu sugeruje, że chodzi o pole tekstowe, a to jest zupełnie inny typ elementu. Z kolei hasło powinno być wprowadzone w polu typu password, które maskuje to, co wpisujemy dla bezpieczeństwa. A wybieranie opcji z listy kojarzy się z rozwijaną listą (select), a nie checkboxem, co też jest niepoprawne. Często mylimy różne typy elementów formularza i nie do końca rozumiemy ich funkcje. Dlatego warto rzucić okiem na dokumentację i przykłady różnych typów pól formularzy, żeby uniknąć podobnych nieporozumień w przyszłości.

Pytanie 29

Do zachowań moralnych w środowisku pracy można zaliczyć

A. przekazywanie członkom rodziny służbowych materiałów eksploatacyjnych
B. udostępnianie znajomym informacji osobowych pracowników
C. używanie sprzętu biurowego w celach osobistych
D. przestrzeganie poufności zawodowej
Wykorzystanie sprzętu biurowego do celów prywatnych jest działaniem, które narusza zasady etyki w miejscu pracy. Wykorzystanie narzędzi i zasobów firmy do prywatnych celów może prowadzić do nadużyć, obniżenia wydajności oraz uszczuplenia zasobów organizacji. Wiele firm wprowadza polityki użytkowania sprzętu i zasobów, które jasno określają zasady korzystania z mienia firmowego. Stosowanie się do tych zasad pomaga utrzymać profesjonalizm w pracy oraz zapobiega nieporozumieniom. Ponadto, użycie sprzętu do celów osobistych może również stwarzać sytuacje, w których dane firmowe mogą być przypadkowo lub celowo ujawnione osobom trzecim, co stanowi zagrożenie dla poufności informacji. W sytuacjach, gdy pracownicy korzystają z firmowego sprzętu do celów prywatnych, mogą to również prowadzić do konfliktów interesów oraz obniżenia morale w zespole. Każdy pracownik powinien być świadomy, że zasoby firmy są przeznaczone do wykonywania obowiązków zawodowych, a niewłaściwe ich użycie może skutkować konsekwencjami dyscyplinarnymi. Przykładowe dobre praktyki obejmują wprowadzenie polityki dotyczącej użycia sprzętu oraz organizowanie szkoleń dla pracowników, by zrozumieli konsekwencje niewłaściwego użytkowania. W związku z tym, przestrzeganie zasad dotyczących użytkowania sprzętu jest fundamentalnym elementem zachowań etycznych w miejscu pracy.

Pytanie 30

W języku JavaScript zapisano funkcję. Co ona ma za zadanie.

function fun1(f) {
    if (f < 0) f = f * (-1);
    return f
}
A. wypisać wartość bezwzględną z f
B. wypisać wartość odwrotną do f
C. zwrócić wartość odwrotną do f
D. zwrócić wartość bezwzględną z f
Niepoprawna odpowiedź wskazuje, że funkcja ma za zadanie zwrócić wartość odwrotną do f, lub wypisać wartość bezwzględną z f, lub wypisać wartość odwrotną do f. Te wszystkie odpowiedzi są błędne. Wartość odwrotna do f to 1/f, a nie wartość bezwzględna z f. Wypisanie wartości to inny rodzaj operacji niż jej zwrócenie. Funkcje wypisują wartość, kiedy używamy instrukcji console.log() w JavaScript. Zwrócenie wartości oznacza, że funkcja po zakończeniu swojego działania przekazuje tę wartość do miejsca, skąd została wywołana. Zwracanie wartości jest podstawą działania większości funkcji, które następnie używane są do budowy bardziej skomplikowanych algorytmów. Dlatego też ważne jest, aby dobrze rozumieć, jakie wartości są zwracane przez różne typy funkcji.

Pytanie 31

Jakie polecenie powinno być zastosowane, aby tekst TEKST był widoczny w kolorze czarnym w oknie przeglądarki internetowej?

A. <font color="#000000">TEKST</font>
B. <font color="czarny">TEKST</font>
C. <body color="black">TEKST</font>
D. <body bgcolor="black">TEKST</body>
Odpowiedzi zawierające <body color="black">TEKST</font> oraz <body bgcolor="black">TEKST</body> są błędne z kilku powodów. Przede wszystkim, atrybut color nie jest obsługiwany w tagu <body>, co oznacza, że nie wpłynie on na kolor tekstu w jego wnętrzu. Zamiast tego, właściwym podejściem byłoby stosowanie CSS do definiowania kolorów tła i tekstu. Dodatkowo, używanie <body bgcolor="black"> nie jest zalecane w nowoczesnym HTML5, gdyż powinno się stosować CSS do nadawania stylów. Używanie atrybutów w tagach HTML w sposób, który nie jest zgodny z aktualnymi standardami, może prowadzić do problemów z dostępnością i kompatybilnością między różnymi przeglądarkami. Z kolei zastosowanie <font color="czarny">TEKST</font> jest również niepoprawne, ponieważ kolor czarny powinien być określony w formacie heksadecymalnym lub RGB, a nie w wersji z nazwą koloru w języku polskim. Takie podejście ogranicza jego stosowalność w przeglądarkach, które mogą nie rozpoznać polskich nazw kolorów. Z tych powodów kluczowe jest stosowanie właściwych standardów i rekomendacji technicznych dla uzyskania spójnych i poprawnych wyników wizualnych w aplikacjach internetowych.

Pytanie 32

Jaką wartość wyświetli się po uruchomieniu poniższego kodu JavaScript? ```javascript document.write(Math.round(4.51) + Math.pow(2, 3)); ```

A. 14
B. 13
C. 11
D. 12
Zobaczmy, jak doszliśmy do poprawnej odpowiedzi 13. W kodzie JavaScript mamy fragment: <script type='text/javascript'> document.write(Math.round(4.51) + Math.pow(2, 3)); </script>. Co tu się dzieje? Dwie główne operacje to zaokrąglanie i potęgowanie. Funkcja Math.round(4.51) zaokrągla do najbliższej liczby i zwraca 5. Potem mamy Math.pow(2, 3), które daje wynik 8, bo 2 do potęgi 3 to 2 * 2 * 2. Jak to zsumujemy, to mamy 5 + 8, co daje 13. Warto wiedzieć, że Math.round i Math.pow są częścią obiektu Math w JavaScript, który ma różne przydatne funkcje. Na przykład, Math.sqrt() oblicza pierwiastek kwadratowy, a Math.random() daje losowe liczby. To są naprawdę przydatne rzeczy w aplikacjach webowych, gdzie często potrzebujemy obliczeń z danymi liczbowymi. Standard ECMA-262 opisuje, jak te funkcje mają działać, więc możemy być pewni, że będą działać tak samo w różnych środowiskach JavaScript.

Pytanie 33

W SQL, aby dokonać zmiany w strukturze tabeli, na przykład dodać lub usunąć kolumnę, powinno się użyć polecenia

A. UPDATE
B. TRUNCATE
C. ALTER TABLE
D. DROP TABLE
Wybór poleceń takich jak 'UPDATE', 'TRUNCATE' czy 'DROP TABLE' wskazuje na nieporozumienia dotyczące ich zastosowania w kontekście zmiany struktury tabeli. 'UPDATE' jest używane do modyfikacji danych już istniejących w tabeli, a nie do zmiany jej struktury. Umożliwia aktualizację wartości w kolumnach, jednak nie wpływa na same kolumny czy ich definicje. 'TRUNCATE' służy do szybkiego usuwania wszystkich rekordów z tabeli, ale nie można go używać do zmiany struktury tabeli ani do usunięcia kolumn. Tego typu operacja nie tylko nie jest możliwa, ale także wymaga innego podejścia niż modyfikacja struktury. Z kolei 'DROP TABLE' całkowicie usuwa tabelę i wszystkie jej dane, co jest drastycznym krokiem, gdyż skutkuje utratą wszystkich informacji w niej zawartych. Wybór tych poleceń wskazuje na typowe błędy myślowe związane z zamianą operacji na danych z operacjami na strukturze bazy danych. W praktyce, modyfikacje struktury tabel powinny być zawsze przemyślane i zaplanowane, aby zachować integralność danych oraz zgodność z wymaganiami aplikacyjnymi.

Pytanie 34

Przedstawiony błąd, który pojawił się podczas interpretacji kodu PHP, może być spowodowany

Notice: Trying to access array offset on value of type null in C:\xampp\htdocs\1\biuro.php on line 38
A. brakiem bazy danych o nazwie podanej w funkcji mysqli_connect
B. odwołaniem do niezadeklarowanej zmiennej
C. niepowodzeniem w wykonaniu kwerendy na bazie danych
D. próbą odwołania do nieistniejącego elementu tablicy
Próba odwołania się do nieistniejącego elementu tablicy w języku PHP jest częstym źródłem błędów. Komunikat błędu wskazuje, że program próbował uzyskać dostęp do wartości w tablicy, która była typu null, czyli nie istniała. Dzieje się tak zazwyczaj, gdy indeks lub klucz, do którego próbujemy się odwołać, nie został wcześniej zainicjalizowany lub zawiera pustą wartość. Aby uniknąć takich błędów, dobrą praktyką jest zawsze sprawdzanie, czy dany indeks istnieje w tablicy przed próbą jego użycia. Można to zrobić za pomocą funkcji isset() lub array_key_exists(). Przykład poprawnego podejścia: jeżeli chcemy uzyskać dostęp do elementu tablicy $tablica['klucz'], najpierw możemy sprawdzić if(isset($tablica['klucz'])). Taka weryfikacja pozwala na unikanie błędów wykonawczych i zapewnia większą stabilność i niezawodność kodu. W kontekście większych aplikacji, gdzie dane są często przetwarzane dynamicznie, takie podejście znacząco zwiększa odporność na błędy, co jest zgodne z dobrymi praktykami programistycznymi.

Pytanie 35

Jaką cechę posiada format PNG?

A. bezstratna kompresja
B. brak wsparcia dla kanału alfa
C. zapis grafiki wektorowej
D. wsparcie dla animacji
Format PNG (Portable Network Graphics) jest popularnym formatem graficznym, który charakteryzuje się bezstratną kompresją. Oznacza to, że obraz zapisywany w tym formacie nie traci żadnych informacji ani jakości w procesie kompresji, co jest kluczowe w zastosowaniach wymagających wysokiej precyzji, takich jak grafika komputerowa, projektowanie stron internetowych oraz obróbka zdjęć. Bezstratna kompresja w formacie PNG opiera się na algorytmie DEFLATE, co sprawia, że pliki PNG zachowują maksymalną jakość wizualną. Przykładem praktycznego zastosowania PNG jest używanie go do przechowywania ikon, logo oraz innych grafik, które wymagają przezroczystości oraz wysokiej jakości. Dodatkowo format ten obsługuje kanały alfa, co pozwala na uzyskanie efektów przezroczystości w obrazach, czyniąc go niezwykle wszechstronnym narzędziem w projektowaniu graficznym. W branży internetowej stosowanie formatu PNG zyskuje na popularności z uwagi na jego wszechstronność i jakość, co jest zgodne z najlepszymi praktykami w tworzeniu zasobów wizualnych.

Pytanie 36

Typ zmiennych int odnosi się do wartości liczbowych

A. w systemie zmiennoprzecinkowym
B. całkowitych
C. w systemie stałoprzecinkowym
D. naturalnych
Wybór odpowiedzi, która odnosi się do pojęcia notacji stałoprzecinkowej lub zmiennoprzecinkowej, zdradza pewne nieporozumienia dotyczące podstawowych typów danych w programowaniu. Notacja stałoprzecinkowa odnosi się do sposobu reprezentacji liczb, który pozwala na przechowywanie wartości liczbowych z określoną liczbą miejsc po przecinku, co jest stosowane głównie w kontekście obliczeń finansowych, gdzie precyzja jest kluczowa. Z drugiej strony, notacja zmiennoprzecinkowa (ang. floating-point) używana jest do reprezentacji liczb, które mogą mieć część dziesiętną, co jest istotne w aplikacjach wymagających dużej precyzji, na przykład w graficznych czy naukowych obliczeniach. Wybierając odpowiedzi wskazujące na liczby naturalne, można pomylić się myśląc, że zmienne typu int mogą przechowywać tylko liczby nieujemne, co jest niezgodne z istotą tego typu danych. Liczby całkowite obejmują wszystkie liczby naturalne oraz liczby ujemne. Zrozumienie tych różnic jest kluczowe dla prawidłowego korzystania z typów zmiennych w programowaniu, a także dla efektywnego rozwiązywania problemów obliczeniowych, co uwypukla znaczenie tego zagadnienia w praktyce programistycznej. Również warto zauważyć, że dobór odpowiedniego typu danych jest jednym z fundamentów optymalizacji kodu i zarządzania pamięcią w programach.

Pytanie 37

Kolor zapisany w systemie RGB, o wartościach rgb(255,128,16), jaki będzie miał odpowiednik w kodzie szesnastkowym?

A. #ff0f10
B. #ff8010
C. #008010
D. #ff8011
Kod RGB (Red, Green, Blue) to model barw wykorzystywany w grafice komputerowej oraz w technologii wyświetlania. Wartości RGB są określane na podstawie trzech składowych: czerwonej, zielonej i niebieskiej. Każda z tych składowych może przyjmować wartości w zakresie od 0 do 255. W przypadku koloru zapisanym jako rgb(255,128,16), wartość 255 oznacza pełne nasycenie koloru czerwonego, 128 to średnie nasycenie koloru zielonego, a 16 to stosunkowo niskie nasycenie koloru niebieskiego. Aby przekonwertować wartości RGB na format szesnastkowy, należy przekształcić każdą z trzech składowych na system szesnastkowy, co w przypadku podanego koloru daje nam: 255 w systemie dziesiętnym to FF w szesnastkowym, 128 to 80, a 16 to 10. Łącząc te wartości, otrzymujemy #ff8010, co dokładnie odpowiada wartości RGB podanej w pytaniu. Taki zapis jest powszechnie stosowany w CSS i innych formatach związanych z web designem, a jego znajomość jest kluczowa dla każdego projektanta lub developera webowego.

Pytanie 38

Lokalny System Zarządzania Bazą Danych (SZBD) oferuje bazę danych

A. jako usługę serwerową w sieci.
B. w chmurze obliczeniowej.
C. wyłącznie na jednym, wyznaczonym komputerze.
D. w formie serwera w sieci.
Odpowiedzi sugerujące, że lokalny system zarządzania bazą danych może być udostępniany jako serwer w sieci, w chmurze komputerowej lub jako usługa sieciowa serwera, mogą prowadzić do pewnych nieporozumień dotyczących architektury baz danych. W kontekście lokalnych systemów, 'serwer w sieci' sugeruje, że baza danych jest dostępna dla wielu użytkowników przez internet lub sieć lokalną, co jest charakterystyczne dla systemów zdalnych. Z kolei chmura komputerowa odnosi się do zdalnych usług i zasobów, które są przechowywane i zarządzane przez dostawców usług chmurowych, co również jest sprzeczne z ideą lokalnych systemów. Usługi sieciowe serwera dodatkowo podkreślają potrzebę interakcji z systemem zdalnym, podczas gdy lokalny SZBD działa na pojedynczym urządzeniu. Często błędne wnioski wynikają z nieodróżniania lokalnych i zdalnych architektur baz danych. W praktyce, lokalne SZBD jest idealne do zastosowań, gdzie bezpieczeństwo danych oraz ich szybki dostęp są kluczowe, w przeciwieństwie do rozwiązań chmurowych, które mogą wprowadzać opóźnienia związane z latencją sieci. Aby lepiej zrozumieć te różnice, warto zaznajomić się z typowymi zastosowaniami dla różnych typów baz danych, co pomoże w podejmowaniu świadomych decyzji w przyszłości.

Pytanie 39

Przed przystąpieniem do tworzenia kopii zapasowej bazy danych, aby była ona poprawna i zdatna do późniejszego przywrócenia, konieczne jest sprawdzenie

A. opcji udostępnienia bazy danych
B. spójności bazy danych
C. uprawnień dostępu do serwera bazy danych
D. poprawności składni zapytań
Prawa dostępu do serwera bazy danych, możliwość udostępnienia bazy danych oraz poprawność składni zapytań to aspekty, które są istotne w kontekście zarządzania bazami danych, jednak nie mają one bezpośredniego wpływu na możliwość wykonania poprawnej kopii bezpieczeństwa. Sprawdzanie praw dostępu jest kluczowe z punktu widzenia bezpieczeństwa, ale nawet przy odpowiednich uprawnieniach, kopia zapasowa będzie bezwartościowa, jeśli dane są niezgodne lub uszkodzone. Możliwość udostępnienia bazy danych odnosi się do tego, czy inni użytkownicy mogą z niej korzystać, co również nie ma wpływu na integralność danych, które kopiujemy. Z kolei poprawność składni zapytań dotyczy aspektu komunikacji z bazą danych, a nie stanu samych danych. Właściwie skonstruowane zapytania mogą z powodzeniem zwrócić wynik, ale nie gwarantują, że dane, które chcemy zarchiwizować, są zgodne i spójne. Często w praktyce pomija się te elementy, koncentrując się na bezpośrednich aspektach zarządzania danymi, co może prowadzić do poważnych problemów po przywróceniu bazy z kopii zapasowej. Najważniejsze jest, aby przed wykonaniem kopiowania danych, zapewnić ich spójność, co jest fundamentem operacji backupu.

Pytanie 40

W języku PHP, aby nawiązać połączenie z bazą danych MySQL za pomocą biblioteki mysqli, wykorzystując podany kod, w miejscu parametru 'c' powinno się wpisać

$a = new mysqli('b', 'c', 'd', 'e')
A. nazwę bazy danych
B. hasło użytkownika
C. nazwę użytkownika
D. lokalizację serwera bazy danych
Aby poprawnie korzystać z biblioteki mysqli w PHP konieczne jest zrozumienie kolejności i znaczenia parametrów używanych do nawiązywania połączenia z bazą danych MySQL. Pierwszym parametrem w funkcji mysqli_connect lub konstruktorze klasy mysqli jest lokalizacja serwera bazy danych. Zazwyczaj wartością domyślną jest 'localhost' co oznacza że serwer bazy danych działa na tej samej maszynie co serwer PHP. Błędne przypisywanie innej wartości w tym miejscu może prowadzić do problemów z połączeniem jeśli serwer bazy danych jest w rzeczywistości lokalny. Drugim parametrem jest nazwa użytkownika która jest niezbędna do autoryzacji dostępu do bazy danych. Często stosowanym błędem jest użycie niewłaściwego użytkownika co może skutkować odmową dostępu do bazy. Trzecim jest hasło które powinno być silne i dobrze zabezpieczone aby zapobiec nieautoryzowanemu dostępowi. Błędne przypisanie tego parametru może skutkować podatnością na ataki. Czwartym parametrem jest nazwa bazy danych do której zamierzamy się połączyć. Błędne podanie tej wartości może powodować że operacje bazy danych będą wykonywane na niewłaściwej bazie co może mieć katastrofalne skutki dla danych. Zrozumienie i poprawne przypisanie tych wartości jest kluczowe w kontekście bezpieczeństwa i stabilności aplikacji webowych i często jest elementem dobrych praktyk w programowaniu PHP. Również zrozumienie tego w kontekście skalowalności i zarządzania środowiskami produkcyjnymi jest istotne aby uniknąć problemów związanych z konfiguracją na różnych etapach rozwoju aplikacji. Właściwe zarządzanie tymi parametrami często wiąże się z używaniem plików konfiguracyjnych co pozwala na łatwiejsze zarządzanie i większą elastyczność w kontekście różnych środowisk programistycznych i produkcyjnych. Poprawne zrozumienie tego mechanizmu jest kluczowe dla tworzenia bezpiecznych i stabilnych aplikacji webowych.