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: 7 maja 2026 23:19
  • Data zakończenia: 7 maja 2026 23:21

Egzamin niezdany

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

Jakie wyrażenie logiczne w języku PHP weryfikuje, czy zmienna1 znajduje się w jednostronnie domkniętym przedziale <-5, 10)?

A. $zmienna1 <= -5 && $zmienna1 < 10
B. $zmienna1 <= -5 || $zmienna1 < 10
C. $zmienna1 >= -5 && $zmienna1 < 10
D. $zmienna1 >= -5 || $zmienna1 < 10
Odpowiedź $zmienna1 >= -5 && $zmienna1 < 10 jest poprawna, ponieważ odpowiada definicji jednostronnie domkniętego przedziału, który obejmuje wartość -5 oraz wszystkie wartości większe, ale nie obejmuje wartości 10. Operator && (AND) jest używany do jednoczesnego sprawdzania dwóch warunków: pierwszy warunek ($zmienna1 >= -5) zapewnia, że zmienna jest większa lub równa -5, a drugi warunek ($zmienna1 < 10) sprawdza, czy zmienna jest mniejsza niż 10. W praktyce, taki zapis jest istotny w aplikacjach, gdzie ograniczamy zakres wartości dla zmiennych, na przykład w formularzach walidacji danych wejściowych. Dzięki temu możemy uniknąć błędów, które mogą wystąpić w przypadku niepoprawnych danych. Ponadto, stosowanie operatorów logicznych w PHP jest zgodne z najlepszymi praktykami programowania, jak na przykład dbałość o czytelność kodu oraz jego łatwość w utrzymaniu. Warto także pamiętać o testowaniu skrajnych wartości, aby upewnić się, że nasze warunki działają zgodnie z oczekiwaniami.

Pytanie 2

W języku Javascript obiekt typu array jest używany do przechowywania

A. wielu wartości jedynie tekstowych
B. wielu wartości różnych typów
C. wielu wartości lub metod
D. wielu wartości jedynie liczbowych

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Obiekt typu array w języku JavaScript jest niezwykle potężnym narzędziem, które pozwala na przechowywanie wielu wartości dowolnego typu w jednej zmiennej. W przeciwieństwie do niektórych innych języków programowania, JavaScript pozwala na umieszczanie w tablicach zarówno liczb, jak i stringów, obiektów, a nawet funkcji. Dzięki temu programiści mogą tworzyć złożone struktury danych, które są elastyczne i dopasowane do ich potrzeb. Przykładem praktycznego zastosowania tablicy może być tworzenie listy użytkowników, gdzie każdy element tablicy może być obiektem użytkownika zawierającym różne właściwości, takie jak imię, nazwisko, adres e-mail itd. Dobrymi praktykami przy korzystaniu z tablic w JavaScript są stosowanie metod takich jak map, filter, reduce, które ułatwiają manipulację danymi oraz dbałość o czytelność kodu, co sprzyja jego późniejszej konserwacji. Warto także pamiętać o tym, że tablice są dynamiczne, co oznacza, że można je modyfikować w trakcie działania programu, co daje dodatkową elastyczność.

Pytanie 3

Przy założeniu, że użytkownik nie miał wcześniej żadnych uprawnień, polecenie SQL

GRANT SELECT, INSERT, UPDATE ON klienci TO anna;
nada użytkownikowi anna uprawnienia wyłącznie do
A. wybierania, dodawania kolumn oraz zmiany struktury wszystkich tabel w bazie o nazwie klienci
B. wybierania, wstawiania oraz aktualizacji danych we wszystkich tabelach w bazie o nazwie klienci
C. wybierania, wstawiania oraz aktualizacji danych w tabeli o nazwie klienci
D. wybierania, dodawania kolumn oraz zmiany struktury tabeli o nazwie klienci

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie SQL 'GRANT SELECT, INSERT, UPDATE ON klienci TO anna;' przyznaje użytkownikowi 'anna' konkretne uprawnienia do tabeli 'klienci'. Oznacza to, że użytkownik ten będzie miał możliwość wybierania (SELECT), wstawiania (INSERT) oraz aktualizacji (UPDATE) danych w tej konkretnej tabeli. To podejście jest zgodne z zasadą minimalnych uprawnień, co oznacza, że użytkownik powinien mieć jedynie te prawa, które są niezbędne do wykonywania jego zadań. Na przykład, jeśli 'anna' jest pracownikiem działu sprzedaży, może być konieczne, aby miała dostęp do aktualizacji informacji o klientach, ale nie potrzebuje uprawnień do usuwania rekordów (DELETE) czy zmiany struktury tabeli (ALTER). Praktyczne zastosowanie takiego przydzielania uprawnień pomaga w zabezpieczeniu danych oraz minimalizuje ryzyko nieautoryzowanych zmian, co jest standardem w zarządzaniu bazami danych. Dodatkowo, stosowanie takich restrykcji w przydzielaniu ról jest zgodne z najlepszymi praktykami bezpieczeństwa w branży IT, aby zapobiegać potencjalnym nadużyciom.

Pytanie 4

Jaką kompetencję społeczną możemy przypisać osobie, która potrafi wyrażać swoje zdanie oraz argumentować swoje racje, nie naruszając przy tym granic własnych i innych ludzi?

A. Akomodacja
B. Empatia
C. Asertywność
D. Konformizm

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Asertywność to umiejętność wyrażania swoich myśli, uczuć i przekonań w sposób pewny, ale z szacunkiem dla innych. Osoba asertywna potrafi argumentować swoje racje, nie naruszając przestrzeni emocjonalnej innych ludzi. Na przykład, w sytuacji konfliktu w pracy, osoba asertywna z łatwością przedstawi swoje stanowisko, jednocześnie słuchając argumentów drugiej strony. Asertywność jest kluczowa w budowaniu zdrowych relacji interpersonalnych, ponieważ pozwala na otwartą komunikację i wyrażanie potrzeb bez wywoływania antagonizmu. W praktyce asertywność jest często stosowana w negocjacjach, gdzie ważne jest, aby jasno przedstawiać swoje oczekiwania, ale również być otwartym na propozycje partnera. Standardy komunikacji interpersonalnej podkreślają rolę asertywności jako fundamentu dla efektywnego działania w zespole i rozwiązywania konfliktów. Właściwe stosowanie asertywności przyczynia się do tworzenia środowiska sprzyjającego współpracy i wzajemnemu szacunkowi.

Pytanie 5

W CSS wartości: underline, overline, line-through oraz blink odnoszą się do właściwości

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

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W języku CSS właściwość text-decoration służy do definiowania stylów dekoracji tekstu. Wartości takie jak underline (podkreślenie), overline (nadkreślenie), line-through (przekreślenie) oraz blink (miganie) są częścią tej właściwości i umożliwiają programistom kontrolowanie, jak tekst jest prezentowany na stronie internetowej. Wartość underline, na przykład, jest powszechnie używana w linkach, aby wskazać, że są one klikalne. Przykład zastosowania: 'text-decoration: underline;' zastosowany w stylach CSS dla elementu <a> sprawia, że tekst linku jest podkreślony. Overline może być używane do dodawania linii nad tekstem, co może być przydatne w kontekście nagłówków lub wyróżnień. Wartość line-through jest często stosowana w przypadku prezentowania informacji o promocjach, gdzie oryginalna cena jest przekreślona. Wartość blink, choć nie jest już szeroko wspierana, mogła być używana w przeszłości do tworzenia efektu migania tekstu. Wszystkie te dekoracje są zdefiniowane w standardzie CSS, co czyni text-decoration kluczową właściwością w stylizacji tekstu w dokumentach HTML.

Pytanie 6

W tabeli mieszkancy znajdują się różne dane. Aby przefiltrować jedynie mieszkańców, którzy mają przypisaną dzielnicę = 1, stworzono dla uproszczenia działania wirtualną tabelę (widok) poprzez zastosowanie kwerendy

