Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 8 maja 2026 14:21
  • Data zakończenia: 8 maja 2026 14:33

Egzamin niezdany

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

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

W którym z poniższych przykładów walidacja fragmentu kodu CSS zakończy się sukcesem?

A. p { text-size:bold; }
B. p { font-weight:bold; }
C. <p style="font-style:bold;">
D. <p style="font-size:bold;">
Odpowiedzi, które próbują zastosować atrybuty stylów w niepoprawny sposób, zdradzają zrozumienie składni CSS oraz zasad stylizacji dokumentów HTML. W przypadku <p style="font-style:bold;"> pojawia się błąd, ponieważ atrybut style powinien zawierać właściwość font-weight, a nie font-style. Właściwość font-style jest przeznaczona do określenia stylu czcionki, takiego jak italic czy normal, a nie do ustawiania jej grubości. Zatem użycie 'bold' w kontekście font-style jest nieprawidłowe i prowadzi do tego, że przeglądarka nie zastosuje żadnej stylizacji. W kolejnej opcji, p { text-size:bold; }, znowu widzimy błąd w nazwie właściwości. Nie istnieje właściwość CSS o nazwie text-size; powinna być użyta font-size, a wartością mogą być jednostki takie jak px, em, rem itp. Ponadto, wartość 'bold' nie jest odpowiednia dla font-size, ponieważ ta właściwość przyjmuje liczby i jednostki, a nie stylizację. Ostatnia odpowiedź, <p style="font-size:bold;">, również jest błędna z tego samego powodu co wcześniej - font-size wymaga konkretnej wartości w jednostkach, a 'bold' nie jest akceptowalną wartością. Te błędne odpowiedzi pokazują, jak ważne jest zrozumienie składni CSS i stosowanie właściwych nazw właściwości w celu efektywnego stylizowania dokumentów HTML.

Pytanie 2

W semantycznym HTML odpowiednikiem elementu <b>, który nie tylko pogrubia tekst, ale także wskazuje na jego większe znaczenie, jest

A. <strong>
B. <ins>
C. <mark>
D. <em>
Znacznik <strong> w HTML semantycznym służy nie tylko do pogrubienia tekstu, ale także do wskazania, że dany fragment ma większe znaczenie w kontekście semantycznym. Zgodnie z zaleceniami W3C, użycie tego znacznika poprawia dostępność treści, ponieważ technologie wspomagające, takie jak czytniki ekranu, interpretują <strong> jako tekst o podwyższonej wadze, co może pomóc w lepszym zrozumieniu struktury dokumentu przez osoby z niepełnosprawnościami. Przykładem zastosowania może być podkreślenie ważnych informacji na stronie, takich jak zasady, ostrzeżenia czy kluczowe dane, które użytkownicy powinni zauważyć. W praktyce, stosowanie elementów semantycznych, takich jak <strong>, zamiast czysto stylistycznych, jest zgodne z zasadami budowania stron przyjaznych dla użytkowników i poprawia SEO, ponieważ wyszukiwarki mogą lepiej analizować kontekst treści. Warto pamiętać, że w przypadku użycia <strong>, nie zmienia to tylko sposobu wyświetlania, ale także wzbogaca znaczenie tekstu w kontekście całej strony.

Pytanie 3

Funkcją zaprezentowanego kodu PHP jest napełnienie tablicy $tab 10 losowymi liczbami z przedziału od -100 do 100, a następnie wypisanie liczb ujemnych. Kod prezentuje się następująco:

$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 liczb ujemnych
B. kolejnymi liczbami od -100 do 100 oraz wypisanie liczb ujemnych
C. 100 losowymi liczbami, a następnie wypisanie liczb dodatnich
D. kolejnymi liczbami od 0 do 9 i ich wyświetlenie
Przedstawiony kod w języku PHP ma na celu wypełnienie tablicy dziesięcioma losowymi wartościami i wypisanie tych, które są ujemne. Funkcja rand(-100, 100) generuje liczby losowe z zakresu od -100 do 100. W pętli for wykonujemy dziesięć iteracji, co umożliwia dodanie dziesięciu takich liczb do tablicy. Następnie, za pomocą pętli foreach, iterujemy przez wszystkie elementy tablicy. Instrukcja warunkowa if sprawdza, czy każda z wartości jest mniejsza od zera. Jeśli warunek jest spełniony, liczba jest wypisywana na ekran. Takie podejście jest często stosowane w programowaniu, gdy wymagana jest praca z losowymi danymi w celu testowania lub symulacji. W praktycznych zastosowaniach można użyć tej metody do filtrowania danych lub analizy wyników eksperymentalnych, gdzie konieczne jest zidentyfikowanie i obsługa wartości o określonych właściwościach. Dobre praktyki programistyczne nakazują dokumentowanie takich fragmentów kodu, aby ułatwić zrozumienie i utrzymanie projektu przez innych deweloperów.

Pytanie 4

Poniżej przedstawiono fragment kodu obsługującego

<?php
if ( !isset($_COOKIE[$nazwa]) )
  echo "nie ustawiono!";
else
  echo "ustawiono, wartość: " . $_COOKIE[$nazwa];
?>
A. baz danych
B. zmiennych tekstowych
C. ciasteczek
D. sesji
Odpowiedzi takie jak "bazy danych", "zmiennych tekstowych" oraz "sesji" są niepoprawne, ponieważ w kontekście podanego kodu nie odnoszą się one do rzeczywistości przedstawionej w pytaniu. Bazy danych służą do trwałego przechowywania danych, ale nie są związane z tym, co jest opisane w kodzie. Kod PHP nie ma nic wspólnego z operacjami na bazach danych, takimi jak SQL, ani z mechanizmami przechowywania danych w relacyjnych bazach danych. Zmienne tekstowe to pojęcie ogólne, które nie oddaje sedna zagadnienia - kod nie operuje na zmiennych tekstowych w kontekście przetwarzania danych, lecz na ciasteczkach, które są szczególnym przypadkiem przechowywania informacji w przeglądarkach. Sesje, z kolei, są innym mechanizmem przechowywania informacji, który pozwala na utrzymanie stanu aplikacji pomiędzy różnymi żądaniami HTTP. Sesje są przechowywane po stronie serwera, a identyfikator sesji jest zazwyczaj przechowywany w ciasteczkach. W tym przypadku odpowiedzi te są mylące, ponieważ nie uwzględniają kluczowej różnicy między ciasteczkami a mechanizmami przechowywania danych, jak sesje czy bazy danych. Typowy błąd myślowy polega na myleniu ciasteczek z innymi formami przechowywania, co można zauważyć w kontekście użycia ciasteczek do identyfikacji użytkownika lub sesji. Zrozumienie różnic pomiędzy tymi pojęciami jest istotne dla skutecznego programowania w PHP oraz budowy aplikacji webowych.

Pytanie 5

Co wchodzi w skład standardowego frameworka?

A. przetwarzanie formularzy oraz wbudowany serwer
B. system uruchamiania i przetwarzania akcji oraz certyfikat http
C. zarządzanie komunikacją z bazą danych, system uruchamiania i przetwarzania akcji
D. domena oraz obsługa błędów
Wybór odpowiedzi, który nie odnosi się do zarządzania komunikacją z bazą danych oraz mechanizmu uruchamiania i przetwarzania akcji, może prowadzić do mylnych przekonań na temat roli frameworków. Na przykład, odpowiedzi dotyczące certyfikatu HTTP i serwera wbudowanego mogą sugerować, że te elementy są kluczowe dla frameworków, podczas gdy w rzeczywistości to mechanizmy, które są bardziej związane z infrastrukturą sieciową i konfiguracją serwera. Certyfikat HTTP jest istotny dla bezpieczeństwa komunikacji, ale nie jest częścią samego frameworka aplikacyjnego. Podobnie, obsługa formularzy jest funkcją, którą wiele frameworków oferuje, lecz nie jest ona wystarczająca do pełnego operowania w kontekście aplikacji webowych. Ponadto, odpowiedź dotycząca domeny i obsługi błędów może wprowadzać w błąd, ponieważ domena to szerszy termin związany z architekturą aplikacji, a obsługa błędów to mechanizm usprawniający interakcję użytkownika, ale nie definiujący samego frameworka. Właściwe zrozumienie roli zarządzania danymi i mechanizmów przetwarzania akcji jest kluczowe dla efektywnego tworzenia aplikacji, które są skalowalne i łatwe w utrzymaniu.