A. CREATE VIEW mieszkancySrodmiescie AS SELECT * FROM mieszkancy WHERE dzielnica = 1
B. CREATE VIEW mieszkancySrodmiescie AS SELECT * FROM mieszkancy
C. CREATE VIEW mieszkancy FROM mieszkancy WHERE dzielnica = 1
D. CREATE VIEW mieszkancy WHERE dzielnica = 1

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź nr 4 jest na pewno w porządku, bo dobrze definiuje widok w SQL. Filtruje ona dane mieszkańców na podstawie konkretnego warunku. Użycie składni 'CREATE VIEW mieszkancySrodmiescie AS SELECT * FROM mieszkancy WHERE dzielnica = 1;' jest naprawdę zgodne z tym, co powinniśmy robić przy tworzeniu widoków w bazach danych. Widok to w zasadzie zapytanie, które pokazuje dane w specyficzny sposób, a w tym przypadku koncentruje się na mieszkańcach z konkretnej dzielnicy. Moim zdaniem, definiując widoki, warto pamiętać, że prostsze zapytania mogą znacznie poprawić czytelność i ułatwić pracę z kodem. Widoki są naprawdę przydatnym narzędziem do organizacji i segregacji danych, zwłaszcza w dużych systemach, gdzie filtrowanie i agregacja mają duże znaczenie. Na przykład, jeśli chciałbyś zobaczyć mieszkańców tylko z jednej dzielnicy, wystarczy, że użyjesz widoku i napiszesz 'SELECT * FROM mieszkancySrodmiescie'. Dobrze też wiedzieć, że widoki nie tylko filtrują, ale mogą też pomagać w prezentacji bardziej skomplikowanych zestawów danych, co czyni je uniwersalnym narzędziem w analizie i raportowaniu danych.

Pytanie 7

Poniższy fragment kodu w PHP wyświetli

$n = '[email protected]';
$dl = strlen($n);
$i = 0;
while($i < $dl && $n[$i] != '@')
{
    echo $n[$i];
    $i++;
}
A. cały adres e-mail, czyli "[email protected]"
B. nazwa konta z symbolem @, czyli "adres@"
C. samą nazwę domeny, czyli "host.pl"
D. tylko nazwę konta, czyli "adres"

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Powyższy fragment kodu w języku PHP ma za zadanie wyodrębnić i wypisać nazwę konta z adresu e-mail. Kod definiuje ciąg znaków zawierający pełny adres e-mail i używa pętli while do iteracji przez każdy znak tego ciągu aż do napotkania znaku '@'. Pętla while działa, dopóki indeks i jest mniejszy niż długość ciągu $n oraz bieżący znak $n[$i] nie jest '@'. W każdej iteracji echo wypisuje bieżący znak, a zmienna i jest inkrementowana. Dzięki temu kod wypisuje wszystkie znaki przed '@', co w tym przypadku jest nazwą konta 'adres'. Takie podejście jest powszechnie stosowane w podstawowym przetwarzaniu tekstu, gdzie potrzebna jest iteracja przez ciąg znaków. W praktyce, w aplikacjach webowych, takie operacje są często wykonywane na danych wejściowych użytkownika, aby wyodrębnić specyficzne części danych, takie jak nazwa użytkownika z e-maila. Jest to również zgodne z zasadami przetwarzania stringów w PHP, gdzie manipulacja tekstem odbywa się z wykorzystaniem indeksów i pętli.

Pytanie 8

W skrypcie JavaScript, aby uzyskać dane od użytkownika, można wykorzystać okno wyświetlane przez funkcję

A. prompt()
B. alert()
C. confirm()
D. documet.write()

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja prompt() w JavaScript jest specjalnie zaprojektowana do pobierania danych od użytkownika i wyświetlania okna dialogowego, które pozwala wprowadzić tekst. W przeciwieństwie do alert(), który jedynie wyświetla informacje, prompt() umożliwia użytkownikowi wprowadzenie danych, które mogą być później wykorzystane w kodzie. Na przykład, można zainicjować zmienną i przypisać do niej wartość wprowadzaną przez użytkownika: var imie = prompt('Podaj swoje imię:');. Tego rodzaju interakcje są niezwykle ważne w dynamicznych aplikacjach internetowych, gdzie potrzeba elastyczności i użytkownika jako aktywnego uczestnika w procesie. Dobrą praktyką jest zapewnienie, że zapytania są jasne i zrozumiałe, a także, że walidujemy dane wejściowe, aby uniknąć błędów. Warto również mieć na uwadze, że z uwagi na estetykę i funkcjonalność, w nowoczesnym podejściu do interakcji użytkownika, lepszym rozwiązaniem mogą być formularze HTML z JavaScript, które oferują większą kontrolę nad danymi i lepsze możliwości stylizacji."

Pytanie 9

Podane w ramce polecenie SQL nadaje prawo SELECT

GRANT SELECT ON hurtownia.* TO 'sprzedawca'@'localhost';
A. do wszystkich pól w tabeli hurtownia.
B. do wszystkich tabel w bazie hurtownia.
C. dla użytkownika 'root' na serwerze localhost.
D. dla użytkownika 'root' na serwerze sprzedawca.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawnie wychwyciłeś najważniejszy element składni: zapis hurtownia.* po słowie ON oznacza całą bazę danych o nazwie hurtownia, a nie pojedynczą tabelę. W składni GRANT w MySQL i innych systemach bazodanowych mamy kilka poziomów nadawania uprawnień: można nadać uprawnienia do całej bazy (database), do konkretnej tabeli, a nawet do pojedynczych kolumn. Kluczowe jest to, co znajduje się po słowie ON. Jeżeli podamy nazwa_bazy.* – tak jak tutaj – to uprawnienie SELECT dotyczy wszystkich tabel w tej bazie danych. Gdyby chodziło o jedną tabelę, składnia wyglądałaby np. GRANT SELECT ON hurtownia.zamowienia TO 'sprzedawca'@'localhost'; i wtedy prawo dotyczyłoby wyłącznie tabeli zamowienia. W tym poleceniu dodatkowo jasno określony jest użytkownik: 'sprzedawca'@'localhost'. W MySQL użytkownik jest identyfikowany parą nazwa_użytkownika@host, więc nie jest to ani root, ani żaden inny login, tylko konkretny użytkownik o nazwie sprzedawca, który łączy się z serwera localhost. To jest typowy scenariusz np. dla aplikacji sprzedażowej instalowanej na tym samym serwerze co baza. Taki użytkownik często dostaje tylko SELECT do bazy hurtownia, żeby mógł odczytywać dane (np. listę produktów, stany magazynowe, historię zamówień), ale nie miał uprawnień do modyfikacji struktury bazy czy kasowania rekordów. Moim zdaniem jest to bardzo dobra praktyka bezpieczeństwa: tworzy się osobnych użytkowników o wąskim zakresie uprawnień zamiast wszędzie używać konta root. W realnych projektach webowych, np. w PHP czy innych językach backendowych, w pliku konfiguracyjnym aplikacji podaje się właśnie takiego technicznego użytkownika, który ma GRANT SELECT (czasem też INSERT/UPDATE) tylko na jedną, konkretną bazę. Dzięki temu nawet jeśli aplikacja zostanie zhakowana, atakujący ma dużo mniejsze pole do popisu, bo nie dysponuje pełnymi uprawnieniami administracyjnymi. Dobrze też zapamiętać, że GRANT SELECT nie daje prawa do tworzenia nowych tabel ani zmiany struktury – to są osobne uprawnienia (CREATE, ALTER, DROP). Tutaj mówimy wyłącznie o możliwości wykonywania zapytań odczytujących dane ze wszystkich tabel w bazie hurtownia, co w praktyce oznacza, że użytkownik sprzedawca może spokojnie robić SELECT * FROM jakakolwiek_tabela; pod warunkiem, że ta tabela znajduje się właśnie w tej bazie.