Pytanie 6

Jakie funkcje może pełnić program FileZilla?

A. kompilacji skryptu na stronie
B. walidacji strony internetowej
C. publikacji strony internetowej
D. debugowania skryptu na stronie
Pomimo że niektóre odpowiedzi mogą wydawać się logiczne na pierwszy rzut oka, nie są one związane z funkcjonalnościami, które oferuje FileZilla. Kompilacja skryptu na stronie to proces, w którym kod źródłowy jest przetwarzany, aby stworzyć gotową aplikację lub stronę. FileZilla nie oferuje narzędzi do kompilacji, ponieważ nie jest edytorem kodu ani środowiskiem programistycznym. Walidacja strony internetowej dotyczy natomiast sprawdzania poprawności kodu HTML czy CSS, co ma na celu zapewnienie zgodności z standardami internetowymi. To zadanie wykonuje się przy pomocy specjalistycznych narzędzi lub usług online, a FileZilla nie ma wbudowanej funkcji do walidacji. Debugowanie skryptu to proces znajdowania i usuwania błędów w kodzie, który również nie jest celem działania FileZilli. Do debugowania często wykorzystuje się narzędzia developerskie dostępne w przeglądarkach internetowych lub dedykowane oprogramowanie, które oferuje zaawansowane funkcje analityczne. Typowym błędem myślowym jest pomylenie narzędzi przeznaczonych do zarządzania plikami z tymi, które służą do programowania czy analizy kodu. FileZilla jest skoncentrowana na przesyłaniu i zarządzaniu plikami, a nie na edytowaniu czy analizie kodu źródłowego.

Pytanie 7

W HTML-u znacznik tekst będzie prezentowany przez przeglądarkę w sposób identyczny do znacznika

A. <h1>tekst</h1>
B. <big>tekst</big>
C. <b>tekst</b>
D. <sub>tekst</sub>
Znacznik <strong> w HTML jest używany do oznaczania tekstu, który ma być wyróżniony jako ważny. Jego domyślne stylizowanie w przeglądarkach polega na pogrubieniu tekstu, co jest również funkcją znacznika <b>. Oba znaczniki mają podobne zastosowanie, ale <strong> niesie dodatkowe znaczenie semantyczne, co oznacza, że informuje przeglądarki i maszyny o tym, że dany tekst jest istotny. Przykładem może być użycie <strong> w nagłówkach lub w miejscach, gdzie chcemy zwrócić uwagę na kluczowe informacje, jak np. 'Zamówienie <strong>pilne</strong> musi być dostarczone do jutra.' W kontekście dobrych praktyk zaleca się używanie znaku <strong> zamiast <b>, gdyż wspiera to dostępność i SEO - wyszukiwarki lepiej interpretują semantykę treści, co może wpłynąć na pozycjonowanie strony. Warto również pamiętać, że zgodnie z W3C, semantyka HTML ma kluczowe znaczenie dla strukturyzacji dokumentów oraz ich dostępności.

Pytanie 8

Wskaż funkcję w JavaScript, która pozwoli obliczyć połowę kwadratu liczby podanej jako argument.

A. function wynik(a) { return a*2/2; }
B. function wynik(a) { return a*a/2; }
C. function wynik(a) { return 2*a/a; }
D. function wynik(a) { return a/2+a/2; }
Funkcja function wynik(a) { return a*a/2; } jest całkiem w porządku. Działa, bo fajnie oblicza połowę kwadratu liczby, którą podajesz jako argument. W praktyce, 'a*a' to nic innego jak kwadrat liczby 'a', a potem dzielimy to przez 2, co nam daje wartość połowy tego kwadratu. To, co zrobiłeś, jest zgodne z zasadami matematyki i jak na programowanie w JavaScript to też się sprawdza. Na przykład, jak podstawisz '4', to funkcja zwróci 8, bo (4*4)/2 = 16/2 = 8. Takie obliczenia mogą się przydać w różnych aplikacjach, np. przy obliczeniach inżynieryjnych czy analizie danych, gdzie często korzysta się z takich wzorów. Użycie zmiennych i funkcji w programowaniu ułatwia zarządzanie danymi, a do tego można łatwiej się orientować w kodzie, co jest super.

Pytanie 9

Które z pól edycyjnych zostało przedstawione w opisanym stylu, zakładając, że pozostałe atrybuty pola mają wartości domyślne, a użytkownik wpisał imię Krzysztof w przeglądarce?

Ilustracja do pytania
A. Pole 4
B. Pole 3
C. Pole 2
D. Pole 1
Dobrze, że dopasowałeś Pole 2 do stylu z kodu CSS. Widać, że dobrze ogarniasz te rzeczy! Ten padding 10px, co dałeś, naprawdę robi różnicę. Dzięki temu tekst ma więcej przestrzeni wokół siebie. A kolor tła Teal? Super wybór, bo to taki fajny pośredni odcień między niebieskim a zielonym. Biały tekst na tym tle jest świetnie widoczny, co jest mega ważne. No i brak obramowania, czyli border none, dodaje nowoczesności! Zaokrąglenie krawędzi, które ustawiłeś na 7px, sprawia, że pole wygląda przyjemniej. Takie rzeczy są często stosowane, by przygotować interfejsy, które są estetyczne i funkcjonalne. Jak projektujesz, pamiętaj o kontrastach, bo to naprawdę podnosi jakość aplikacji. Troska o estetykę i użyteczność to kluczowa sprawa. Dobra robota!

Pytanie 10

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

<table>
    <tr>
        <td style="border: solid 1px;">Komórka 1</td>
        <td style="border: solid 1px;">Komórka 2</td>
    </tr>
    <tr>
        <td style="border: solid 1px;">Komórka 3</td>
        <td style="border: solid 1px;">Komórka 4</td>
    </tr>
    <tr>
        <td style="border: solid 1px;">Komórka 5</td>
        <td style="border: solid 1px;">Komórka 6</td>
    </tr>
</table>
/efekt jest na obrazie - nie dołączam - nie analizuj/
Ilustracja do pytania
A. <pre class="code-block">&lt;tr <span class="code-text">style=</span><span class="code-string">"visibility: hidden"</span>&gt;</pre>
B. <pre class="code-block">&lt;tr <span class="code-text">style=</span><span class="code-string">"display: none"</span>&gt;</pre>
C. <pre class="code-block">&lt;tr <span class="code-text">style=</span><span class="code-string">"clear: none"</span>&gt;</pre>
D. <pre class="code-block">&lt;tr <span class="code-text">style=</span><span class="code-string">"display: table-cell"</span>&gt;</pre>
Zastosowanie niewłaściwych właściwości CSS w tabelach może prowadzić do niezamierzonych efektów wizualnych i funkcjonalnych. 'Display: none' usunąłby wiersz z układu dokumentu, co skutkowałoby przesunięciem w górę wierszy poniżej. To podejście jest użyteczne, gdy element powinien być całkowicie usunięty z przestrzeni wizualnej i układu, ale nie spełniałoby celu przedstawionego w pytaniu, gdzie układ ma pozostać niezmieniony. Z kolei 'clear: none' jest właściwością CSS dotyczącą floatów, a nie widoczności, co oznacza, że nie miałoby żadnego wpływu na wyświetlanie wiersza tabeli. Jest to typowy błąd polegający na myleniu właściwości CSS w kontekście ukrywania elementów. Właściwość 'display: table-cell' jest stosowana dla elementów traktowanych jako komórki tabeli, co nie jest odpowiednie dla wierszy tabeli. Wybierając tę właściwość, użytkownik mógłby mylnie sądzić, że ma to wpływ na widoczność, podczas gdy w rzeczywistości zmienia jedynie sposób renderowania elementu. Prawidłowe rozumienie różnic między 'visibility' a 'display' jest kluczowe w tworzeniu przewidywalnych i stabilnych interfejsów użytkownika, co jest jednym z fundamentów dobrego projektowania front-endu. Wybór niewłaściwego podejścia do ukrywania elementów może prowadzić do niepożądanych zmian w interfejsie, co wpływa na użyteczność i estetykę strony.