Pytanie 10

Fragment kodu w języku HTML zawarty w ramce ilustruje zestawienie

Ilustracja do pytania
A. odnośników.
B. skrótów.
C. wypunktowaną.
D. numerowaną.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kod HTML zawierający znaczniki <ol> oraz <li> tworzy listę numerowaną ponieważ <ol> oznacza ordered list czyli listę uporządkowaną co skutkuje automatycznym numerowaniem każdego elementu w przeglądarkach internetowych. Znaczniki <li> reprezentują pojedyncze elementy listy zapewniając organizację danych w czytelnej formie. Taki sposób przedstawiania informacji jest powszechnie stosowany w tworzeniu dokumentów HTML i stron internetowych gdzie hierarchia i kolejność elementów ma kluczowe znaczenie. Za pomocą CSS można dodatkowo dostosować styl numerowania oraz wizualne aspekty listy co pozwala na większą elastyczność w projektowaniu interfejsu użytkownika. Standardy internetowe takie jak te rekomendowane przez W3C zachęcają do stosowania semantycznych znaczników co poprawia dostępność i SEO strony. Ponadto listy numerowane są użyteczne w sytuacjach gdy wymagana jest jasna kolejność wykonywania zadań lub prezentacja kroków w procesie co czyni je idealnym narzędziem zarówno w dokumentacji technicznej jak i w interaktywnych przewodnikach online.

Pytanie 11

Wskaż poprawne stwierdzenie dotyczące poniższej definicji stylu:

<style>
<!--
P{color:blue; font-size:14pt; font-style:italic}
A{font-size: 16pt ; text-transform:lowercase;}
TD.niebieski {color: blue}
TD.czerwony {color: red}
-->
</style>
A. Odnośnik będzie napisany czcionką 14 punktów
B. Określono dwie kategorie
C. Akapit będzie konwertowany na małe litery
D. To jest styl lokalny

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W tym kawałku kodu CSS mamy dwie klasy: TD.niebieski i TD.czerwony. Klasy w CSS to nic innego jak sposób na nadawanie różnych stylów grupom elementów HTML. Poznajesz je po tym, że mają przed sobą kropkę. Klasa TD.niebieski ustawia kolor tekstu na niebieski, a TD.czerwony na czerwony. Tworzenie klas jest super ważne, gdy robisz strony WWW, bo pozwala ci na stosowanie jednolitych stylów w różnych miejscach. Dzięki temu łatwiej później ogarnąć wygląd strony. Na przykład, w dużych projektach webowych użycie klas sprawia, że wszystko wygląda spójnie, a zmiany kolorów czy innych stylów są proste, bo nie musisz grzebać w każdym elemencie osobno. Fajnie jest też nadawać klasom opisowe nazwy, bo to ułatwia zrozumienie kodu. W sumie, to standard w branży, żeby wszyscy, którzy będą pracować nad kodem, mogli się w nim łatwo odnaleźć.

Pytanie 12

W wyniku działania pętli zapisanej w języku PHP zostanie wypisany ciąg liczb:

 $liczba = 10;
while ($liczba < 50) {
    echo "$liczba ";
    $liczba = $liczba + 5;
}
A. 10 15 20 25 30 35 40 45
B. 0 5 10 15 20 25 30 35 40 45 50
C. 0 5 10 15 20 25 30 35 40 45
D. 10 15 20 25 30 35 40 45 50

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Dobrze zrozumiałeś działanie pętli while w języku PHP. Wybrana przez Ciebie sekwencja liczb (10, 15, 20, 25, 30, 35, 40, 45) jest poprawna. Pętla while, znajdująca się w skrypcie PHP, rozpoczyna działanie od wartości zmiennej, którą określono jako 10 i zwiększa ją o 5 za każdą iteracją, dopóki jej wartość jest mniejsza niż 50. Tak więc, ostatnią wydrukowaną liczbą jest 45, ponieważ w kolejnym kroku wartość zmiennej wynosiłaby już 50, co jest wartością większą od maksymalnej zdefiniowanej w warunku pętli. Zrozumienie działania pętli to klucz do efektywnego programowania, umożliwiającego tworzenie skomplikowanych algorytmów. Dobre praktyki zalecają, aby zawsze dokładnie analizować i rozumieć, jak daną pętle będą interpretowane przez interpreter języka.

Pytanie 13

Podane w ramce polecenie SQL ma za zadanie

UPDATE Uczen SET id_klasy = id_klasy + 1;
A. ustawić wartość pola id_klasy na 1 dla wszystkich rekordów tabeli Uczen
B. ustawić wartość w kolumnie id_klasy na 1 dla wszystkich rekordów tabeli Uczen
C. zwiększyć o jeden wartość pola id_klasy w jednym rekordzie tabeli Uczen
D. zwiększyć o jeden wartość w kolumnie id_klasy dla wszystkich rekordów tabeli Uczen

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie SQL UPDATE Uczen SET id_klasy = id_klasy + 1; modyfikuje wszystkie rekordy w tabeli Uczen, bo nie ma w nim klauzuli WHERE. To jest kluczowa rzecz: brak WHERE oznacza, że polecenie dotyczy całej tabeli, a nie pojedynczego wiersza. Wyrażenie id_klasy = id_klasy + 1 oznacza aktualizację kolumny na podstawie jej dotychczasowej wartości – po prostu dodajemy 1 do obecnej wartości w każdej krotce. Nie ustawiamy stałej wartości, tylko wykonujemy operację arytmetyczną na kolumnie. W praktyce taki zapis stosuje się np. gdy chcemy przesunąć identyfikatory klas, zmienić numerację poziomów, podnieść wszystkim uczniom numer semestru albo zaktualizować jakiś licznik. W SQL to bardzo typowy wzorzec: UPDATE tabela SET kolumna = kolumna + wartość WHERE warunek; i w dobrych praktykach zawsze pilnuje się, żeby świadomie używać lub pomijać WHERE. Administratorzy baz danych zwykle wręcz powtarzają zasadę: przed uruchomieniem UPDATE bez WHERE zastanów się dwa razy, czy na pewno chcesz zmienić wszystkie wiersze. Moim zdaniem warto zapamiętać dwie rzeczy: po pierwsze, UPDATE bez WHERE = aktualizacja wszystkich rekordów; po drugie, po lewej stronie znaku równości zawsze jest nazwa kolumny, którą zmieniamy, a po prawej – wyrażenie, z którego zostanie policzona nowa wartość. To wyrażenie może używać starej wartości tej samej kolumny, tak jak tutaj. W wielu systemach bazodanowych (np. MySQL, PostgreSQL, SQL Server) ta konstrukcja działa identycznie, więc to taki uniwersalny, standardowy zapis, zgodny z ogólnymi zasadami języka SQL.

Pytanie 14

Atrybut, który definiuje lokalizację pliku graficznego w znaczniku <img>, to

A. src
B. href
C. alt
D. link

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Atrybut 'src' (source) w znaczniku <img> jest kluczowy, ponieważ określa lokalizację pliku graficznego, który ma być wyświetlany na stronie internetowej. Bez tego atrybutu przeglądarka nie byłaby w stanie załadować i wyświetlić obrazka, co skutkowałoby pustym miejscem w interfejsie użytkownika. Dobrym przykładem zastosowania atrybutu 'src' jest umieszczanie zdjęć produktów w sklepie internetowym, gdzie obrazek jest kluczowym elementem zachęcającym do zakupu. Na przykład, używając znacznika <img src='ścieżka/do/obrazka.jpg' alt='opis obrazka'>, programiści mogą nie tylko wyświetlić grafikę, ale także dostarczyć opis alternatywny, co jest zgodne z zasadami dostępności w sieci. W praktyce, dobrym zwyczajem jest przechowywanie grafik w odpowiednich katalogach oraz dbanie o optymalizację ich rozmiaru, aby poprawić czas ładowania strony oraz doświadczenia użytkownika. Warto również zwrócić uwagę na poprawne wykorzystanie protokołów, takich jak HTTPS, co zwiększa bezpieczeństwo przesyłanych danych oraz zaufanie użytkowników.