Pytanie 11

W CSS zapisany w ten sposób:

p { background-image: url("rysunek.png"); }

spowoduje, że rysunek.png stanie się

A. tłem każdego akapitu
B. wyświetlony, jeśli w kodzie użyty zostanie znacznik img
C. widoczny obok każdego akapitu
D. tłem całej witryny
Zapis CSS p { background-image: url("rysunek.png"); } oznacza, że dla każdego elementu akapitowego <p> w dokumencie zostanie ustawione tło w postaci grafiki o nazwie rysunek.png. Ta reguła selektora p dotyczy wyłącznie znaczników akapitu, więc nie wpłynie na inne elementy strony, takie jak body czy img. Tak się to stosuje w praktyce: projektując na przykład bloga, możesz dodać delikatny deseń lub obrazek w tle akapitu, żeby całość wyglądała ciekawiej albo podkreślała styl witryny. Co ciekawe, background-image w CSS pozwala na olbrzymią elastyczność — możesz wykorzystać obrazy, gradienty czy nawet SVG jako tło. Standardy CSS jasno to definiują: background-image działa zawsze na tym elemencie, dla którego zadeklarowano regułę w selektorze. Warto pamiętać, że tło nie przesłoni tekstu w akapicie, tylko się pod nim wyświetli, więc czytelność jest zachowana. Z własnego doświadczenia uważam, że umiejętność stosowania background-image do konkretnych elementów to jedno z podstawowych narzędzi webdevelopera — pozwala przygotować naprawdę estetyczne i przejrzyste layouty. Dobrym nawykiem jest także testowanie widoczności tła na różnych urządzeniach, bo rozdzielczości i skalowanie potrafią zaskoczyć. Dla porządku, jeśli podasz background-image bez żadnych dodatkowych parametrów (jak powtarzanie czy pozycjonowanie), obrazek domyślnie będzie się powtarzał w poziomie i pionie, aż pokryje cały akapit.

Pytanie 12

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

A. używanie skomplikowanych haseł do bazy.
B. defragmentacja dysków.
C. aktywacja zapory.
D. blokowanie portów związanych z bazą danych.
Włączenie zapory sieciowej jest istotnym krokiem w zabezpieczaniu serwera bazy danych. Zapora działa jako filtr, który kontroluje ruch przychodzący i wychodzący, blokując potencjalnie szkodliwe połączenia, co jest kluczowe w kontekście ochrony przed atakami DDoS oraz nieautoryzowanym dostępem. Ponadto stosowanie złożonych haseł jest fundamentalnym elementem bezpieczeństwa, jako że proste hasła mogą być łatwo złamane przez ataki typu brute-force. Wdrożenie polityki silnych haseł, które zawierają kombinacje liter, cyfr oraz symboli, znacząco zwiększa poziom ochrony dostępu do bazy danych. Blokowanie portów to kolejna ważna praktyka; poprzez zamykanie portów, które nie są używane przez serwer bazy danych, znacznie ograniczamy możliwości ataków, ponieważ wiele złośliwych działań opiera się na próbie skanowania otwartych portów w celu znalezienia luk w zabezpieczeniach. Zrozumienie tych aspektów jest kluczowe dla wszystkich administratorów baz danych, którzy muszą dbać o integralność i bezpieczeństwo danych. Ignorowanie tych praktyk w imię nieistotnych działań, takich jak defragmentacja, może prowadzić do poważnych naruszeń bezpieczeństwa, co podkreśla znaczenie stosowania znanych i sprawdzonych metod ochrony w środowisku IT.

Pytanie 13

Na podstawie filmu wskaż, która cecha dodana do stylu CSS zamieni miejscami bloki aside i nav, pozostawiając w środku blok section?

A. nav { float: right; } section { float: right; }
B. aside {float: left; }
C. nav { float: right; }
D. nav { float: left; } aside { float: left; }
W tym zadaniu kluczowe jest zrozumienie, jak naprawdę działa float, a nie tylko samo skojarzenie, że „left to lewo, right to prawo”. Wiele osób myśli, że wystarczy ustawić jeden element na lewo, drugi na prawo i wszystko magicznie się poukłada. W praktyce przeglądarka trzyma się bardzo konkretnych reguł: najpierw liczy kolejność elementów w HTML, potem dopiero stosuje float i układa je możliwie jak najwyżej i jak najbliżej odpowiedniej krawędzi. Jeśli nada się float tylko dla aside albo tylko dla nav, to zmienia się ich pozycja, ale układ trzech bloków nie spełni warunku z zadania: aside i nav nie zamienią się miejscami z pozostawieniem section w środku. Przykładowo, samo float: left na aside niczego nie „zamieni”, bo element i tak pojawia się jako pierwszy w kodzie, więc będzie u góry, tylko że „przyklejony” do lewej. Z kolei ustawienie nav na prawą stronę bez odpowiedniego floatowania section prowadzi do sytuacji, gdzie section nadal zachowuje się jak normalny blok, zwykle ląduje pod elementami pływającymi albo obok nich w sposób mało przewidywalny dla początkującego. Częsty błąd myślowy polega też na tym, że ktoś próbuje wszystkim elementom dać float: left, licząc na to, że przeglądarka „ułoży je po swojemu”. Wtedy jednak wszystkie te bloki ustawiają się w jednym kierunku, w kolejności z HTML, więc nie ma mowy o świadomym „zamienianiu miejsc”. Brak zrozumienia, że float wyjmuje element z normalnego przepływu i wpływa na to, jak kolejne elementy zawijają się wokół niego, prowadzi właśnie do takich błędnych odpowiedzi. Z mojego doświadczenia lepiej jest najpierw narysować sobie prosty schemat: w jakiej kolejności idą znaczniki i które z nich mają pływać w prawo, a które zostać w naturalnym układzie. Dopiero wtedy dobiera się konkretne deklaracje CSS. Takie myślenie przydaje się nie tylko przy float, ale też przy nauce flexboxa czy grida, gdzie kolejność w DOM i własności układu też grają ogromną rolę.

Pytanie 14

Aby przyspieszyć operacje na bazie danych należy dla pól często wyszukiwanych lub sortowanych