Pytanie 15

W zakresie ochrony serwera bazy danych przed atakami hakerównie wlicza się

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

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Defragmentacja dysków to proces, który ma na celu optymalizację wydajności dysków twardych poprzez reorganizację danych na nośniku. Choć jest to operacja ważna dla poprawy wydajności systemu, nie ma ona bezpośredniego wpływu na bezpieczeństwo serwera bazy danych. W kontekście zabezpieczeń, kluczowymi działaniami są m.in. blokowanie portów związanych z bazą danych, co zapobiega nieautoryzowanemu dostępowi z zewnątrz; włączenie zapory, która filtruje ruch do i z serwera; oraz stosowanie złożonych haseł do bazy, które utrudniają ataki typu brute force. Przykładowo, wiele firm przyjmuje politykę wymuszania zmian haseł co kilka miesięcy oraz minimalnych wymagań dotyczących ich złożoności. Właściwa strategia zabezpieczeń obejmuje także regularne aktualizacje oprogramowania oraz monitorowanie logów serwera w poszukiwaniu nietypowych aktywności. Zastosowanie tych praktyk znacząco podnosi poziom bezpieczeństwa danych przechowywanych w bazie.

Pytanie 16

Jaką cechę wyróżnia format PNG?

A. kompresję bezstratną
B. niedostępność kanału alfa
C. możliwość obsługi animacji
D. możliwość reprezentacji grafiki wektorowej

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Format PNG (Portable Network Graphics) jest znany przede wszystkim z bezstratnej kompresji, co oznacza, że pliki zapisane w tym formacie zachowują pełną jakość oryginalnych obrazów, niezależnie od ich rozmiaru. Bezstratna kompresja w PNG polega na tym, że dane obrazów są redukowane w sposób, który nie prowadzi do utraty jakichkolwiek informacji, co czyni go idealnym wyborem dla grafik wymagających wysokiej jakości, takich jak logo, ilustracje czy zdjęcia z przezroczystością. Przy zapisywaniu obrazu w formacie PNG, algorytm kompresji analizuje dane pikseli i stosuje różne techniki, takie jak kodowanie LZ77 i filtracja, aby zmniejszyć rozmiar pliku bez degradacji jakości. Dzięki temu, użytkownicy mogą swobodnie edytować i ponownie zapisywać obrazy PNG bez obaw o pogorszenie jakości. Format ten obsługuje również kanał alfa, co pozwala na uzyskiwanie przezroczystości w obrazach, co jest niezwykle istotne w projektowaniu graficznym i web designie. PNG stał się standardem w branży, potwierdzonym przez organizację W3C oraz powszechnie używany w Internecie, zwłaszcza w kontekście grafiki na stronach internetowych.

Pytanie 17

Aby zmienić wartość atrybutu elementu opisanego w CSS przy użyciu skryptu JavaScript, należy zastosować następujący zapis

A. document.getElementById(id).innerHTML = <nowa wartość>
B. document.getElementById(id).<nazwa właściwości> = <nowa wartość>
C. document.getElementById(id).style.<nazwa właściwości> = <nowa wartość>
D. document.getElementById(id).<nazwa-atrybutu> = <nowa wartość>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź "document.getElementById(id).style.<nazwa właściwości> = <nowa wartość>;" jest poprawna, ponieważ umożliwia bezpośrednią modyfikację stylu CSS elementu HTML o określonym identyfikatorze. Przy użyciu metody getElementById() uzyskujemy dostęp do konkretnego elementu w DOM (Document Object Model), a następnie poprzez właściwość style, możemy zmieniać różne atrybuty CSS. Na przykład, aby zmienić kolor tła elementu, możemy napisać: document.getElementById('myElement').style.backgroundColor = 'red';. Wartością, którą przypisujemy, jest odpowiednia właściwość CSS, co czyni ten sposób zgodnym z dobrymi praktykami w programowaniu JavaScript. Dodatkowo, korzystając z tej metody, możemy dynamicznie dostosowywać styl elementów na stronie w odpowiedzi na interakcje użytkownika, co jest kluczowe w nowoczesnych aplikacjach webowych. Warto też zauważyć, że zmiany dokonane w ten sposób są natychmiast widoczne na stronie, co przyczynia się do lepszego doświadczenia użytkownika.

Pytanie 18

W skrypcie JavaScript użyto metody DOM getElementsByClassName('akapit'). Ta metoda odniesie się do akapitu

A. <p href="/akapit">akapit3</p>
B. <p>akapit</p>
C. <p id="akapit">akapit2</p>
D. <p class="akapit">akapit4</p>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Metoda DOM getElementsByClassName jest jedną z najważniejszych funkcji w JavaScript, która pozwala na selekcję elementów na stronie internetowej na podstawie ich klas CSS. W tym przypadku, odpowiedź <p class="akapit">akapit4</p> jest poprawna, ponieważ element ten ma przypisaną klasę "akapit", co czyni go bezpośrednim kandydatem do selekcji przez metodę getElementsByClassName('akapit'). Metoda ta zwraca kolekcję elementów (HTMLCollection), które mają podaną klasę, a następnie można z nimi pracować w kodzie JavaScript. Na przykład, możemy zmieniać ich style, zawartość lub dodawać zdarzenia. Dobrą praktyką jest stosowanie klas do stylizacji oraz manipulacji DOM, co pozwala na lepszą organizację kodu i zwiększa jego czytelność. Pamiętaj, że klasy są bardziej uniwersalne i elastyczne niż identyfikatory (ID), które powinny być unikalne na stronie. W przypadku konieczności stosowania metod do manipulacji elementami DOM, warto znać również inne metody, takie jak querySelector i querySelectorAll, które oferują bardziej zaawansowane opcje selekcji, umożliwiające wykorzystanie kombinacji klas, identyfikatorów i innych atrybutów.

Pytanie 19

Grafik pragnie przekształcić obraz JPG na format PNG bez utraty jakości, tak aby wszędzie tam, gdzie w oryginalnym obrazie występuje kolor biały, w docelowej wersji była przezroczystość. W tym celu powinien

A. przekształcić obraz w odcienie szarości
B. zaimportować obraz do edytora grafiki wektorowej
C. dodać kanał alfa
D. obniżyć rozdzielczość obrazu

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Dodanie kanału alfa do obrazu jest kluczowym krokiem, aby przekształcić JPEG w PNG z zachowaniem przezroczystości. Format PNG obsługuje kanał alfa, który może przechowywać informacje o przezroczystości każdego piksela, co oznacza, że można zdefiniować, które części obrazu są w pełni widoczne, a które są całkowicie przezroczyste. W praktyce, po dodaniu kanału alfa, można użyć narzędzi edycyjnych, aby ustawić białe obszary na przezroczyste. Na przykład w programie GIMP lub Adobe Photoshop, można użyć narzędzia 'Magiczne różdżka' do zaznaczenia białego tła, a następnie usunąć je, co zamieni białe piksele na przezroczystość. Istotne jest, aby pamiętać, że JPEG nie wspiera przezroczystości, dlatego przekształcenie do formatu PNG jest niezbędne. Dobrą praktyką jest zawsze pracować na kopii oryginalnego obrazu, aby móc wrócić do źródłowego pliku, jeśli zajdzie taka potrzeba.

Pytanie 20

Jaki jest cel wykorzystania znacznika <i> w języku HTML?

A. określenia nagłówka w treści
B. zmiany kroju pisma na pochylony
C. określenia formularza
D. wstawienia obrazka

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Znacznik <i> w języku HTML jest używany do oznaczania tekstu, który powinien być wyświetlany w kroju pisma pochyłym. Takie użycie jest zgodne ze standardami HTML, gdzie <i> zwykle wskazuje na tekst, który ma być wyróżniony w kontekście stylistycznym, na przykład w przypadku tytułów książek, nazw gatunków czy terminów technicznych. Z perspektywy semantycznej, HTML5 wprowadza większą elastyczność w definiowaniu znaczenia tekstu, co czyni <i> bardziej konwencjonalnym narzędziem niż w poprzednich wersjach. Warto zaznaczyć, że dla lepszej dostępności i SEO, często zaleca się użycie znacznika <em>, który nie tylko zmienia styl, ale także podkreśla znaczenie tekstu. Przykład zastosowania <i>: <i>„Wojna i pokój”</i> to książka autorstwa Lwa Tołstoja. Z perspektywy użytkowników i wyszukiwarek, ważne jest, aby znać różnice między tymi znacznikami, co pozwala na efektywniejsze tworzenie treści internetowych.

Pytanie 21

Jeżeli rozmiar pliku graficznego jest zbyt duży do publikacji w sieci, co należy zrobić?

A. dodać kanał alfa
B. zapisać w formacie BMP
C. zwiększyć jego głębię kolorów
D. zmniejszyć jego rozdzielczość

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zmniejszenie rozdzielczości pliku graficznego jest jedną z najskuteczniejszych metod na zmniejszenie jego rozmiaru, co jest niezwykle ważne w kontekście publikacji w Internecie. Rozdzielczość obrazu odnosi się do liczby pikseli, które składają się na dany obraz, wyrażoną zazwyczaj w pikselach na cal (PPI) lub w całkowitej liczbie pikseli w szerokości i wysokości. Zmniejszając rozdzielczość, obniżamy liczbę pikseli, co w efekcie prowadzi do mniejszego rozmiaru pliku. Na przykład, obraz o rozdzielczości 4000x3000 pikseli ma 12 milionów pikseli, podczas gdy obraz o rozdzielczości 2000x1500 pikseli zaledwie 3 miliony pikseli. Oprócz zmniejszenia rozdzielczości, można również zastosować inne techniki kompresji, takie jak zmiana formatu pliku na JPEG, który jest bardziej efektywny w kompresji zdjęć, a także wykorzystanie narzędzi do optymalizacji grafiki, takich jak TinyPNG czy ImageOptim. Zmniejszając rozdzielczość, należy jednak pamiętać o zachowaniu odpowiedniej jakości obrazu, aby nie wpłynęło to negatywnie na jego czytelność i estetykę, co jest kluczowe w kontekście publikacji online.

Pytanie 22

Użycie standardu ISO-8859-2 ma na celu zapewnienie prawidłowego wyświetlania

A. polskich znaków, takich jak: ś, ć, ń, ó, ą
B. symboli matematycznych
C. specjalnych znaków dla języka kodowania strony
D. znaków zarezerwowanych dla języka opisu strony

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kodowanie w standardzie ISO-8859-2, zwane również Latin-2, zostało zaprojektowane, aby wspierać wyświetlanie znaków z alfabetów używanych w Europie Środkowo-Wschodniej. Jest to szczególnie istotne w kontekście języka polskiego, który wymaga specyficznych znaków diakrytycznych, takich jak ś, ć, ń, ó oraz ą. Standard ten obejmuje 256 znaków, z czego pierwsze 128 jest zgodne z ASCII, natomiast pozostałe 128 to znaki specyficzne dla danego języka. Dzięki temu, w aplikacjach internetowych oraz w systemach operacyjnych, możliwe jest poprawne wyświetlanie tekstów w języku polskim, co wpływa na jakość komunikacji i użyteczność treści. Przykładowo, w dokumentach HTML, użycie deklaracji charset='ISO-8859-2' zapewnia, że przeglądarki internetowe prawidłowo interpretują znaki, co jest kluczowe dla zachowania czytelności i poprawności tekstu. Zgodność z tym standardem jest także istotna w kontekście wymiany danych między różnymi systemami, aby uniknąć problemów związanych z kodowaniem i dekodowaniem tekstu.

Pytanie 23

Co można powiedzieć o stylu hiperłącza na podstawie opisu CSS, zakładając, że żadne inne style nie zostały zdefiniowane?

a:link {
  color: green;
  text-decoration: none;
}

a:hover {
  color: red;
  text-decoration: underline;
}
A. Gdy hiperłącze jest nieodwiedzone, jego tekst jest koloru niebieskiego z podkreśleniem.
B. Tekst odwiedzonego hiperłącza jest koloru czerwonego.
C. Hiperłącze jest zawsze podkreślone.
D. Gdy kursor znajdzie się na obszarze hiperłącza, pojawia się podkreślenie i tekst przyjmuje kolor czerwony.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Twoja odpowiedź jest poprawna. W przypadku hiperłącza, w momencie, gdy kursor znajduje się na obszarze hiperłącza, pojawia się podkreślenie i tekst przyjmuje kolor czerwony. Jest to efekt zastosowania stylu CSS w stanie 'hover'. Styl ten umożliwia dynamiczną zmianę wyglądu elementu, kiedy kursor myszy znajduje się nad nim. Jest to praktyka powszechnie stosowana w celu zwiększenia użyteczności i interaktywności stron internetowych. Dobrą praktyką jest również zapewnienie kontrastu między kolorem tła a tekstem dla lepszej czytelności. W tym przypadku, kolor tekstu zmienia się na czerwony, co zapewnia wyraźny kontrast i zwraca uwagę użytkownika. Równocześnie dodanie podkreślenia jest dodatkowym wizualnym wskaźnikiem, że dany element jest hiperłączem. Zastosowanie takiego stylu pozwala na intuicyjne i efektywne poruszanie się po stronie internetowej.

Pytanie 24

Którą czynność gwarantującą poprawne wykonanie przedstawionego kodu Java Script, należy wykonać przed pętlą?

var text;
for ( var i = 0; i < tab.length; i++ ) {
  text += tab[i] + "<br>";
}
A. Zainicjować zmienną text.
B. Sprawdzić czy text j est typu znakowego.
C. Sprawdzić rozmiar tabeli tab.
D. Zadeklarować zmienną i.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Dobrze! Prawidłową odpowiedzią jest 'Zainicjować zmienną text'. W języku JavaScript, przed rozpoczęciem pętli, istotne jest zainicjowanie zmiennej, która będzie używana do akumulacji wyników. Zmienna 'text' w tym przypadku spełnia tę rolę. Jej prawidłowe zainicjowanie, czyli przypisanie jej początkowej wartości, zazwyczaj pustego ciągu znaków ('text = "";'), jest kluczowe dla poprawnej pracy kodu. Pozwala to na uniknięcie błędów związanych z niezdefiniowaną zmienną. Jest to standardowa procedura stosowana w wielu językach programowania, nie tylko w JavaScript. Zrozumienie i zastosowanie tej praktyki pomaga w pisaniu czystego i efektywnego kodu.

Pytanie 25

Tabela faktury w bazie danych zawiera pola: numer, data, id_klienta, wartość oraz status. Każdego dnia tworzony jest raport dotyczący faktur z dnia bieżącego. Zawiera on jedynie numery oraz wartości faktur. Która z poniższych kwerend SQL pozwoli na wygenerowanie tego raportu?