A. dodać więzy integralności.
B. utworzyć osobną tabelę przechowującą tylko te pola.
C. dodać klucz obcy.
D. utworzyć indeks.
Prawidłowo – kluczem do przyspieszenia wyszukiwania i sortowania w relacyjnej bazie danych jest utworzenie indeksu na kolumnach, po których najczęściej filtrujesz (WHERE), łączysz tabele (JOIN) albo sortujesz (ORDER BY). Indeks działa podobnie jak spis treści czy indeks na końcu książki – zamiast przeglądać każdą stronę po kolei, silnik bazy danych korzysta z dodatkowej struktury danych (najczęściej drzewa B-drzewiastego, tzw. B-tree), żeby bardzo szybko znaleźć interesujące wiersze. W praktyce oznacza to, że zapytania, które wcześniej skanowały całą tabelę (full table scan), zaczynają wykorzystywać indeks, co drastycznie zmniejsza liczbę odczytanych stron danych z dysku. W SQL jest to standardowa dobra praktyka: dla kolumn używanych w warunkach wyszukiwania i sortowania tworzy się indeksy, ale z umiarem, żeby nie przesadzić. Z mojego doświadczenia w projektach webowych typowe indeksy to np. indeks na kolumnie email w tabeli użytkowników, indeks na data_dodania w tabeli z artykułami albo indeks złożony (wielokolumnowy) na (user_id, created_at) w tabeli logów czy zamówień. Dzięki temu zapytania typu SELECT * FROM zamowienia WHERE user_id = ? ORDER BY created_at DESC działają bardzo szybko. Warto też wiedzieć, że dobry administrator lub programista zawsze sprawdza plany wykonania zapytań (EXPLAIN w MySQL/PostgreSQL) i na tej podstawie decyduje, które indeksy są naprawdę potrzebne. Tworzenie indeksów na oślep nie jest najlepszym pomysłem, ale sensowne indeksowanie jest absolutnym standardem w profesjonalnych systemach bazodanowych i jedną z podstawowych technik optymalizacji wydajności.

Pytanie 15

Aplikacja o nazwie FileZilla umożliwia

A. sprawdzanie poprawności plików HTML i CSS
B. importowanie bazy danych do systemu CMS Joomla!
C. publikację strony internetowej na zdalnym serwerze
D. przeprowadzanie testów aplikacji
FileZilla to popularny klient FTP (File Transfer Protocol), który umożliwia użytkownikom przesyłanie plików pomiędzy lokalnym komputerem a zdalnym serwerem. Głównym celem korzystania z FileZilla jest publikacja stron internetowych, co polega na załadowaniu plików HTML, CSS, obrazków oraz innych zasobów na serwer, gdzie strona będzie dostępna dla użytkowników w Internecie. Dzięki intuicyjnemu interfejsowi, użytkownicy mogą łatwo przeciągać i upuszczać pliki, co przyspiesza proces publikacji. FileZilla obsługuje różne protokoły, w tym FTP, FTPS oraz SFTP, co zapewnia bezpieczeństwo podczas transferu danych. Dobrą praktyką jest regularne aktualizowanie programu, aby korzystać z najnowszych funkcji i poprawek bezpieczeństwa. W kontekście publikacji stron internetowych, FileZilla stanowi kluczowe narzędzie dla web developerów, umożliwiając im szybkie i efektywne zarządzanie plikami na serwerach zdalnych. Używanie FileZilla wspiera standardy branżowe, takie jak bezpieczeństwo transferu danych oraz zdalne zarządzanie plikami, co jest niezbędne w profesjonalnym rozwoju stron internetowych.

Pytanie 16

W przedstawionym kodzie HTML zastosowany styl CSS jest stylem ```

To jest przykładowy akapit.

```
A. dynamicznym
B. nagłówkowym
C. lokalnym
D. zewnętrznym
Styl CSS zastosowany w podanym kodzie HTML to styl lokalny, ponieważ jest zdefiniowany bezpośrednio w tagu HTML za pomocą atrybutu 'style'. Taki sposób definiowania stylów pozwala na przypisanie unikalnych stylów do konkretnego elementu na stronie, co jest szczególnie przydatne, gdy chcemy szybko zmienić wygląd jednego elementu bez wpływania na inne. Przykładem lokalnego stylu jest ustawienie koloru tekstu akapitu na czerwony, co można zaobserwować w atrybucie 'style="color:red;"'. Warto zauważyć, że lokalne style mają wyższy priorytet od stylów zewnętrznych i wewnętrznych, co oznacza, że jeśli ten sam element ma przypisany styl zewnętrzny, lokalny styl go nadpisze. W kontekście standardów CSS, lokalne style są zgodne z zasadami kaskadowości, która określa, jak łączyć różne źródła stylów. Z perspektywy użyteczności, chociaż lokalne style mogą być wygodne, ich nadmierne stosowanie prowadzi do trudności w utrzymaniu kodu, dlatego zaleca się ich używanie w ograniczonym zakresie.

Pytanie 17

<source src="plik.mp4" type="video/mp4">
Aby osadzić plik wideo na stronie WWW, przedstawiony kod HTML5 należy umieścić wewnątrz znaczników:
A. <video> </video>
B. <section> </section>
C. <div> </div>
D. <embed> </embed>
W tym pytaniu kluczowe jest zrozumienie, że sam znacznik `<source>` nie osadza wideo na stronie, tylko dostarcza przeglądarce informacji o konkretnym pliku i jego typie. Rolę kontenera pełni inny element. Często uczniowie próbują „owijać” źródło wideo w różne ogólne znaczniki, takie jak `<div>` czy `<section>`, bo kojarzą je z budowaniem struktury strony. To jednak tylko znaczniki blokowe do organizowania layoutu i treści, nie mają one natywnej logiki odtwarzania multimediów. Jeśli włożymy `<source>` do `<div>` lub `<section>`, przeglądarka po prostu potraktuje to jako zwykły kod, który niczego nie odtwarza, bo brakuje elementu multimedialnego odpowiedzialnego za interpretację tego źródła. Innym skojarzeniem jest `<embed>`. Ten znacznik był (i bywa nadal) używany do osadzania zewnętrznych zasobów, np. animacji Flash, PDF-ów czy innych obiektów. W czasach HTML5 jego rola jest jednak ograniczona, a dla wideo i audio wprowadzono dedykowane elementy `<video>` i `<audio>`. Użycie `<embed>` do wideo jest możliwe, ale nie jest zgodne z nowoczesnymi standardami i pozbawia nas wielu zalet, takich jak spójne API, lepsza dostępność czy łatwiejsza kontrola stylów. Typowym błędem myślowym jest tu traktowanie każdego znacznika, który „coś osadza”, jako równoważnego. HTML5 mocno stawia na semantykę: `<video>` jasno mówi, że mamy do czynienia z treścią wideo, `<section>` – z logiczną sekcją dokumentu, `<div>` – z neutralnym kontenerem, a `<embed>` – z osadzonym zasobem o mniej precyzyjnym przeznaczeniu. Przeglądarka oczekuje, że `<source>` pojawi się wewnątrz elementu multimedialnego, czyli właśnie `<video>` lub `<audio>`. Z mojego doświadczenia wynika, że kiedy ktoś próbuje wkładać `<source>` w inne znaczniki, to najczęściej wynika to z mylenia struktury dokumentu (layoutu) z elementami odpowiedzialnymi za realne odtwarzanie treści. Dobra praktyka w nowoczesnym webdevie to korzystanie z elementów zgodnie z ich semantyką, dlatego do wideo zawsze używamy `<video>` jako kontenera, a `<source>` tylko jako definicji plików w środku.

Pytanie 18

Tablica tab[] jest wypełniona dowolnymi liczbami całkowitymi. Jaka wartość znajdzie się w zmiennej zm2 po wykonaniu prezentowanego fragmentu kodu?

int tab[10];
int zm1 = 0;
double zm2 = 0;