A. SELECT numer, wartość FROM faktury;
B. SELECT * FROM faktury WHERE data=CURRENT_DATE();
C. SELECT * FROM faktury;
D. SELECT numer, wartosc FROM faktury WHERE data=CURRENT_DATE();

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Aby wygenerować raport faktur z bieżącego dnia, kluczowe jest zastosowanie odpowiednich filtrów oraz wybranie tylko tych pól, które są istotne w kontekście raportu. Kwerenda SQL, która prawidłowo odpowiada na postawiony problem, to 'SELECT numer, wartosc FROM faktury WHERE data=CURRENT_DATE();'. Dzięki temu zapytaniu, system wyciąga z bazy danych jedynie numery i wartości faktur, które zostały wystawione w dniu dzisiejszym. Użycie funkcji CURRENT_DATE() pozwala na dynamiczne filtrowanie danych według aktualnej daty, co jest niezbędne do stworzenia codziennego raportu. W praktyce, taka kwerenda może być używana w aplikacjach do zarządzania finansami, gdzie użytkownicy chcą szybko uzyskać podsumowanie transakcji z danego dnia. Standardy SQL wymagają precyzyjnego określenia, które kolumny mają być wyświetlane, a także jakiego rodzaju dane mają być filtrowane. W związku z tym, zastosowanie warunku WHERE jest kluczowe, aby ograniczyć wyniki do faktur z dzisiaj, co zwiększa efektywność analizy danych.

Pytanie 26

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

A. należy zdefiniować relację l..n pomiędzy tabelami ksiazki a autorzy, a następnie stworzyć kwerendę łączącą obie tabele
B. konieczne jest stworzenie kwerendy, która wyszukuje tytuły książek
C. należy zdefiniować relację 1..1 pomiędzy tabelami ksiazki a autorzy, a następnie stworzyć kwerendę łączącą obie tabele
D. trzeba utworzyć dwie oddzielne kwerendy: pierwsza do wyszukiwania tytułów książek, druga do wyszukiwania nazwisk autorów

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Relacja l..n między tabelami 'ksiazki' i 'autorzy' jest naprawdę ważna. To oznacza, że jeden autor może napisać kilka książek, co jest całkiem normalne w świecie księgarni. Dzięki tej relacji, dla każdego 'idAutor' w tabeli 'ksiazki' możemy mieć wiele wpisów, co super ułatwia powiązanie tytułów z autorami. Jakbyś stworzył kwerendę, która łączy te obie tabele, to bez problemu uzyskasz dane, które jasno pokazują te relacje. Na przykład, taka kwerenda SQL mogłaby wyglądać tak: SELECT ksiazki.tytul, autorzy.nazwisko FROM ksiazki JOIN autorzy ON ksiazki.idAutor = autorzy.id; Taki sposób działania jest zgodny z normalizacją danych, co sprawia, że nasze bazy danych będą efektywne i dobrze zorganizowane.

Pytanie 27

Aby przywrócić uszkodzoną tabelę w MySQL, jakie polecenie należy wykonać?

A. FIX TABLE
B. REPAIR TABLE
C. RESOLVE TABLE
D. CHECK TABLE

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Aby naprawić uszkodzoną tabelę w MySQL, należy użyć polecenia REPAIR TABLE, które jest dedykowane do przywracania integralności i usuwania problemów z danymi w tabelach MyISAM. Kiedy tabela jest uszkodzona, na przykład wskutek awarii systemu lub błędów dysku, REPAIR TABLE analizuje strukturę tabeli i podejmuje się jej naprawy. Proces ten może przywrócić usunięte wiersze oraz naprawić inne ograniczenia. Przykładowe użycie polecenia to: REPAIR TABLE nazwa_tabeli; Warto zaznaczyć, że REPAIR TABLE nie działa na tabelach InnoDB, które wymagają innych procedur naprawczych. W przypadku MyISAM, to polecenie jest często pierwszą metodą diagnostyczną, gdy pojawiają się problemy z danymi. Zgodnie z dokumentacją MySQL, REPAIR TABLE jest jednym z podstawowych narzędzi do zarządzania integralnością danych, a jego prawidłowe użycie może uratować istotne dane przed ich całkowitą utratą. Z tego powodu znajomość tego polecenia jest kluczowa dla administratorów baz danych.

Pytanie 28

W języku CSS zapis selektora

p > i { color: red; }
wskazuje, że kolorem czerwonym będzie sformatowany
A. wszystki tekst w znaczniku <p> lub wszelkie treści w znaczniku <i>
B. tylko ten tekst w znaczniku <p>, który ma przypisaną klasę o nazwie i
C. jedynie ten tekst w znaczniku <i>, który znajduje się bezpośrednio wewnątrz znacznika <p>
D. wszystkie teksty w znaczniku <p> oprócz tych w znaczniku <i>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zapis selektora CSS p > i mówi, że styl ma być zastosowany tylko do elementów <i>, które są bezpośrednimi dziećmi znacznika <p>. W praktyce oznacza to tyle, że jeśli w <p> mamy <i>, to tylko ten <i> weźmie czerwony kolor. To jest w porządku, bo w CSS style mogą się dziedziczyć, ale można je też dokładnie określić z użyciem selektorów. Znak '>' wskazuje na relację rodzic-dziecko, co jest istotne, gdy patrzymy na strukturę dokumentu HTML. Na przykład, w kodzie: <p>To jest <i>przykład</i> tekstu.</p>, słowo „przykład” będzie czerwone. Dodatkowo, korzystanie z takich selektorów to dobra praktyka, bo ogranicza wpływ stylów tylko do konkretnego kontekstu, co bardzo ułatwia zrozumienie kodu. Tego typu selektory pomagają unikać niechcianych efektów, które mogą się zdarzyć przy bardziej ogólnych zasadach CSS, a także poprawiają wydajność przeglądarki przy stylizacji.

Pytanie 29

Czym jest relacja w bazach danych?

A. logicznym powiązaniem tabel
B. połączeniem dwóch pól jednej tabeli
C. algebraicznym powiązaniem tabel
D. kluczem podstawowym w relacji tabel

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Relacje w bazach danych to coś w rodzaju logicznego połączenia tabel. Dzięki nim możemy łączyć dane z różnych miejsc w sposób, który pozwala na bardziej zaawansowane zapytania. Na przykład, w bazie danych do zarządzania zamówieniami, mamy tabelę 'Klienci' i tabelę 'Zamówienia'. I wiesz co? Relacja między nimi często opiera się na identyfikatorze klienta, który działa jak klucz główny w 'Klienci', a jednocześnie jest kluczem obcym w 'Zamówienia'. To ułatwia życie, bo w ten sposób szybko możemy znaleźć wszystkie zamówienia danego klienta. W praktyce, tworzenie relacyjnych baz danych wiąże się też z takimi zasadami jak normalizacja, która pomaga unikać powtarzania danych i dba o ich integralność. Więc tak, zrozumienie relacji w bazach danych to podstawa, jeśli chcemy tworzyć fajne i działające systemy.

Pytanie 30

Jakiego znacznika używamy do definiowania list w HTML?

A. <th>
B. <ul>
C. <tr>
D. <td>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
<ul> to znacznik w języku HTML, który definiuje nienumerowaną listę, co czyni go kluczowym elementem do strukturyzacji zawartości w dokumentach. Użycie <ul> pozwala na grupowanie powiązanych elementów, co zwiększa czytelność i dostępność treści. Zgodnie z zasadami semantycznego HTML, stosowanie list poprawia organizację informacji i ułatwia ich przetwarzanie przez maszyny, w tym wyszukiwarki internetowe. Przykład zastosowania: w sekcji strony internetowej przedstawiającej cechy produktu możemy użyć <ul> do wypisania jego zalet. Dobrym zwyczajem jest także dodawanie odpowiednich znaczników <li> dla poszczególnych elementów listy. Przykład: <ul><li>Zaleta 1</li><li>Zaleta 2</li></ul>. Dzięki temu tworzony jest bardziej przejrzysty i strukturalny układ treści, co przekłada się na lepsze doświadczenia użytkownika oraz spełnia standardy W3C dotyczące semantyki HTML.

Pytanie 31

Efekt przedstawiony w filmie powinien być zdefiniowany w selektorze