for (int i=0; i < 10; i++)
{
  zm1 = zm1 + tab[i];
}
zm2 = zm1 / 10;
A. Suma elementów tablicy.
B. Suma liczb od 1 do 10.
C. Średnia arytmetyczna elementów tablicy.
D. Średnia geometryczna liczb od 0 do 9.
Rozważanie sumy liczb z tablicy jako wyniku zmiennej zm2 jest błędne, ponieważ zmienna ta nie przechowuje sumy, lecz średnią arytmetyczną. Suma liczb z tablicy jest przechowywana w zmiennej zm1, co jest zupełnie inną wartością. Średnia arytmetyczna jest definicją statystyczną, która odnosi się do podziału całkowitej wartości (sumy) przez liczbę elementów, co w tym przypadku jest realizowane przez zmienną zm2. Wybierając odpowiedź, która twierdzi, że zm2 to suma liczb od 1 do 10, wprowadza w błąd, ponieważ nie ma to związku z danymi w tablicy tab, która zawiera dowolne liczby całkowite. Inna błędna koncepcja to średnia geometryczna, która jest zupełnie innym typem średniej, obliczaną na podstawie iloczynu wartości, a nie ich sumy. Zrozumienie różnicy między tymi pojęciami jest kluczowe w analizie danych i programowaniu, a także w zastosowaniach matematycznych. Błędy w myśleniu, takie jak pomylenie średniej arytmetycznej z geometryczną, mogą prowadzić do poważnych konsekwencji w analizach danych i wnioskach wyciąganych z nich. Niezrozumienie kontekstu tablicy oraz algorytmu prowadzi do nieprawidłowego interpretowania wyników.

Pytanie 19

W celu przyznania użytkownikowi w systemie MySQL możliwości nadawania i modyfikowania uprawnień innym użytkownikom, konieczne jest użycie klauzuli

A. ALL PRIVILEGES
B. GRANT OPTION
C. FLUSH PRIVILEGES
D. TRGGER
Aby w systemie MySQL nadać użytkownikowi prawo do nadawania i zmiany uprawnień innym użytkownikom, należy zastosować klauzulę GRANT OPTION. Ta klauzula jest istotnym elementem systemu zarządzania uprawnieniami, ponieważ umożliwia użytkownikowi, który posiada określone uprawnienia, dzielenie się nimi z innymi użytkownikami. Oznacza to, że użytkownik z GRANT OPTION ma prawo nie tylko do wykonania pewnych działań, ale także do przekazywania tych uprawnień innym, co jest kluczowe w zarządzaniu dużymi bazami danych, gdzie konieczne jest delegowanie zadań. Przykład użycia klauzuli GRANT OPTION może wyglądać następująco: 'GRANT SELECT, INSERT ON my_database.* TO 'user1'@'localhost' WITH GRANT OPTION;', co daje użytkownikowi 'user1' prawo do wykonywania operacji SELECT i INSERT oraz możliwość przekazywania tych uprawnień innym użytkownikom. Taki mechanizm jest fundamentalny dla utrzymania hierarchii uprawnień i bezpieczeństwa w bazach danych, co jest zgodne z najlepszymi praktykami w zarządzaniu dostępem do danych.

Pytanie 20

Programista stworzył w języku C++ pętlę mającą na celu obliczenie wartości 5! (5! = 1 * 2 * 3 * 4 * 5). Niestety, popełnił błąd logiczny, gdyż

int a = 1; 
for (int i=1; i < 5; i++)
{
a = a * i;
}
cout << a;
A. Parametr i pętli powinien być rozpoczęty od wartości 0 zamiast 1.
B. Zmienna a powinna być inicjowana wartością 0 zamiast 1.
C. Parametr i pętli powinien być zmniejszany zamiast zwiększany.
D. W drugim parametrze pętli powinno być porównanie i < 6 zamiast i < 5.
W poprawnej odpowiedzi wskazano, że w drugim parametrze pętli powinno być porównanie i < 6 zamiast i < 5. W kontekście obliczania silni 5! (czyli 5*4*3*2*1), pętla for powinna iterować od 1 do 5, co oznacza, że końcowy warunek pętli powinien uwzględniać 5. W przeciwnym razie, ostatnia iteracja, w której i wynosi 5, nie będzie wykonana, co skutkuje błędnym wynikiem. Prawidłowa pętla powinna wyglądać tak: for (int i=1; i <= 5; i++) lub for (int i=1; i < 6; i++). Takie podejście jest zgodne z zasadami programowania, które zalecają, aby końcowy warunek pętli obejmował ostatnią wartość, która ma być przetwarzana. Dobrą praktyką w programowaniu jest również przemyślenie granic pętli, aby zapewnić, że wszystkie wymagane wartości są uwzględniane w obliczeniach, co jest kluczowe w takich obliczeniach matematycznych jak silnia.

Pytanie 21

Które z poniższych poleceń przywróci funkcjonalność uszkodzonej tabeli w SQL?

A. REPAIR TABLE tbl_name
B. ANALYZE TABLE tbl_name
C. REGENERATE TABLE tbl_name
D. OPTIMIZE TABLE tbl_name

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie REPAIR TABLE tbl_name jest używane w systemach zarządzania bazami danych, takich jak MySQL, do naprawy uszkodzonych tabel. Kiedy tabela ulega uszkodzeniu, na przykład z powodu błędów podczas zapisu danych, utraty zasilania lub problemów z dyskiem, REPAIR TABLE analizuje strukturę tabeli i podejmuje próby przywrócenia jej do stanu operacyjnego. Działanie to jest szczególnie przydatne w przypadku tabel typu MyISAM, które mogą być bardziej podatne na uszkodzenia niż inne silniki, takie jak InnoDB. Użycie tego polecenia jest stosunkowo proste: wystarczy wykonać zapytanie w formacie REPAIR TABLE nazwa_tabeli. W praktyce, aby zwiększyć bezpieczeństwo danych, zaleca się regularne wykonywanie kopii zapasowych oraz monitorowanie logów serwera bazy danych, co pozwala na wczesne wykrywanie problemów i minimalizowanie ryzyka utraty danych. Dodatkowo, dokumentacja MySQL podkreśla znaczenie tego polecenia jako narzędzia do utrzymania integralności baz danych, co czyni go nieocenionym w pracy administratora baz danych.

Pytanie 22

Funkcja napisana w PHP ma na celu

Ilustracja do pytania
A. ustawienie hasła do bazy danych
B. pobranie informacji z bazy danych
C. zabezpieczenie bazy danych
D. nawiązanie połączenia z bazą danych

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja mysql_query z języka PHP jest używana do wykonywania zapytań SQL w bazie danych MySQL. W przedstawionym przykładzie zapytanie SELECT * FROM napisy pobiera wszystkie rekordy z tabeli o nazwie napisy. Jest to klasyczne zapytanie używane do uzyskania danych z bazy danych co czyni je podstawowym narzędziem programisty PHP operującego na bazach danych. Zwrócone dane mogą następnie być przetwarzane wyświetlane lub używane w dalszych operacjach aplikacji. Ważnym aspektem pracy z bazami danych jest ochrona przed atakami SQL Injection co można osiągnąć poprzez stosowanie przygotowanych wyrażeń lub funkcji takich jak mysqli_prepare. Warto też pamiętać że funkcja mysql_query jest przestarzała i niezalecana w nowych projektach a zamiast niej powinno się używać mysqli lub PDO. Obie te biblioteki oferują większe bezpieczeństwo i lepszą obsługę błędów co jest zgodne z aktualnymi standardami w branży. Praca z danymi wymaga nie tylko ich pobierania ale także odpowiedniego zarządzania czym zajmują się bardziej złożone mechanizmy jak ORM-y co upraszcza pracę z bazami danych i zwiększa czytelność kodu.

Pytanie 23

Kwerenda ALTER TABLE artykuly MODIFY cena float ma na celu wykonanie modyfikacji w tabeli artykuly?