A. tr:active { background-color: Pink; }
B. tr { background-color: Pink; }
C. tr:hover { background-color: Pink; }
D. td, th { background-color: Pink; }

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawny selektor to tr:hover { background-color: Pink; }, bo dokładnie opisuje sytuację pokazaną na filmie: efekt pojawia się dopiero po najechaniu kursorem na cały wiersz tabeli. Pseudo-klasa :hover w CSS służy właśnie do definiowania stylów w momencie, gdy użytkownik „najeżdża” myszką na dany element. Jeśli więc chcemy, żeby podświetlał się cały rząd tabeli, logiczne i zgodne z dobrymi praktykami jest przypięcie efektu do znacznika tr, a nie do pojedynczych komórek. W praktyce taki zapis stosuje się bardzo często w interfejsach webowych: w panelach administracyjnych, listach zamówień, tabelach z uczniami, produktami, logami systemowymi itd. Dzięki temu użytkownik łatwiej śledzi, który wiersz właśnie ogląda. To niby detal, ale z punktu widzenia UX robi sporą różnicę. Z mojego doświadczenia to jeden z tych prostych trików CSS, które od razu poprawiają „odczuwalną” jakość strony. Ważne jest też to, że :hover jest częścią standardu CSS (opisane m.in. w specyfikacji CSS Selectors Level 3/4) i działa w praktycznie wszystkich współczesnych przeglądarkach. Nie trzeba do tego żadnego JavaScriptu, żadnych skomplikowanych skryptów – czysty CSS. Dobrą praktyką jest również używanie bardziej stonowanych kolorów niż Pink w prawdziwych projektach, np. #f5f5f5 albo lekki odcień niebieskiego, tak żeby kontrast był czytelny i nie męczył wzroku. Warto też pamiętać, że podobny mechanizm możesz zastosować na innych elementach: np. a:hover dla linków, button:hover dla przycisków czy nawet div:hover dla całych kafelków w layoutach. Kluczowe jest to, żeby pseudo-klasa :hover była przypięta dokładnie do tego elementu, który ma reagować na interakcję użytkownika.

Pytanie 32

Które z poniższych stwierdzeń dotyczących klucza głównego jest poprawne?

A. W tabeli z danymi osobowymi może to być pole z nazwiskiem
B. Składa się wyłącznie z jednego pola
C. Może przyjmować tylko wartości numeryczne
D. Jest unikalny w obrębie tabeli

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Klucz podstawowy to atrybut lub zestaw atrybutów, który jednoznacznie identyfikuje każdy rekord w tabeli bazy danych. Najważniejszym wymogiem jest, aby klucz podstawowy był unikalny dla każdego wiersza, co oznacza, że nie może być powtórzony w obrębie tej samej tabeli. Przykładem może być numer identyfikacyjny (np. PESEL, NIP) przypisany do konkretnej osoby, który gwarantuje, że każda osoba w tabeli danych osobowych jest jednoznacznie identyfikowalna. Stosowanie kluczy podstawowych jest zgodne z zasadami normalizacji baz danych, co pozwala na minimalizację redundancji danych oraz poprawę integralności danych. Klucz podstawowy może składać się z jednego lub więcej pól, co daje elastyczność w projektowaniu bazy danych, aby pasowała do specyficznych potrzeb aplikacji. Dobre praktyki wskazują, że klucz podstawowy powinien być stabilny, czyli nie zmieniać się w czasie, oraz prosty do zaimplementowania i używania w zapytaniach SQL.

Pytanie 33

Po wykonaniu fragmentu kodu HTML i JavaScript na stronie będzie wyświetlony obraz z pliku

<img id="obraz" src="kol1.jpg">
<button id="przycisk">Przycisk</button>

<script>
    document.getElementById("obraz").src = "kol2.jpg";
</script>
A. kol1.jpg, który może być zmieniony na kol2.jpg po wciśnięciu przycisku.
B. kol2.jpg
C. kol2.jpg, który może być zmieniony na kol1.jpg po wciśnięciu przycisku.
D. kol1.jpg

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Dobra robota, zgadłeś! W tym skrypcie JavaScript używamy metody getElementById, żeby znaleźć obraz na stronie o identyfikatorze 'obraz'. Później zmieniamy jego atrybut 'src' na 'kol2.jpg'. To znaczy, że po uruchomieniu tego kodu wyświetli się właśnie ten obrazek. Fajnie jest to zrozumieć, bo pokazuje, jak można dynamicznie zmieniać rzeczy na stronie za pomocą JavaScript. Takie umiejętności są super ważne, gdy tworzymy interaktywne strony, które reagują na to, co robi użytkownik. Na przykład, można by zmienić obraz, gdy ktoś najedzie na niego myszką albo kliknie przycisk. Pamiętaj też, żeby zawsze pomyśleć o dostępności – jeśli obraz ma jakieś ważne informacje, warto dodać alternatywne opisy dla osób korzystających z czytników ekranu.

Pytanie 34

W tabeli samochody w bazie danych, pole kolor może przyjmować jedynie wartości zdefiniowane w słowniku lakier. Jaką kwerendę należy wykorzystać, aby ustanowić relację między tabelami samochody a lakier?

A. ALTER TABLE samochody ADD FOREIGN KEY (kolor) REFERENCES lakier(lakierId);
B. ALTER TABLE samochody ADD FOREIGN KEY barwa REFERENCES samochody.lakier;
C. ALTER TABLE samochody ADD FOREIGN KEY kolor REFERENCES lakier;
D. ALTER TABLE samochody ADD FOREIGN KEY (barwa) REFERENCES samochody(kolor);

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Aby połączyć tabele 'samochody' i 'lakier' za pomocą klucza obcego, należy zastosować kwerendę ALTER TABLE samochody ADD FOREIGN KEY (kolor) REFERENCES lakier(lakierId);. W tym przypadku 'kolor' w tabeli 'samochody' odnosi się do identyfikatora 'lakierId' w tabeli 'lakier', co zapewnia integralność referencyjną między tymi dwoma tabelami. Klucz obcy jest mechanizmem, który pozwala na zapewnienie, że wartości w kolumnie 'kolor' w tabeli 'samochody' muszą odpowiadać wartościom w kolumnie 'lakierId' w tabeli 'lakier', co zapobiega wprowadzeniu danych, które nie mają odpowiednika w tabeli 'lakier'. Przykładowo, jeżeli próbujemy dodać samochód w kolorze, który nie istnieje w tabeli 'lakier', system nie pozwoli na to działanie. Taka struktura bazy danych jest zgodna z zasadami normalizacji, która ma na celu eliminację redundancji danych oraz zwiększenie ich spójności. Stosowanie kluczy obcych jest standardem w projektowaniu relacyjnych baz danych, ponieważ ułatwia zarządzanie danymi oraz ich integralność.

Pytanie 35

Pole insert_id zdefiniowane w bibliotece MySQLi języka PHP może być wykorzystane do

A. uzyskania id ostatnio dodanego wiersza
B. otrzymania kodu błędu, gdy wstawienie wiersza się nie powiodło
C. uzyskania pierwszego dostępnego indeksu bazy, tak, aby można było pod nim wstawić nowe dane
D. pobrania najwyższego indeksu bazy, aby po jego zwiększeniu wstawić pod niego dane

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Pole insert_id w bibliotece MySQLi języka PHP jest niezwykle przydatne w kontekście zarządzania danymi w bazach danych. Głównym celem tego pola jest umożliwienie programistom uzyskania identyfikatora (ID) ostatnio wstawionego wiersza do bazy danych. Ta funkcjonalność jest kluczowa, gdyż wiele aplikacji wymaga odniesienia do nowo dodanych rekordów, szczególnie w sytuacjach, gdy w tabelach stosowane są klucze główne typu AUTO_INCREMENT. Przykładowo, po dodaniu rekordu do tabeli użytkowników, programista może użyć funkcji mysqli_insert_id(), aby pobrać ID tego rekordu i wykorzystać je do dalszych operacji, takich jak dodawanie powiązanych danych w innej tabeli. Tego typu mechanizmy są zgodne z najlepszymi praktykami w zakresie zarządzania danymi, zapewniając spójność i bezpieczeństwo operacji na bazach danych. Warto także pamiętać, że poprawne zarządzanie ID pozwala uniknąć problemów z duplikacją i zapewnia, że aplikacja może dynamicznie dopasowywać swoje czynności do aktualnych danych.

Pytanie 36

W języku SQL, aby usunąć wszystkie rekordy z tabeli, nie eliminując jej samej, można skorzystać z polecenia

A. UPDATE
B. ALTER
C. TRUNCATE
D. DROP

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie TRUNCATE w języku SQL jest używane do usunięcia wszystkich danych z tabeli w sposób szybki i efektywny, bez potrzeby usuwania samej tabeli. TRUNCATE działa na poziomie struktury bazy danych, co oznacza, że nie zapisuje informacji o usuniętych rekordach w dzienniku transakcji, co czyni operację znacznie szybszą w porównaniu do innych metod, takich jak DELETE. W praktyce, gdy chcesz zresetować tabelę do stanu pustego, TRUNCATE jest najlepszym wyborem. Przykładem zastosowania może być sytuacja, gdy tabela tymczasowa zawiera dane, które nie są już potrzebne po zakończeniu procesu przetwarzania. W takim przypadku użycie polecenia TRUNCATE pozwala na szybkie usunięcie wszystkich rekordów, a sama struktura tabeli pozostaje nienaruszona do przyszłego użycia. Dobrą praktyką jest również stosowanie TRUNCATE w sytuacjach, gdzie nie potrzebujemy zachować historii operacji na danych, co zwiększa wydajność bazy danych. Zgodnie z zaleceniami standardów SQL, TRUNCATE jest bardziej odpowiednie do operacji na dużych zbiorach danych, gdyż minimalizuje czas operacji i obciążenie systemu.

Pytanie 37

Jakie działanie wykonuje poniższy fragment kodu w języku JavaScript? n = "Napis1"; s = n.length;

A. Zwraca długość napisu zawartego w zmiennej n
B. Przypisuje wartość zmiennej n do zmiennej s
C. Przypisuje do zmiennej s wartość odpowiadającą długości napisu z zmiennej n
D. Przypisuje do zmiennej s część napisu z zmiennej n, o długości określonej przez zmienną length

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Fragment skryptu w języku JavaScript, w którym zmienne n i s są definiowane, wykonuje przypisanie wartości długości napisu z zmiennej n do zmiennej s. Metoda length jest właściwością obiektów typu string, która zwraca liczbę znaków w danym napisie. W tym przypadku, jeśli zmienna n zawiera napis "Napis1", to zmienna s po wykonaniu tego skryptu przyjmie wartość 6, ponieważ napis ten składa się z 6 znaków. Praktyczne zastosowanie tej funkcji polega na możliwości dynamicznego określenia długości wprowadzanych danych, co jest kluczowe przy walidacji formularzy, obliczaniu rozmiaru danych czy tworzeniu interfejsów użytkownika. Dobrą praktyką w programowaniu jest zawsze uwzględnienie długości napisu w algorytmach przetwarzania tekstu, aby uniknąć błędów podczas operacji na stringach. Warto również wiedzieć, że w JavaScript właściwość length nie wymaga wywołania metody, co jest zgodne z ogólnym założeniem o uproszczeniu użycia obiektów, a tym samym podnosi czytelność kodu.

Pytanie 38

Aby wyszukać w tabeli Pracownicy tylko te nazwiska, które kończą się na literę "i", można zastosować kwerendę SQL

A. SELECT nazwisko FROM Pracownicy WHERE nazwisko LIKE "%i%"
B. SELECT nazwisko FROM Pracownicy WHERE nazwisko LIKE "i"
C. SELECT nazwisko FROM Pracownicy WHERE nazwisko LIKE "i%"
D. SELECT nazwisko FROM Pracownicy WHERE nazwisko LIKE "%i"

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Fajnie, że wybrałeś tę kwerendę SQL: 'SELECT nazwisko FROM Pracownicy WHERE nazwisko LIKE "%i";'. To jest naprawdę dobra robota, bo zastosowałeś operator LIKE w odpowiedni sposób. Wzorzec '%i' pozwala na wyszukiwanie nazwisk kończących się na literę 'i'. Ten symbol '%' to taki wildcard, który mówi SQL, żeby szukał czegokolwiek przed 'i', nawet niczego. To jest mega przydatne w codziennej pracy z bazami danych, bo często musimy wyciągać konkretne dane, żeby coś załatwić. Na przykład, jeśli chcemy stworzyć listę pracowników, którzy mają nazwiska kończące się na 'i', to ta kwerenda będzie strzałem w dziesiątkę. Pamiętaj, że dobrze jest testować swoje kwerendy na próbnych danych, żeby mieć pewność, że wyniki są takie, jakie chcemy.

Pytanie 39

W HTML formularzu użyto elementu <input>. Pole, które się pojawi, ma pozwalać na wprowadzenie maksymalnie

<input type="password" size="30" maxlength="20">
A. 30 znaków, które będą widoczne podczas wpisywania
B. 20 znaków, które nie będą widoczne w polu tekstowym
C. 30 znaków, które nie będą widoczne w polu tekstowym
D. 20 znaków, które będą widoczne w trakcie wprowadzania

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Znacznik <input type="password"> w HTML jest rzeczywiście super ważny. Umożliwia on użytkownikom wpisywanie haseł, a to, co najfajniejsze, to że znaki są ukryte, więc nikt nie zobaczy, co piszesz. Atrybut maxlength="20" jest tutaj pomocny, bo ogranicza liczbę znaków do 20, co jest praktyczne - zbyt długie hasła ciężko zapamiętać, a krótkie mogą być niebezpieczne. Natomiast size="30" to tylko kwestia szerokości pola, więc nie wpływa na ilość znaków, które można wpisać. Generalnie, dobrze jest trzymać się tych ograniczeń, bo to pomaga w projektowaniu formularzy i utrzymywaniu porządku w interfejsie. Z mojej perspektywy, znajomość tych atrybutów jest naprawdę przydatna przy tworzeniu stron, bo można lepiej zrozumieć, jak to wszystko działa.

Pytanie 40

Jaki jest cel zapisu w języku JavaScript?

var napis1 = new napisy();
A. stworzenie obiektu napis1 z klasy napisy
B. wykonanie metody obiektu napisy
C. założenie nowej klasy napis1
D. zainicjowanie zmiennej napis1 oraz wywołanie funkcji, której argumentem jest napis1

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowa odpowiedź dotyczy utworzenia obiektu napis1 klasy napisy. W języku JavaScript, aby stworzyć nowy obiekt na podstawie istniejącej klasy lub funkcji konstruktora, używamy słowa kluczowego new. Wyrażenie var napis1 = new napisy() inicjalizuje nowy obiekt napis1, który jest instancją klasy napisy. Taki zapis jest kluczowy w programowaniu obiektowym, które pozwala na tworzenie wielu instancji obiektów z podobnymi właściwościami i metodami. Praktyczne zastosowanie tego podejścia jest szerokie od modelowania danych po tworzenie modularnych i łatwych do zarządzania aplikacji. Dobra praktyka nakazuje, aby klasy były dobrze zdefiniowane z jasno określonymi właściwościami i metodami, co ułatwia ich ponowne wykorzystanie i rozszerzanie. W programowaniu funkcjonalnym JavaScript często wykorzystuje się prototypowe dziedziczenie, które pozwala na zmniejszenie liczby powtarzalnych kodów oraz efektywne zarządzanie pamięcią. Warto także pamiętać, że w nowoczesnych wersjach JavaScript stosowane są klasy ES6, które wprowadzają bardziej zrozumiałą składnię dla tworzenia klas i obiektów co poprawia czytelność i strukturę kodu.