A. wprowadzić kolumnę cena o typie float, o ile jeszcze nie istnieje
B. zmienić typ na float dla kolumny cena
C. usunąć kolumnę cena, która jest typu float
D. zmienić nazwę kolumny cena na float

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kwerenda ALTER TABLE artykuly MODIFY cena float ma na celu zmianę typu kolumny 'cena' w tabeli 'artykuly' na typ float. Typ float jest używany do przechowywania liczb zmiennoprzecinkowych, co jest szczególnie przydatne w przypadku cen, które mogą mieć ułamkowe wartości. Przykładem zastosowania tej kwerendy może być sytuacja, w której początkowo kolumna 'cena' była zdefiniowana jako typ integer, co ograniczałoby możliwość przechowywania wartości takich jak 19.99. Zmiana typu na float pozwala na większą precyzję, co jest zgodne z najlepszymi praktykami w zarządzaniu danymi finansowymi. Ważne jest, aby przed zmianą typu kolumny upewnić się, że wszystkie istniejące dane są zgodne z nowym typem, aby uniknąć błędów konwersji. Ostatecznie, korzystając z tego polecenia, dbamy o integralność danych oraz ich prawidłowe reprezentowanie, co jest kluczowe w każdej aplikacji związanej z zarządzaniem danymi.

Pytanie 24

W CSS, aby ustawić wcięcie pierwszej linii akapitu na 30 pikseli, należy użyć następującego zapisu

A. p { text-indent: 30px; }
B. p { line-height: 30px; }
C. p { line-indent: 30px; }
D. p { text-spacing: 30px; }

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź p { text-indent: 30px; } jest poprawna, ponieważ właściwość text-indent w CSS służy do definiowania wcięcia pierwszej linii tekstu w elemencie blokowym, takim jak akapit (p). Umożliwia to nadanie tekstowi estetycznego wyglądu oraz zwiększenie czytelności, szczególnie w dłuższych blokach tekstu. Wartość 30px oznacza, że pierwsza linia akapitu zostanie przesunięta o 30 pikseli w prawo względem pozostałych linii. Przykładowo, jeśli mamy długi akapit z tekstem, zastosowanie wcięcia może pomóc w wyodrębnieniu go wizualnie, co sprzyja lepszemu zrozumieniu zawartości przez użytkowników. Warto także dodać, że standardy CSS są regularnie aktualizowane, a stosowanie dobrych praktyk, takich jak odpowiednie formatowanie tekstu, ma kluczowe znaczenie w projektowaniu responsywnych i przyjaznych dla użytkownika stron internetowych. Wykorzystanie text-indent jest jedną z technik, które przyczyniają się do poprawy UX (User Experience).

Pytanie 25

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

A. phpinfo()
B. phpinformation()
C. phpgetinfo()
D. php()

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
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 26

Jak nazywa się proces, w trakcie którego identyfikuje się oraz eliminuje błędy w kodzie źródłowym aplikacji?

A. Normalizacja
B. Kompilacja
C. Debugowanie
D. standaryzacja

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Debugowanie to proces, który polega na identyfikacji, analizie i usuwaniu błędów w kodzie źródłowym programów. Jest to kluczowy etap w cyklu życia oprogramowania, który zapewnia, że aplikacje działają zgodnie z zamierzonymi specyfikacjami. W praktyce debugowanie może obejmować różnorodne techniki, takie jak używanie narzędzi do analizy statycznej, wykonanie testów jednostkowych oraz korzystanie z debuggerów, które pozwalają na śledzenie wykonania kodu w czasie rzeczywistym. Dobre praktyki debugowania obejmują dokumentowanie napotkanych błędów, co może ułatwić ich ponowne wystąpienie oraz szybsze ich usunięcie w przyszłości. Debugowanie nie tylko poprawia jakość kodu, ale również ułatwia rozwój i utrzymanie oprogramowania, co jest zgodne z zasadami Agile i DevOps, gdzie ciągła integracja i dostarczanie są kluczowymi elementami procesu. W ten sposób debugowanie stanowi integralną część programowania, która wpływa na wydajność i stabilność tworzonych aplikacji.

Pytanie 27

W znaczniku (w sekcji ) strony internetowej nie zamieszcza się informacji odnoszących się do

A. rodzaju dokumentu
B. automatycznego przeładowania
C. autora
D. kodowania

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź "typu dokumentu" jest trafna, bo znacznik <meta> w HTML jest używany do ustawiania metadanych, które nie mówią nam bezpośrednio o typie dokumentu. W praktyce, to co znajdziemy w <meta>, dotyczy głównie takich rzeczy jak automatyczne odświeżanie strony (przez tag http-equiv="refresh"), kodowanie (gdzie definiujemy zestaw znaków, np. UTF-8) czy informacje o autorze strony (poprzez tag name="author"). Typ dokumentu jest ustalany w deklaracji DOCTYPE na początku dokumentu HTML, a nie w <meta>. Znaczniki <meta> mogą też pomóc w SEO i lepszym indeksowaniu przez wyszukiwarki. Na przykład, używając tagu <meta name="description" content="Opis strony">, możemy pomóc wyszukiwarkom lepiej zrozumieć, o czym jest nasza strona, co może zachęcić do kliknięcia w link w wynikach wyszukiwania.

Pytanie 28

W języku CSS zdefiniowano style dla znacznika h1 zgodnie z podanym wzorem. Przy założeniu, że żadne inne style nie są zastosowane do znacznika h1, wskaż właściwy sposób stylizacji tego elementu

Ilustracja do pytania
A. D
B. B
C. C
D. A

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź C jest prawidłowa, ponieważ zastosowane style CSS poprawnie odzwierciedlają zasady formatowania zdefiniowane w pytaniu. Styl font-style: oblique; powoduje, że tekst jest pochylony, ale nie jest to zwykła kursywa używana w normalnym tekście. Oblique jest bardziej subtelne i mniej formalne. Font-variant: small-caps; przekształca małe litery w małe kapitaliki, co nadaje tekstowi bardziej formalny i elegancki wygląd. Jest to użyteczne w nagłówkach, które często wymagają wyrazistości i czytelności. Text-align: right; wyrównuje tekst do prawej, co może być stosowane do tworzenia asymetrycznych, nowoczesnych projektów stron internetowych. Takie formatowanie stosowane jest dla zwiększenia czytelności lub dostosowania tekstu do innych elementów strony. Właściwe stosowanie CSS pozwala na pełne kontrolowanie wyglądu i prezentacji treści, co jest kluczowe w profesjonalnym tworzeniu stron internetowych. Przykładowo, użycie oblique i small-caps może być stosowane w projektach graficznych, takich jak logotypy, gdzie pożądany jest specyficzny styl wizualny. Dobre praktyki w CSS to unikanie nadmiernego użycia stylów, które mogą wpłynąć negatywnie na dostępność i użyteczność strony. W tym kontekście, wybrane style są skutecznie zastosowane, zapewniając zarówno estetykę, jak i funkcjonalność.

Pytanie 29

Przedstawione polecenie MySQL ma za zadanie

 ALTER TABLE ksiazki
 MODIFY tytul VARCHAR(100) NOT NULL;
A. dodać do tabeli ksiazki kolumnę tytul.
B. zmienić nazwę kolumny w tabeli ksiazki.
C. zmienić typ kolumny tytul w tabeli ksiazki.
D. usunąć kolumnę tytul z tabeli ksiazki.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Dobra robota, Twoja odpowiedź jest właściwa! W poleceniu użyto ALTER TABLE, co to jest ten typowy sposób na modyfikowanie tabel w bazach danych. No i to słowo kluczowe MODIFY wskazuje, że zmieniamy coś w już istniejącej kolumnie. W tym przypadku chodzi o kolumnę 'tytul' w tabeli 'ksiazki', której typ zmieniamy na VARCHAR(100), co znaczy, że teraz może ona mieć teksty do 100 znaków długości. Dodatkowo dodajemy ograniczenie NOT NULL, więc 'tytul' musi być zawsze wypełniony. To normalna rzecz, kiedy na przykład musimy dostosować strukturę danych, gdy na przykład zauważymy, że tytuły książek stają się dłuższe albo musimy mieć pewność, że zawsze są wprowadzone.

Pytanie 30

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

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
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.

Pytanie 31

W CSS wartości underline, overline, blink są przypisane do atrybutu

A. font-weight
B. font-style
C. text-decoration
D. text-style

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Właściwość CSS 'text-decoration' to coś, co naprawdę może zmienić wygląd tekstu na stronach internetowych. Dzięki niej możemy dodać różne efekty dekoracyjne, jak podkreślenie, przekreślenie, czy nadkreślenie. Zdarzają się też nowinki, jak efekt 'blink', chociaż nie jest on zbyt popularny w profesjonalnym kodzie. Warto pamiętać, że stosowanie tej właściwości poprawia czytelność i estetykę tekstu. Na przykład, gdy chcemy wyróżnić ważne informacje, możemy użyć 'text-decoration: underline;'. Ciekawostka: niektóre efekty, jak 'blink', mogą sprawić problemy z dostępnością, więc lepiej ich unikać. Właściwe użycie 'text-decoration' w połączeniu z odpowiednimi znacznikami HTML, jak <span> lub <a>, może naprawdę poprawić interaktywność naszej strony. Dobrze jest o tym pamiętać, gdy pracujemy nad projektami.

Pytanie 32

Jakie rozwiązanie powinno być wdrożone w organizacji danych, aby przyspieszyć wykonanie zapytań w bazie danych?

A. Wartości domyślne
B. Klucze podstawowe
C. Reguły
D. Indeksy

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Indeksy w bazach danych są kluczowym narzędziem przyspieszającym wykonywanie zapytań, ponieważ pozwalają na szybsze odnajdywanie danych. Indeks działa jak spis treści w książce, umożliwiając systemowi zarządzania bazą danych (DBMS) szybkie zlokalizowanie konkretnych wierszy w tabelach. W praktyce, dodanie indeksu do kolumny, po której często są przeprowadzane wyszukiwania, może znacząco poprawić wydajność zapytań SELECT. Na przykład, jeśli mamy dużą tabelę z danymi o klientach i często wyszukujemy klientów według nazwiska, stworzenie indeksu na kolumnie 'nazwisko' pozwoli na zredukowanie czasu potrzebnego na wyszukiwanie z kilku sekund do milisekund. Warto również wspomnieć o dobrych praktykach związanych z używaniem indeksów, takich jak unikanie nadmiernego indeksowania, które może prowadzić do obniżenia wydajności operacji INSERT, UPDATE czy DELETE, ponieważ każdy z tych procesów musi również aktualizować odpowiednie indeksy. Dlatego kluczowe jest staranne planowanie i zastosowanie indeksów tam, gdzie przynoszą największe korzyści.

Pytanie 33

Które wyrażenie logiczne należy zastosować w języku JavaScript, aby wykonać operacje tylko dla dowolnych liczb ujemnych z przedziału jednostronnie domkniętego <-200, -100)?

A. (liczba >= -200) && (liczba < -100)
B. (liczba -100)
C. (liczba <= -200) && (liczba < -100)
D. (liczba >= -200) || (liczba > -100)

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawne wyrażenie to (liczba >= -200) && (liczba < -100), bo dokładnie odwzorowuje zapis matematyczny przedziału jednostronnie domkniętego <-200, -100). W matematyce nawias kwadratowy oznacza, że granica jest włączona do przedziału, a nawias okrągły – że granica jest wyłączona. Czyli chcemy wszystkie liczby większe lub równe -200, ale jednocześnie mniejsze niż -100. W JavaScript przekłada się to właśnie na dwa porównania połączone operatorem logicznym AND, czyli &&. Warunek liczba >= -200 pilnuje dolnej granicy, a liczba < -100 pilnuje górnej, która jest otwarta. Jeśli którakolwiek z tych części będzie fałszywa, całe wyrażenie zwróci false, co jest dokładnie tym, czego oczekujemy przy opisie takiego przedziału. W praktyce taki zapis pojawia się bardzo często, np. przy walidacji danych wejściowych, filtrowaniu wyników, ustawianiu zakresów sliderów w interfejsie użytkownika albo przy sprawdzaniu warunków w grach (np. pozycja x obiektu ma być w jakimś zakresie). Przykład w JS: if (liczba >= -200 && liczba < -100) { // wykonaj kod tylko dla liczb z tego zakresu } Moim zdaniem warto od razu wyrobić sobie nawyk zapisywania zakresów w postaci dwóch prostych porównań połączonych &&, bo to jest czytelne dla innych programistów i zgodne z powszechną praktyką w branży. W wielu językach (nie tylko JavaScript, ale też C, Java, PHP) taki schemat warunków jest standardem. Trzeba też pamiętać, że w JS nie ma osobnego operatora „przedziału”, więc zawsze rozbijamy to właśnie na takie składowe porównania logiczne.

Pytanie 34

Aby włączyć zewnętrzny skrypt JavaScript o nazwie skrypt.js, konieczne jest umieszczenie w kodzie HTML

A. <link rel="JavaScript" type="js" href="/skrypt.js" />
B. <script src="/skrypt.js"></script>
C. <script> skrypt.js </script>
D. <link rel="script" href="/skrypt.js" />

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to <script src="/skrypt.js"></script>. Wykorzystanie atrybutu src w tagu <script> to standardowa metoda do ładowania zewnętrznych skryptów JavaScript w HTML. Dzięki temu przeglądarka wie, żeby pobrać i uruchomić kod z pliku skrypt.js. To z kolei pozwala na lepszą organizację, bo możemy używać tego samego skryptu w różnych miejscach projektu. No i w praktyce, to przynosi dużo korzyści, jak łatwiejsze utrzymanie czy debugowanie aplikacji. Jak mamy porządnie zorganizowany kod, to strona się szybciej ładuje, a przeglądarka może buforować te skrypty. Na koniec warto dodać, że dobrze osadzone skrypty wpływają też pozytywnie na SEO, bo wyszukiwarki lubią strony, które są zorganizowane i zoptymalizowane. Warto pamiętać, żeby umieszczać tagi <script> na końcu dokumentu HTML, zaraz przed zamknięciem tagu </body>, bo to pozwala na szybsze wyświetlanie zawartości.

Pytanie 35

Używając polecenia BACKUP LOG w MS SQL Server, można

A. wykonać całkowitą kopię zapasową
B. połączyć się z kopią zapasową
C. przeglądać komunikaty wygenerowane w trakcie tworzenia kopii
D. wykonać kopię zapasową dziennika transakcji

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie BACKUP LOG w MS SQL Server jest używane do wykonywania kopii bezpieczeństwa dziennika transakcyjnego bazy danych. Dziennik transakcyjny jest kluczowym komponentem, który rejestruje wszystkie zmiany w bazie danych, co pozwala na ich odtworzenie w przypadku awarii lub błędów. Regularne tworzenie kopii zapasowych dziennika transakcyjnego jest istotne, ponieważ umożliwia przywracanie bazy danych do stanu sprzed określonego zdarzenia. Na przykład, po wykonaniu BACKUP LOG można przywrócić bazę danych do stanu sprzed ostatniej transakcji, co może być bardzo przydatne w sytuacjach awaryjnych, takich jak przypadkowe usunięcie danych. Standardy takie jak RPO (Recovery Point Objective) i RTO (Recovery Time Objective) wskazują na znaczenie systematycznego tworzenia kopii zapasowych dzienników transakcyjnych w strategiach zarządzania danymi. Aby wykonać kopię zapasową dziennika transakcyjnego, używa się składni: BACKUP LOG [nazwa_bazy_danych] TO DISK = 'ścieżka_do_pliku.bak'.

Pytanie 36

Polecenie serwera MySQL postaci

REVOKE DELETE, UPDATE ON pracownicy FROM 'tKowal'@'localhost'
sprawi, że użytkownikowi tKowal zostaną
A. odebrane uprawnienia usuwania i modyfikowania danych w tabeli pracownicy
B. przydzielone uprawnienia do usuwania i aktualizowania danych w tabeli pracownicy
C. odebrane uprawnienia usuwania i dodawania rekordów w tabeli pracownicy
D. przydzielone uprawnienia do wszelkiej zmiany struktury tabeli pracownicy

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie REVOKE w systemie zarządzania bazą danych MySQL jest używane do odebrania przydzielonych wcześniej uprawnień użytkownikowi lub grupie użytkowników. W przypadku instrukcji REVOKE DELETE, UPDATE ON pracownicy FROM 'tKowal'@'localhost', użytkownik 'tKowal' traci prawa do usuwania (DELETE) oraz aktualizowania (UPDATE) danych w tabeli 'pracownicy'. Przykładowo, jeśli wcześniej użytkownik 'tKowal' miał możliwość usuwania rekordów pracowników i modyfikacji ich danych, po wykonaniu tej instrukcji te uprawnienia zostaną odebrane. Ważne jest, aby zrozumieć, że REVOKE nie wpływa na inne uprawnienia, które użytkownik mógł posiadać, a jego działanie jest ograniczone do wymienionych operacji w kontekście konkretnej tabeli. W MySQL istnieje także możliwość przydzielania uprawnień za pomocą komendy GRANT, co stanowi odwrotność do REVOKE. Dokumentacja MySQL szczegółowo opisuje te mechanizmy, a ich właściwe użycie jest istotne dla bezpieczeństwa i administracji bazami danych. Aby lepiej zrozumieć praktyczne zastosowanie tych komend, można zapoznać się z przykładami na oficjalnej stronie MySQL, które ilustrują, jak zarządzać uprawnieniami użytkowników w różnych scenariuszach.

Pytanie 37

Po wykonaniu instrukcji języka JavaScript  x = Math.ceil(2.4); wartość zmiennej x będzie wynosić

A. 3
B. 4
C. 2
D. 8

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W tym przykładzie kluczowe jest zrozumienie, co dokładnie robi funkcja Math.ceil() w JavaScript. Ta funkcja zawsze zaokrągla liczbę w górę do najbliższej liczby całkowitej, i to niezależnie od tego, jak mała jest część ułamkowa. Dla wartości 2.4 najbliższa liczba całkowita „w górę” to 3, więc po wykonaniu instrukcji x = Math.ceil(2.4); zmienna x przyjmie wartość 3. Nie interesuje nas tu klasyczne zaokrąglanie matematyczne do „najbliższej” liczby, tylko zawsze w stronę dodatniej nieskończoności. W standardzie ECMAScript Math.ceil() jest jedną z podstawowych funkcji do pracy z liczbami, obok Math.floor() (zaokrąglenie w dół) i Math.round() (zaokrąglenie do najbliższej liczby całkowitej). Dla porównania: Math.floor(2.4) da 2, Math.round(2.4) też da 2, a tylko Math.ceil(2.4) zwróci 3. W praktyce webowej takie funkcje są często używane np. przy dzieleniu elementów na strony (paginacja), liczeniu ilości stron w wynikach wyszukiwania, obliczaniu liczby wierszy w siatce (grid), czy przy przeliczaniu miejsc w koszyku, kiedy musisz zawsze „doliczyć” pełną jednostkę. Moim zdaniem warto od razu wyrobić sobie nawyk, żeby przy liczbach zmiennoprzecinkowych w JavaScript pamiętać o różnicach między ceil, floor i round, bo to są podstawowe narzędzia przy każdym kalkulatorze, module cenowym, przeliczaniu czasu trwania, dzieleniu zadań na porcje itd. Dobra praktyka jest też taka, żeby zawsze jasno nazywać zmienne, np. totalPages = Math.ceil(itemsCount / itemsPerPage); – od razu widać, że chodzi o zaokrąglenie w górę. Podsumowując: poprawna odpowiedź to 3, bo Math.ceil() zawsze przesuwa wynik do najbliższej większej lub równej liczby całkowitej. Dla 2.4 jest to właśnie 3.

Pytanie 38

Aby przenieść stronę internetową na serwer, można wykorzystać program

A. Bugzilla
B. FileFilla
C. Go!Zilla
D. CloneZilla

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
FileFilla to oprogramowanie, które umożliwia przesyłanie plików na serwer oraz zarządzanie nimi w sposób efektywny i przejrzysty. Jest to klient FTP, co oznacza, że wykorzystuje protokół File Transfer Protocol do komunikacji między komputerem użytkownika a serwerem. Dzięki FileFilla, użytkownik ma możliwość przenoszenia plików z lokalnej maszyny na serwer w sposób zorganizowany, co jest kluczowe przy migracji witryn internetowych. Program obsługuje różne protokoły, takie jak SFTP i FTPS, co zapewnia dodatkowe bezpieczeństwo podczas przesyłania danych. Praktycznym przykładem zastosowania FileFilla może być sytuacja, w której twórca strony internetowej aktualizuje treść na serwerze, przesyłając nowe pliki lub foldery. Zastosowanie tego oprogramowania pozwala nie tylko na szybkie przenoszenie plików, ale także na monitorowanie postępu transferu oraz zarządzanie plikami na serwerze, co czyni go nieocenionym narzędziem dla administratorów stron. Warto również wspomnieć, że FileFilla jest zgodna z wieloma standardami, co sprawia, że jest uniwersalnym rozwiązaniem w świecie technologii webowej.

Pytanie 39

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

A. <img src="rysunek.png" style="width: 25px; height:25px;">
B. <img src="rysunek.png">
C. <img src="rysunek.png" style="width: 50px">
D. <img src="rysunek.png" style="width: 25px; height:50px;">

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
No dobra, ta odpowiedź <img src="rysunek.png" style="width: 50px"> jest w porządku, bo ustawia szerokość grafiki na 50 pikseli. Dzięki temu zachowujemy proporcje oryginalnego rysunku, który ma rozmiar 200x100 pikseli. Jak zmniejszymy szerokość do 50 px, to automatycznie zmniejsza się też wysokość, więc dostajemy miniaturkę 50x25 px. To jest mega istotne, kiedy budujemy responsywne strony, które muszą się dobrze wyświetlać na różnych urządzeniach. Korzystanie z CSS do ogarniania wielkości obrazków to najlepsza praktyka w web devie, bo dzięki temu możemy elastycznie dopasować treści do różnych ekranów. No i nie zapominajmy o dostępności – zasady mówią, że zachowanie proporcji jest ważne, bo źle skompresowane lub rozciągnięte obrazy mogą sprawić problem osobom z ograniczeniami wzrokowymi.

Pytanie 40

W języku JavaScript stworzono zmienną i, która będzie przechowywać wynik dzielenia równy 1, to

A. var i=Number(3/2)
B. var i=parseInt(3/2)
C. var i=parseFloat(3/2)
D. var i=3/2

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wybór 'var i=parseInt(3/2);' jest właściwy, ponieważ funkcja parseInt służy do konwersji wartości liczbowych na liczby całkowite. W tym przypadku, wyrażenie 3/2 zwraca wartość 1.5, a funkcja parseInt zamienia tę wartość na 1, co jest zgodne z oczekiwanym wynikiem. Warto zauważyć, że parseInt zawsze zwraca najbliższą liczbę całkowitą, zaokrąglając w dół, co czyni ją idealnym narzędziem do realizacji tego celu. W JavaScript istnieje wiele sposobów na konwersję wartości liczbowych, a parseInt jest jednym z najczęściej używanych, gdyż pozwala na przetwarzanie tekstów i liczb w zrozumiały sposób. Przykładowo, jeśli mamy stringa '10.5', użycie parseInt('10.5') da wynik 10. Odniesienie do standardów JavaScript w kontekście konwersji typów można znaleźć w dokumentacji ECMAScript, która definiuje zasady działania funkcji konwertujących. Dobrą praktyką jest również zwrócenie uwagi na radzenie sobie z typami danych w JavaScript, aby uniknąć nieporozumień w przyszłości.