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 czerwca 2026 13:46
  • Data zakończenia: 8 czerwca 2026 14:21

Egzamin zdany!

Wynik: 24/40 punktów (60,0%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Co oznacza dodanie kanału alfa podczas obróbki grafiki rastrowej?

A. wprowadzenie warstwy z przezroczystością
B. zwiększenie głębi ostrości
C. ustalenie balansu bieli
D. wyostrzenie krawędzi obrazu
Dodanie kanału alfa oznacza wprowadzenie dodatkowej warstwy informacji o PRZEZROCZYSTOŚCI pikseli - dzięki niej fragmenty obrazu mogą być przezroczyste lub półprzezroczyste. Dlatego to wprowadzenie warstwy z przezroczystością.

Pytanie 2

Aby ustawić marginesy wewnętrzne elementu: górny 50px, prawy 20px, dolny 40px, lewy 30px, należy użyć deklaracji CSS:

A.
padding: 20px 40px 30px 50px;
B.
padding: 50px 20px 40px 30px;
C.
padding: 50px 40px 20px 30px;
D.
padding: 30px 20px 40px 50px;
Pozostałe zapisy mają wartości w złej kolejności. Skrót padding czyta cztery liczby jako górę, prawo, dół i lewo - po kolei, zgodnie z ruchem wskazówek zegara. Wariant padding: 50px 40px 20px 30px; zamienia miejscami prawy (powinno 20) z dolnym (powinno 40). Pozostałe zaczynają od innej wartości niż wymagane 50px dla góry, więc również nie odwzorują zadanych marginesów. Poprawny zapis to padding: 50px 20px 40px 30px; (góra-prawo-dół-lewo), dlatego ta odpowiedź jest właściwa.

Pytanie 3

Zamieszczony kod HTML formularza zostanie wyświetlony przez przeglądarkę w sposób:

<form>
stanowisko: <input type="text"> <br>
obowiązki: <br>
<input type="checkbox" name="obowiazki1" value="1" disabled checked> sporządzanie dokumentacji<br>
<input type="checkbox" name="obowiazki2" value="2" checked>pisanie kodu<br>
<input type="checkbox" name="obowiazki3" value="3">testy oprogramowania<br>
</form>
Ilustracja do pytania
A. C
B. B
C. A
D. D
Odpowiedzi, które są określone jako niepoprawne, zawierają pewne zniekształcenia w interpretacji struktury formularza HTML. Kluczowym błędem jest nieuznanie faktu, że checkbox z atrybutem 'disabled' ma wpływ tylko na możliwość interakcji użytkownika z tym elementem, a nie na jego wyświetlanie. W rzeczywistości checkboxy, nawet jeśli są zablokowane, są nadal renderowane w DOM oraz ich etykiety są widoczne dla użytkownika. W każdej z niepoprawnych odpowiedzi brak jest również pełnej jasności dotyczącej zastosowania atrybutów i ich wpływu na interakcję z formularzem. Błędne jest przyjmowanie, że atrybuty takie jak 'checked' i 'disabled' w sposób zasadniczy zmieniają wyświetlaną treść, gdy w rzeczywistości wpływają one jedynie na zachowanie elementów formularza. Aby zrozumieć, jak formularze są renderowane w HTML, ważne jest zwrócenie uwagi na każdy atrybut i jego znaczenie. W kontekście budowania interfejsów użytkownika, zasady dostępności i użyteczności podkreślają znaczenie pełnej przejrzystości opcji, co pozwala uniknąć nieporozumień. Typowym błędem myślowym jest również utożsamianie interakcji użytkownika z prezentacją wizualną, co prowadzi do błędnych wniosków o tym, co jest wyświetlane. W przypadku formularzy ważne jest przemyślenie, jak użytkownik interpretuje i wchodzi w interakcję z elementami na stronie, a także jak te elementy są prezentowane wizualnie, aby zapewnić pełne zrozumienie dostępnych opcji.

Pytanie 4

Które narzędzie do zarządzania bazą danych jest wbudowane w pakiet XAMPP?

A. pgAdmin
B. MySQL Workbench
C. SQLite
D. phpMyAdmin
Pakiet XAMPP (Apache, MySQL/MariaDB, PHP) zawiera wbudowane narzędzie phpMyAdmin do zarządzania bazą przez przeglądarkę - tworzenia baz, tabel i uruchamiania zapytań. Dlatego w XAMPP znajdziesz phpMyAdmin.

Pytanie 5

W kodzie HTML 5, w celu walidacji wartości pola <input type="text"> za pomocą wyrażenia regularnego, należy użyć atrybutu

A. value
B. step
C. readonly
D. pattern
W tym pytaniu chodzi o konkretny mechanizm walidacji wbudowany w HTML5, a nie o ogólne właściwości pól formularza. Walidacja za pomocą wyrażeń regularnych jest w standardzie przypisana do jednego, ściśle określonego atrybutu – właśnie pattern. Inne atrybuty z listy pełnią zupełnie inne role i ich mylenie to dość typowy błąd przy nauce formularzy.

Atrybut step jest używany do określania „kroku” dla wartości liczbowych lub dat, np. w input type="number" czy type="date". Pozwala zdefiniować, o ile ma się zwiększać lub zmniejszać wartość przy użyciu strzałek lub walidować, czy liczba jest wielokrotnością danego kroku. Przykład: step="0.5" przy liczbie zmiennoprzecinkowej. Nie ma on żadnego związku z wyrażeniami regularnymi ani ze zwykłym tekstem w type="text".

value z kolei to po prostu wartość pola – początkowa (domyślna) lub aktualna, odczytywana i modyfikowana przez JavaScript lub wysyłana w formularzu. Ustawienie value nie waliduje danych, tylko je definiuje. Można wprawdzie ręcznie sprawdzać value w JS i dopasowywać je do regexa, ale to już logika skryptu, a nie działanie samego atrybutu w HTML. To pewnie częsty skrót myślowy: „wartość pola” vs. „sprawdzenie wartości pola”, ale przeglądarka sama z siebie nie waliduje na podstawie samego value.

readonly natomiast blokuje możliwość edycji pola przez użytkownika, ale nadal wysyła jego wartość z formularzem. To przydatne, gdy chcemy coś pokazać, ale nie pozwolić na zmianę, np. wygenerowany identyfikator. Nie ma tu żadnej analizy treści, żadnego dopasowywania do wzorca – po prostu pole jest nieedytowalne. Czasem ktoś myśli: „skoro nie można tego zmienić, to jakby jest bezpieczne i zwalidowane”, ale to już bardziej kwestia logiki aplikacji, a nie mechanizmu walidacji.

Mechanizm HTML5 do regexów jest jeden: pattern. Warto go łączyć z innymi atrybutami walidacyjnymi, jak required, minlength, maxlength, type, ale to właśnie pattern odpowiada za dopasowanie tekstu do określonego wzorca. Wszystko inne z tej listy pełni pomocnicze lub zupełnie inne funkcje i nie zastępuje typowej walidacji opartej o wyrażenia regularne.

Pytanie 6

W wyniku wykonania przedstawionego poniżej kodu JavaScript zmienna x ma wartość:

<script>
    var x = 10;
    x++;
    console.log(x);
</script>
A. 11 i zostanie wypisana w konsoli przeglądarki internetowej.
B. 10 i zostanie wypisana w dokumencie HTML.
C. 10 i zostanie wypisana w głównym oknie przeglądarki internetowej.
D. 11 i zostanie wypisana w oknie pop-up.
Kod w ramce to prosty przykład operacji na zmiennej i użycia konsoli w JavaScript:

<script>
var x = 10;
x++;
console.log(x);
</script>

Najpierw deklarowana jest zmienna `x` z użyciem słowa kluczowego `var` i przypisana jest do niej wartość 10. Następnie operator `x++` to tzw. inkrementacja postfiksowa – zwiększa wartość zmiennej `x` o 1. Po wykonaniu tej instrukcji `x` nie jest już równe 10, tylko 11. Ostatnia linia `console.log(x);` wypisuje aktualną wartość zmiennej do konsoli deweloperskiej przeglądarki, a nie do okna strony czy do popupu.

Z mojego doświadczenia w pracy z JavaScript, `console.log()` to podstawowe narzędzie debugowania. W praktyce, gdy testujesz np. działanie pętli, obsługę formularzy, komunikację AJAX czy manipulację DOM, bardzo często wypisujesz dane właśnie do konsoli, żeby nie zaśmiecać interfejsu użytkownika. To jest zgodne z dobrymi praktykami front-endu: logi techniczne trafiają do konsoli, a nie do użytkownika końcowego.

Warto też zauważyć różnicę między `x++` i `++x`. W tym konkretnym kodzie nie ma znaczenia, bo wartość jest tylko zwiększana i potem logowana, ale w wyrażeniach z przypisaniem kolejność ma już znaczenie. Operator `++` jest typowym elementem składni wielu języków (C, C++, Java, JavaScript), więc dobrze go rozumieć. W nowoczesnym kodzie częściej używa się `let` lub `const` zamiast `var`, ale mechanizm inkrementacji i logowania do konsoli pozostaje taki sam. Podsumowując: po inkrementacji `x` ma wartość 11 i ta wartość jest wyświetlana w konsoli przeglądarki przez `console.log()` – dokładnie tak, jak wskazuje poprawna odpowiedź.

Pytanie 7

Podaj dwa sposoby ochrony bazy danych Microsoft Access?

A. Ustalenie zabezpieczeń na poziomie użytkownika i sesji
B. Ustalenie hasła do otwarcia bazy danych oraz zabezpieczeń na poziomie użytkownika
C. Zaszyfrowanie pliku bazy danych oraz wiadomości SMS z kodem autoryzacyjnym
D. Funkcje anonimowe oraz ustawienie hasła do bazy danych
W analizie pozostałych odpowiedzi można zauważyć, że wiele z nich nie odnosi się do skutecznych metod ochrony bazy danych Microsoft Access. Na przykład, funkcje anonimowe nie są standardową metodą zabezpieczania baz danych. Anonimizacja danych może być stosowana w kontekście ochrony prywatności, ale nie zapobiega dostępowi do samej bazy danych. Ponadto, ustalenie hasła otwarcia bazy danych bez dodatkowych zabezpieczeń nie zapewnia pełnej ochrony, ponieważ łatwe do odgadnięcia hasła mogą być szybko złamane przez atakujących. W kontekście zabezpieczeń SMS z kodem autoryzującym, warto zauważyć, że ta metoda w zasadzie nie jest stosowana w Microsoft Access. Chociaż SMS-y z kodami mogą być skuteczne w autoryzacji na poziomie aplikacji lub systemów webowych, Access nie obsługuje takiej funkcji. Wprowadzenie takich środków może być mylące i nie prowadzi do rzeczywistego zabezpieczenia bazy danych. Podobnie, ustalenie zabezpieczeń na poziomie sesji, mimo że jest ważne w niektórych systemach, nie znajduje zastosowania w Access, który nie obsługuje bardziej zaawansowanych metod autoryzacji sesji, jak to ma miejsce w systemach zarządzania bazami danych wysokiego poziomu, takich jak SQL Server. W skrócie, brak znajomości funkcji i ograniczeń Microsoft Access prowadzi do zaproponowania nieefektywnych metod zabezpieczeń.

Pytanie 8

Etap, w którym identyfikuje się oraz eliminuje błędy w kodzie źródłowym programów, to

A. debugowanie
B. standaryzacja
C. kompilowanie
D. normalizacja
Debugowanie to proces identyfikacji, analizy i eliminacji błędów w kodzie źródłowym programów komputerowych. Jest to kluczowy etap w cyklu życia oprogramowania, który zapewnia, że aplikacje działają zgodnie z założeniami projektowymi. W praktyce debugowanie może obejmować różne techniki, takie jak stosowanie punktów przerwania, śledzenie wartości zmiennych czy analiza stosu wywołań. Przykładowo, programista może użyć narzędzi debugujących, takich jak GDB dla programów w C/C++ lub wbudowane debugery w IDE, takie jak Visual Studio czy Eclipse. Debugowanie jest również związane z dobrymi praktykami, jak testowanie jednostkowe i integracyjne, które pozwalają na wczesne wykrycie błędów. Zrozumienie i umiejętność efektywnego debugowania jest niezbędna dla każdego programisty, aby tworzyć wysokiej jakości, niezawodne i wydajne oprogramowanie. Warto również podkreślić znaczenie dokumentacji oraz korzystania z systemów kontroli wersji, takich jak Git, które pozwalają śledzić zmiany w kodzie i ułatwiają proces debugowania.

Pytanie 9

Czego NIE da się zrobić w języku PHP?

A. obsłużyć danych z formularzy
B. wykonać operacji na danych w bazie
C. wygenerować dynamiczną treść strony
D. dynamicznie zmienić treść strony HTML już w przeglądarce
Pozostałe rzeczy PHP wykonuje BEZ problemu, więc nie pasują do pytania „czego NIE da się”. Obsługa danych z formularzy ($_POST, $_GET), operacje na bazie danych i generowanie dynamicznej treści strony to typowe, codzienne zadania PHP. Poza jego zasięgiem jest tylko zmiana już wyświetlonej strony w przeglądarce - to robi JavaScript.

Pytanie 10

Jak wykonanie zapytania SQL przedstawionego poniżej wpłynie na tabelę pracownicy?

ALTER TABLE pracownicy MODIFY plec char(9);
A. Zmieni typ danych kolumny plec na znakowy o zmiennej długości 9.
B. Utworzy kolumnę plec o typie znakowym o stałej długości 9.
C. Zmieni typ danych kolumny plec na znakowy o stałej długości 9.
D. Utworzy kolumnę plec o typie znakowym o zmiennej długości 9.
Odpowiedź jest poprawna, ponieważ polecenie ALTER TABLE zmienia istniejącą kolumnę w tabeli pracownicy. W szczególności, polecenie MODIFY plec char(9) modyfikuje typ danych kolumny plec na znakowy o stałej długości 9. Oznacza to, że każda wartość przechowywana w tej kolumnie będzie miała dokładnie 9 znaków (wypełnionych np. spacjami, jeśli wartość będzie krótsza). W praktyce zapewnia to jednolitą długość dla przechowywanych danych, co może być korzystne w przypadku, gdy wymagane jest zachowanie spójności długości, na przykład przy przechowywaniu kodów pocztowych lub identyfikatorów. Standardy projektowania baz danych zalecają używanie odpowiednich typów danych, aby zminimalizować przestrzeń dyskową oraz przyspieszyć operacje na danych. Warto zauważyć, że w przypadku kolumny char(9) nie można wprowadzić wartości dłuższej niż 9 znaków, co zapobiega niezgodnościom danych.

Pytanie 11

W kodzie HTML stworzono link do strony internetowej. Aby otworzyć tę stronę w nowym oknie lub zakładce przeglądarki, należy dodać do definicji linku atrybut

<a href="http://google.com" >strona Google</a>
A. target = "_parent"
B. rel = "next"
C. rel = "external"
D. target = "_blank"
Atrybut target w języku HTML służy do określenia, w jaki sposób ma otworzyć się dokument, do którego prowadzi odnośnik. Użycie wartości '_blank' dla atrybutu target jest standardowym sposobem na otwarcie nowej strony w nowym oknie lub zakładce przeglądarki. Przykład zastosowania to: <a href="http://google.com" target="_blank">strona Google</a>. Jest to niezwykle przydatne w kontekście UX, ponieważ pozwala użytkownikom na łatwe porównanie informacji bez utraty dostępu do oryginalnej strony. Warto również zauważyć, że użycie tego atrybutu jest zgodne z najlepszymi praktykami w tworzeniu stron internetowych, gdyż umożliwia użytkownikom zachowanie kontekstu przeglądania. W HTML5 atrybut target pozostaje wspierany, co czyni go istotnym elementem w projektowaniu interfejsów użytkownika. Oprócz '_blank' istnieją inne wartości, takie jak '_self', '_parent' i '_top', które również spełniają różne funkcje w zależności od potrzeb nawigacyjnych w aplikacji webowej.

Pytanie 12

Co zwraca funkcja mysqli_query() po pomyślnym wykonaniu zapytania SELECT?

A. zbiór wynikowy (rekordy do odczytania)
B. zawsze wartość true
C. liczbę usuniętych wierszy
D. nazwę odpytywanej tabeli
Pozostałe odpowiedzi błędnie opisują wartość zwracaną dla SELECT. Liczba wierszy nie jest tym, co zwraca sama funkcja - ilość rekordów odczytuje się osobno (np. mysqli_num_rows() z wyniku). Wartość true zwracana jest dla zapytań, które nie oddają danych, takich jak INSERT czy UPDATE, a nie dla pobierającego dane SELECT. Nazwy tabeli funkcja nie zwraca w ogóle. Po udanym SELECT mysqli_query() oddaje zbiór wynikowy z rekordami, dlatego to ta odpowiedź jest poprawna.

Pytanie 13

Z tabeli należy wybrać imiona osób, które spełniają kryterium, że drugą literą jest 'e', a słowo ma co najmniej 5 znaków (pięć lub więcej znaków). W tym celu w klauzuli WHERE można użyć wyrażenia

A. imie LIKE '_e___' (po literze e trzy podkreślniki)
B. imie LIKE '_e___%' (po literze e trzy podkreślniki)
C. imie LIKE '%e%'
D. imie LIKE '_e_%'
W analizie pozostałych odpowiedzi można zauważyć, że każda z nich zawiera błędne założenia dotyczące interpretacji wyrażenia LIKE w kontekście zadanych warunków. Pierwsza z odpowiedzi, używająca 'LIKE '%e%', jest niewłaściwa, gdyż poszukuje imion, w których 'e' występuje gdziekolwiek w ciągu, co nie spełnia wymogu, by 'e' było drugą literą. Takie podejście prowadzi do zbyt szerokiego zbioru wyników, nie spełniając zdefiniowanego kryterium. Kolejna odpowiedź, 'LIKE '_e_%', jest również niepoprawna, ponieważ nie określa minimalnej długości imienia, co może skutkować zwróceniem imion krótszych niż pięć znaków, takich jak 'Bea' czy 'Leo'. Trzecia odpowiedź, 'LIKE '_e___', zawiera pewne pozytywne aspekty, jednak nie uwzględnia możliwości, że po trzecim podkreślniku mogą występować dodatkowe znaki, co ogranicza jej użyteczność. Typowym błędem myślowym prowadzącym do takich niepoprawnych wniosków jest pomieszanie koncepcji długości i pozycji znaków w ciągu. Właściwe zrozumienie mechanizmu pracy z wyrażeniami regularnymi w SQL jest kluczowe, aby móc właściwie formułować zapytania, które będą efektywnie przeszukiwać dane i zwracać tylko potrzebne rezultaty. Dobrym rozwiązaniem jest zawsze dokładne przemyślenie, jakie warunki powinny zostać spełnione, zanim przystąpimy do pisania zapytania, co pozwoli uniknąć niepotrzebnych błędów.

Pytanie 14

Która z funkcji SQL nie wymaga podania argumentów?

A.
UPPER()
B.
LEN()
C.
YEAR()
D.
NOW()
Pozostałe funkcje potrzebują argumentu. LEN() (w MySQL LENGTH()) wymaga tekstu, by zwrócić jego długość. YEAR() przyjmuje datę i wyciąga z niej rok - bez podania daty nie ma na czym działać. UPPER() potrzebuje napisu, który zamieni na wielkie litery. Wszystkie one operują na przekazanej wartości, podczas gdy NOW() po prostu zwraca aktualny czas bez żadnych danych wejściowych, dlatego to ona jest poprawna.

Pytanie 15

Jak w PHP usunąć ciasteczko o nazwie ciastko?

A.
unsetcookie("$ciastko");
B.
setcookie("$ciastko", "", 0);
C.
setcookie("ciastko", "", time()-3600);
D.
deletecookie("ciastko");
Ciasteczka nie usuwa się osobną funkcją - ustawia się je tą samą setcookie(), ale z czasem wygaśnięcia w PRZESZŁOŚCI, np. setcookie("ciastko", "", time()-3600);. Przeglądarka, widząc datę minioną, kasuje cookie. Dlatego ten zapis jest poprawny.

Pytanie 16

Znacznik <ins> w HTML ma na celu wskazanie

A. tekstu, który został przerobiony
B. tekstu, który został usunięty
C. tekstu, który został dodany
D. bloku tekstu, który jest cytowany
Znacznik <ins> w HTML jest używany do oznaczania tekstu, który został dodany w kontekście edytowania treści. Zgodnie ze standardem HTML5, element <ins> reprezentuje wprowadzenie nowego tekstu, co jest szczególnie przydatne w kontekście śledzenia zmian w dokumentach. Używając <ins>, możemy nie tylko oznaczyć dodany tekst, ale także dostarczyć kontekstu dla jego wprowadzenia, na przykład poprzez dodanie atrybutu datetime, który wskazuje, kiedy zmiana została wprowadzona. Praktyczne zastosowanie tego znacznika można zauważyć w edytorach treści, gdzie użytkownicy mogą wprowadzać poprawki, a powstałe zmiany są wizualizowane. Dzięki temu osoby przeglądające dokument mogą łatwo zauważyć, co zostało dodane. Warto również wspomnieć, że w połączeniu z odpowiednim stylem CSS, zmiany te mogą być wyróżnione w sposób, który zwiększa czytelność tekstu. Standardy W3C zalecają stosowanie znaczników semantycznych, takich jak <ins>, aby poprawić dostępność oraz zrozumiałość treści.

Pytanie 17

W instrukcjach mających na celu odtwarzanie dźwięku jako muzyki tła na stronie internetowej NIE stosuje się atrybutu

A. loop="10"
B. balance="-10"
C. href="C:/100.wav"
D. volume="-100"
Atrybuty volume, loop i balance są używane w kontekście odtwarzania dźwięku, co może prowadzić do nieporozumień dotyczących ich zastosowania. Atrybut volume, choć nie jest standardowo stosowany w HTML5, odnosi się do głośności dźwięku i powinien być regulowany w sposób programowy za pomocą JavaScript, a nie jako część atrybutów tagu audio. Implementacja głośności powinna być realizowana poprzez metody JavaScript, takie jak audioElement.volume, co daje większą kontrolę nad odtwarzanym dźwiękiem. Z kolei atrybut loop jest używany do wskazania, że dźwięk powinien być odtwarzany w pętli, co jest zgodne z oczekiwaniami użytkowników, którzy chcą, aby muzyka grała w tle bez przerwy. Balance, podobnie jak volume, nie jest standardowym atrybutem HTML i w praktyce nie jest obsługiwany przez przeglądarki. Użytkownicy mogą mylnie zakładać, że te atrybuty są bezpośrednio dostępne w HTML, podczas gdy w rzeczywistości wymagają one wsparcia z poziomu skryptów. Dlatego kluczowe jest zrozumienie, że konstruując interaktywne aplikacje webowe, należy opierać się na aktualnych specyfikacjach, aby uniknąć typowych pułapek związanych z niepoprawnym użyciem atrybutów.

Pytanie 18

Jakie są określenia typowych komend języka SQL, które dotyczą przeprowadzania operacji na danych SQL DML (np.: dodawanie danych do bazy, usuwanie, modyfikowanie danych)?

A. SELECT, SELECT INTO
B. ALTER, CREATE, DROP
C. DENY, GRANT, REVOKE
D. DELETE, INSERT, UPDATE
Odpowiedź DELETE, INSERT, UPDATE jest prawidłowa, ponieważ te polecenia stanowią podstawowe instrukcje języka SQL DML (Data Manipulation Language), które są wykorzystywane do manipulacji danymi w bazie danych. DELETE służy do usuwania rekordów z tabel, co jest niezbędne w sytuacjach, gdy dane są już nieaktualne lub niepotrzebne. INSERT umożliwia dodawanie nowych rekordów, co jest kluczowe w procesie wprowadzania danych, na przykład dodawania nowych klientów do bazy danych. Z kolei UPDATE pozwala na modyfikację już istniejących danych, co jest istotne w przypadku zmiany informacji, takich jak aktualizacja adresu klienta. W praktyce te operacje są niezwykle ważne dla utrzymania spójności i aktualności danych w systemach zarządzania bazami danych. Warto również zauważyć, że stosowanie tych poleceń zgodnie z dobrymi praktykami, takimi jak transakcje, pozwala na zabezpieczenie integralności danych oraz umożliwia łatwe wycofywanie zmian w przypadku błędów.

Pytanie 19

Jakie imiona spełniają warunki klauzuli LIKE w podanym zapytaniu?

SELECT imie FROM mieszkancy WHERE imie LIKE '_r%';
A. Arleta, Krzysztof, Krystyna, Tristan
B. Krzysztof, Krystyna, Romuald
C. Gerald, Jarosław, Marek, Tamara
D. Rafał, Rebeka, Renata, Roksana
No, więc ta odpowiedź jest totalnie na miejscu, bo klauzula LIKE w SQL służy do szukania ciągów, które pasują do jakiegoś wzoru. W tym przypadku wzór '_r%' mówi nam, że przed literą 'r' musi być dokładnie jeden dowolny znak, a po 'r' może być cokolwiek. Jak spojrzymy na imiona, które wybrałeś, 'Arleta' i 'Krzysztof' mają 'r' na drugiej pozycji, a 'Krystyna' i 'Tristan' na trzeciej. Czyli wszystko się zgadza. W ogóle, klauzula LIKE jest super przydatna w wyszukiwaniu danych, na przykład w aplikacjach, gdy chcemy znaleźć kogoś po imieniu czy nazwisku. A ten symbol '%' to genialny sposób na dopasowywanie, bo pozwala na różne kombinacje. Fajna sprawa, nie?

Pytanie 20

Przykład zapytania SQL przedstawia instrukcję:

UPDATE katalog SET katalog.cena = [cena]*1.1;
A. dołączającej
B. aktualizującej
C. usuwającej
D. krzyżowej
Instrukcja SQL przedstawiona w pytaniu używa słowa kluczowego UPDATE co jest charakterystyczne dla kwerend aktualizujących. Komenda ta modyfikuje istniejące dane w tabeli poprawiając je zgodnie z podanymi kryteriami. W tym przykładzie wszystkie wartości w kolumnie cena tabeli katalog są zwiększane o 10 procent co jest typowym zastosowaniem instrukcji aktualizującej. W praktyce takie zmiany są niezbędne w przypadku modyfikacji cen produktów lub aktualizacji informacji biznesowych. Stosowanie kwerend aktualizujących wymaga zachowania szczególnej ostrożności aby nie naruszyć integralności danych. Dobre praktyki obejmują przygotowanie backupu danych przed wykonaniem operacji oraz przetestowanie kwerendy na mniejszym zbiorze danych w celu uniknięcia błędów. Aktualizacja danych to jedna z najczęstszych operacji w systemach bazodanowych dlatego zrozumienie mechanizmu działania kwerend SQL tego typu jest kluczowe dla efektywnego zarządzania danymi w każdej organizacji. SQL jako język deklaratywny umożliwia łatwe definiowanie co chcemy osiągnąć bez konieczności szczegółowego opisywania jak to zrobić co ułatwia pracę z dużymi i złożonymi zbiorami danych.

Pytanie 21

Tablice superglobalne $_COOKIE oraz $_SESSION należą do języka:

A. PHP
B. Perl
C. JavaScript
D. C#
Tablice superglobalne $_COOKIE i $_SESSION to elementy języka PHP - dają dostęp odpowiednio do ciasteczek i danych sesji. Znak $ przed nazwą to charakterystyczny dla PHP zapis zmiennej. Dlatego należą do PHP.

Pytanie 22

Którego polecenia JavaScript należy użyć, aby w oknie przeglądarki wyświetliło się okno przedstawione na obrazie?

Ilustracja do pytania
A. alert(’Ile masz lat?’)
B. document.write(’Ile masz lat?’)
C. confirm(’Ile masz lat?’)
D. prompt(’Ile masz lat?’)
Prawidłowo – żeby wyświetlić w przeglądarce okno z polem tekstowym do wpisania odpowiedzi, trzeba użyć funkcji prompt(). W JavaScript wywołanie prompt('Ile masz lat?') powoduje pokazanie natywnego okna dialogowego z komunikatem oraz jednym polem input typu tekstowego. Funkcja zwraca to, co użytkownik wpisze, jako łańcuch znaków (string), albo null, jeśli kliknie „Anuluj”. Dzięki temu od razu możesz przypisać wynik do zmiennej, np.: const wiek = prompt('Ile masz lat?'); i dalej go przetwarzać w skrypcie, np. konwertować na liczbę: const wiekNum = Number(wiek); albo parseInt(wiek, 10). Z mojego doświadczenia prompt() jest często używany w prostych przykładach dydaktycznych, do szybkiego testowania logiki programu, np. pytanie o imię, wiek, hasło dostępu w wersji „demo”. W realnych aplikacjach produkcyjnych raczej unika się prompt(), bo jest mało elastyczny, trudno go ostylować i blokuje interfejs (jest modalny i synchroniczny). Standardem branżowym jest budowanie własnych okien dialogowych w HTML/CSS/JS, np. z użyciem <dialog>, frameworków UI albo bibliotek typu modal. Jednak do nauki podstaw JavaScript, zrozumienia przepływu danych między użytkownikiem a skryptem i pokazania prostych interakcji prompt() jest bardzo wygodny. Warto też pamiętać, że prompt zawsze zwraca tekst, więc jeśli dalej chcesz wykonywać obliczenia, to zgodnie z dobrymi praktykami najpierw jawnie rzutuj go na typ liczbowy i sprawdź, czy użytkownik nie wpisał bzdury (isNaN, walidacja zakresu itp.).

Pytanie 23

W posiadanej tabeli zwanej przedmioty, która zawiera kolumny ocena oraz uczenID, aby wyliczyć średnią ocen dla ucznia z ID równym 7, należy użyć zapytania

A. SELECT COUNT(ocena) FROM przedmioty WHERE uczenID = 7
B. SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7
C. AVG SELECT ocena FROM przedmioty WHERE uczenID = 7
D. COUNT SELECT ocena FROM przedmioty WHERE uczenID = 7
Odpowiedź 'SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7;' jest poprawna, ponieważ wykorzystuje funkcję agregującą AVG, która oblicza średnią ocen dla wszystkich wpisów w tabeli 'przedmioty', gdzie 'uczenID' jest równy 7. W SQL funkcje agregujące są niezwykle przydatne do analizy danych, pozwalając na uzyskanie statystyk dotyczących zbiorów danych. Użycie klauzuli WHERE pozwala na filtrowanie danych do tych, które dotyczą konkretnego ucznia, co jest zgodne z najlepszymi praktykami w zakresie zarządzania danymi. Na przykład, w praktycznych zastosowaniach, może to być użyte do generowania raportów dotyczących wyników ucznia w określonym przedziale czasowym lub w porównaniu do innych uczniów. Warto również zauważyć, że poprawna konstrukcja zapytania SQL jest kluczowa dla utrzymania integralności i wydajności bazy danych, co podkreśla znaczenie płynnego zapisu zapytań. Takie umiejętności są nieocenione w pracy z bazami danych oraz w kontekście analizy danych w różnych dziedzinach.

Pytanie 24

Co oznacza termin „upload” danych?

A. trasę transferu pliku
B. przesyłanie plików na serwer
C. opóźnienie w transmisji pliku
D. pobieranie plików z serwera
Pozostałe opisy dotyczą czego innego. POBIERANIE plików z serwera to „download” (kierunek odwrotny). „Trasa transferu” i „opóźnienie w transmisji” to pojęcia sieciowe niezwiązane z samym kierunkiem przesyłu. Wysyłanie plików na serwer to upload.

Pytanie 25

W języku JavaScript należy sformułować warunek, który będzie prawdziwy, gdy zmienna a będzie jakąkolwiek liczbą naturalną dodatnią (również nie zerową) lub gdy zmienna b będzie liczbą mieszczącą się w przedziale od 10 do 100, włącznie. Wyrażenie logiczne zastosowane w tym warunku powinno mieć formę

A. (a>0) || ((b>=10) && (b<=100))
B. (a>0) && ((b>=10) || (b<=100))
C. (a>0) && ((b>=10) && (b<=100))
D. (a>0) || ((b>=10) || (b<=100))
Analizując inne odpowiedzi, widać, że zawierają one różne błędne koncepcje w interpretacji warunków logicznych. W przypadku (a>0) && ((b>=10) || (b<=100)), użycie operatora || w drugiej części powoduje, że warunek dla b zawsze będzie spełniony, niezależnie od wartości b, co jest niezgodne z założeniem, że b powinno znajdować się w przedziale od 10 do 100. Takie błędne zrozumienie operatorów logicznych prowadzi do niepoprawnych interpretacji. W odpowiedzi (a>0) || ((b>=10) || (b<=100)), ponownie użycie operatora || w drugiej części sprawia, że warunek b również nie działa zgodnie z założeniem, ponieważ b może być każdą liczbą, co nie spełnia wymogu ograniczenia do przedziału 10-100. Kolejna odpowiedź, (a>0) && ((b>=10) && (b<=100)), wprowadza błędny wniosek, że obie części muszą być spełnione jednocześnie. Takie podejście jest zrozumiałe, ale nie odpowiada na pierwotne założenie, że wystarczy, aby jeden z warunków był spełniony. Rozumienie logiki warunkowej w programowaniu jest kluczowe dla tworzenia efektywnych algorytmów i unikania problemów z bezpieczeństwem danych. Dlatego ważne jest, aby dokładnie analizować składnię i semantykę wyrażeń logicznych, co przekłada się na jakość kodu i jego łatwość w utrzymaniu.

Pytanie 26

Skrypt w języku JavaScript, który zajmuje się płacami pracowników, ma na celu stworzenie raportu dla osób zatrudnionych na umowę o pracę, które otrzymują wynagrodzenie w przedziale 4000 do 4500 zł, w tym przedziale obustronnie domkniętym. Jakie jest kryterium do wygenerowania raportu?

A. umowa == 'praca' || (pensja >= 4000 || pensja <= 4500)
B. umowa == 'praca' && (pensja >= 4000 && pensja <= 4500)
C. umowa == 'praca' && (pensja >= 4000 || pensja <= 4500)
D. umowa == 'praca' || (pensja >= 4000 && pensja <= 4500)
Odpowiedź, którą wybrałeś, to umowa == 'praca' && (pensja >= 4000 && pensja <= 4500). To jest faktycznie odpowiednia opcja, bo spełnia warunki do wygenerowania raportu. To ważne, żeby oba warunki były spełnione – pracownik musi mieć umowę o pracę i pensja powinna być w zakresie od 4000 do 4500 zł. Na przykład, jeśli ktoś zarabia 4200 zł, to wtedy wszystko gra i raport się pojawi. W programowaniu używanie operatorów logicznych, takich jak '&&', jest kluczowe, bo pozwalają one precyzyjnie ustalić kryteria. Dobrze zrozumiane operatory '&&' i '||' pomagają unikać niejasności i błędów w logice, a to jest podstawa dobrego pisania kodu.

Pytanie 27

W firmowej tabeli znajdują się kolumny: nazwa, adres, NIP, obrót (obrót w ostatnim miesiącu), rozliczenie oraz status. Po wykonaniu kwerendy SQL

SELECT nazwa, NIP FROM firmy WHERE obrot < 4000;
na ekranie pojawią się:
A. wszystkie informacje o firmach, które w ostatnim miesiącu miały obrót poniżej 4000 zł
B. tylko nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł
C. tylko nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł
D. wszystkie informacje o firmach, które w ostatnim miesiącu uzyskały obrót co najmniej 4000 zł
W tej kwerendzie SQL chodziło o to, aby zrozumieć, że zapytanie 'SELECT nazwa, NIP FROM firmy WHERE obrót < 4000;' zwróci tylko nazwy firm i ich numery NIP. Tylko te firmy, co miały obrót poniżej 4000 zł w ostatnim miesiącu. SQL jako język zapytań daje nam możliwość wybierania konkretnych kolumn z tabeli i filtrowania wyników według różnych warunków. Tu wybraliśmy kolumny 'nazwa' i 'NIP', a filtr 'WHERE obrót < 4000' pokazuje nam tylko te firmy, które spełniają ten warunek. To bardzo ważne w praktycznym użyciu SQL, bo często musimy wyświetlać dane według określonych kryteriów. Dzięki temu zapytaniu łatwo możemy zidentyfikować firmy, które mogą potrzebować wsparcia finansowego lub jakiejś pomocy z powodu niskiego obrotu.

Pytanie 28

Kwerenda pozwalająca zmienić wiele rekordów lub przenieść wiele rekordów w jednej operacji nosi nazwę kwerendy

A. parametrycznej
B. wybierającej
C. funkcjonalnej
D. krzyżowej
Pozostałe kwerendy nie modyfikują masowo danych. Wybierająca tylko odczytuje (SELECT), parametryczna pyta o wartość przed uruchomieniem, a krzyżowa podsumowuje dane w układzie tabelarycznym. Masowej zmiany rekordów dokonuje kwerenda funkcjonalna.

Pytanie 29

W jakim formacie będzie wyświetlana data po uruchomieniu przedstawionego kodu?

<?php
  echo date'l, dS F Y');
?>
A. Poniedziałek, 10th lipca 2017
B. Poniedziałek, 10 lipca 2017
C. Poniedziałek, 10th lipca 17
D. 10, poniedziałek lipca 2017
Pierwsza z błędnych odpowiedzi sugeruje, że data zostanie wyświetlona jako 'Monday, 10 July 2017'. Problem polega na tym, że brak suffixu 'th' w przypadku dnia 10 jest niewłaściwy według standardowego angielskiego zapisu dat. W kontekście drugiej odpowiedzi, '10, Monday July 2017', należy zauważyć, że kolejność elementów jest nieprawidłowa. W angielskim zapisie dat i zgodnie z konwencjami formatowania, najpierw występuje nazwa dnia, następnie dzień miesiąca, a później miesiąc i rok. Co więcej, brak przecinka po dniu miesiąca także wpływa na poprawność tej formy. Trzecia odpowiedź, 'Monday, 10th July 17', jest błędna z powodu nieprawidłowego skrótu roku; w standardowym zapisie dat w formalnym kontekście powinno się używać pełnego roku, czyli '2017', a nie jego skrótu. Zatem wszystkie te odpowiedzi są niepoprawne, ponieważ nie spełniają standardowych zasad formatowania dat w języku angielskim, co jest kluczowe dla zachowania jasności i poprawności w komunikacji.

Pytanie 30

Aby w języku HTML uzyskać formatowanie paragrafu przedstawione w ramce, należy zastosować kod

Ilustracja do pytania
A. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny</em> dla autora</p>
B. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny dla autora</p>
C. <p>Tekst może być <mark>zaznaczony albo <em>istotny</em> dla autora</mark></p>
D. <p>Tekst może być <mark>zaznaczony albo <i>istotny</i> dla autora</mark></p>
Poprawnie wybrałeś kod z poprawnie zagnieżdżonymi i domkniętymi znacznikami: <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny</em> dla autora</p>. To dokładnie odpowiada temu, co widać na podglądzie: zwykły akapit, w nim jedno słowo podświetlone na żółto oraz inne wyróżnione kursywą. Znacznik <p> tworzy paragraf – podstawowy blok tekstu w HTML. W środku używasz elementów liniowych (inline): <mark> do zaznaczenia fragmentu tekstu jak zakreślaczem oraz <em> do zaznaczenia treści istotnej znaczeniowo, co domyślnie jest renderowane jako kursywa. Według specyfikacji HTML5 <mark> służy do semantycznego wyróżnienia tekstu związanego z kontekstem, np. wynik wyszukiwania na stronie czy aktualnie ważna informacja. <em> natomiast podkreśla akcent logiczny w zdaniu, a nie tylko ozdobne pochylenie, co jest dobrą praktyką dostępnościową. Ważne jest też poprawne zagnieżdżanie: najpierw otwierasz <mark>, potem go zamykasz </mark>, dopiero później otwierasz <em> i zamykasz </em>. Żaden z tych znaczników nie nachodzi na siebie w sposób krzyżowy. Tego pilnują walidatory W3C i warto się do tego przyzwyczaić od początku. W codziennej pracy taki kod możesz wykorzystać np. w artykułach, dokumentacji technicznej, materiałach szkoleniowych, gdzie chcesz: zakreślić słowo kluczowe (<mark>) i jednocześnie podkreślić termin ważny dla autora lub kontekstu (<em>). Moim zdaniem lepiej stosować <em> zamiast <i>, bo <em> niesie znaczenie semantyczne i czytniki ekranu potrafią je zinterpretować, co poprawia dostępność strony.

Pytanie 31

Tabela naprawy ma kolumny klient i czyNaprawione. Jak usunąć rekordy, w których czyNaprawione jest prawdą?

A.
DELETE naprawy WHERE czyNaprawione = TRUE;
B.
DELETE klient FROM naprawy WHERE czyNaprawione = TRUE;
C.
DELETE FROM naprawy;
D.
DELETE FROM naprawy WHERE czyNaprawione = TRUE;
DELETE FROM naprawy; bez WHERE usunęłoby WSZYSTKIE wiersze. DELETE naprawy WHERE ... pomija słowo FROM. DELETE klient FROM ... błędnie wskazuje kolumnę (DELETE usuwa całe wiersze). Poprawne jest DELETE FROM naprawy WHERE czyNaprawione = TRUE;.

Pytanie 32

Który styl ustawi trzy kolumny OBOK siebie (każda na 1/3 szerokości)?

A.
.kolumny { float: right; height: 33%; }
B.
.kolumny { float: left; width: 40%; }
C.
.kolumny { float: left; width: 33%; }
D.
.kolumny { clear: both; height: 33%; }
Trzy kolumny obok siebie powstają, gdy każdy blok „pływa” w lewo i zajmuje jedną trzecią szerokości: .kolumny { float: left; width: 33%; }. Kluczowe są float (układ poziomy) i width (szerokość). Dlatego poprawny jest zapis z float: left i width: 33%.

Pytanie 33

Funkcja zaprezentowana w PHP

function dzialania(int $x, float $y) {
  $z = $x + $y;
  return $z;
}
A. zwraca wynik.
B. przyjmuje dwa argumenty z wartością domyślną.
C. nie zwraca wyniku.
D. jest zadeklarowana z dwoma parametrami rzeczywistymi.
Odpowiedzi, które sugerują, iż funkcja nie zwraca wartości, są błędne, ponieważ wyraźnie widać, że zawiera instrukcję return, co świadczy o jej zdolności do zwracania wyniku. Takie nieporozumienia mogą wynikać z braku zrozumienia struktury funkcji w PHP, gdzie return jest kluczowym elementem określającym, że funkcja coś zwraca. Inna błędna odpowiedź sugeruje, że funkcja pobiera parametry z domyślną wartością. Chociaż PHP pozwala na definiowanie takich parametrów, w tym przypadku nie ma przypisanych wartości domyślnych, co oznacza, że użytkownik musi dostarczyć odpowiednie argumenty przy wywołaniu funkcji. Ponadto odpowiedź o dwóch rzeczywistych parametrach również wprowadza w błąd, gdyż typy są dokładnie określone jako int i float, co oznacza, że jeden z parametrów jest całkowity, a drugi zmiennoprzecinkowy. Takie niezrozumienie może być wynikiem braku uwagi na szczegóły podczas analizy kodu. Poprawne zrozumienie sygnatury i działania funkcji jest kluczowe dla skutecznego programowania, a błędne interpretacje mogą prowadzić do defektów w kodzie, które są trudne do zidentyfikowania i naprawy bez odpowiedniej wiedzy i doświadczenia w analizie typu danych oraz struktury funkcji w PHP. W praktyce, uniknięcie takich pomyłek wymaga dokładnej lektury kodu oraz praktyki w implementacji funkcji o różnorodnych sygnaturach w różnych kontekstach programistycznych. Dlatego tak istotne jest zrozumienie, jak funkcje operują na parametrach i jakie są ich możliwe zastosowania w projektach programistycznych.

Pytanie 34

Program napisany w języku PHP ma na celu wyliczenie średniej pozytywnych ocen ucznia w zakresie od 2 do 6. Warunek doboru ocen w pętli obliczającej średnią powinien zawierać wyrażenie logiczne

A. $ocena >= 2 and $ocena <= 6
B. $ocena > 2 or $ocena < 6
C. $ocena > 2 and $ocena < 6
D. $ocena >= 2 or $ocena <= 6
Wybrana odpowiedź jest poprawna, ponieważ warunek '$ocena >= 2 and $ocena <= 6' precyzyjnie definiuje zakres ocen, które mają być brane pod uwagę przy obliczaniu średniej. Użycie operatora 'and' zapewnia, że tylko oceny mieszczące się w przedziale od 2 do 6, włącznie z obydwoma krańcami, będą uwzględnione. Przykład praktyczny to sytuacja, w której programista chciałby zrealizować system oceny uczniów, w którym dopuszczalne oceny to 2, 3, 4, 5 i 6. Gdybyśmy użyli operatora 'or', program mógłby przyjąć oceny spoza tego zakresu, co prowadziłoby do nieprawidłowych obliczeń i fałszywych wniosków. W kontekście programowania w PHP, stosowanie poprawnych warunków logicznych jest kluczowe dla zapewnienia prawidłowego działania kodu. Dobrym przykładem zastosowania takiego warunku jest pętla, która iteruje przez zestaw ocen i sumuje je, aby na końcu obliczyć średnią. Stosując odpowiednie warunki, programista może być pewny, że obliczenia są realizowane na danych, które są zgodne z wymaganiami. Warto również zauważyć, że w kontekście dobrych praktyk programistycznych, jasne definiowanie warunków logicznych pozwala na łatwiejsze zrozumienie kodu przez innych programistów oraz ułatwia jego późniejsze utrzymanie.

Pytanie 35

Którym poleceniem w MySQL wyświetli się listę uprawnień nadanych użytkownikowi anna?

A.
SELECT GRANTS FOR anna;
B.
GRANT * TO anna;
C.
REVOKE GRANTS FROM anna;
D.
SHOW GRANTS FOR anna;
Listę uprawnień nadanych użytkownikowi wyświetla w MySQL polecenie SHOW GRANTS FOR anna; - zwraca zestaw poleceń GRANT opisujących jego prawa. Używa się go np. do audytu, kto i co może robić w bazie. Dlatego poprawne jest SHOW GRANTS FOR anna;.

Pytanie 36

Powszechnie stosowanym narzędziem SZBD do tworzenia zestawień danych, które można wydrukować, jest

A. raport
B. kwerenda UPDATE
C. makro
D. formularz
Kwerenda UPDATE jest używana do modyfikacji istniejących danych w bazie danych. Głównym celem kwerendy jest aktualizacja wartości pól w określonych rekordach, co jest zupełnie innym zadaniem niż generowanie zestawień danych. Użytkownicy, którzy mylnie uważają, że kwerenda UPDATE może służyć do tworzenia raportów, mogą nie rozumieć podstawowego podziału funkcji w systemach bazodanowych. Z kolei formularz jest interfejsem użytkownika, który umożliwia wprowadzanie danych do bazy, ale nie jest narzędziem do generowania zestawień, co sprawia, że jego zastosowanie jest także niewłaściwe w kontekście tego pytania. Makro, z drugiej strony, to zestaw instrukcji automatyzujących różne operacje w bazie danych, ale także nie jest dedykowane do tworzenia raportów. Kluczowym błędem myślowym jest utożsamianie narzędzi do modyfikacji lub wprowadzania danych z narzędziami do ich analizy i raportowania. Warto zrozumieć, że każdy z tych elementów ma swoje specyficzne zastosowanie w systemach zarządzania bazami danych, a ich pomylenie może prowadzić do nieskutecznego wykorzystania zasobów oraz obniżenia jakości analizy danych.

Pytanie 37

Do jakich działań można wykorzystać program FileZilla?

A. walidacji strony internetowej.
B. debugowania skryptu na stronie.
C. publikacji strony internetowej.
D. kompilacji skryptu na stronie.
FileZilla jest popularnym klientem FTP (File Transfer Protocol), który służy do przesyłania plików między lokalnym komputerem a serwerem. Publikacja strony internetowej polega na przesyłaniu plików HTML, CSS, JavaScript i innych zasobów związanych z witryną na serwer, aby były one dostępne w Internecie. Używając FileZilla, użytkownik może łatwo połączyć się z serwerem poprzez protokół FTP, co pozwala na wygodne zarządzanie plikami, ich przesyłanie oraz organizowanie folderów na serwerze. Przykładowo, po edytowaniu strony lokalnie na komputerze, można za pomocą FileZilla przesłać zmodyfikowane pliki na serwer w kilka kliknięć, co przyspiesza proces aktualizacji witryny. Zgodnie z dobrymi praktykami branżowymi, ważne jest także ustawienie odpowiednich uprawnień do plików oraz regularne tworzenie kopii zapasowych, co zwiększa bezpieczeństwo publikowanych treści. FileZilla obsługuje również protokoły SFTP i FTPS, które zapewniają dodatkowe warstwy bezpieczeństwa podczas transferu danych, co jest istotne w kontekście ochrony danych użytkowników i integracji z różnymi usługami hostingowymi.

Pytanie 38

Który efekt został zaprezentowany na filmie?

A. Zwiększenie ostrości zdjęcia.
B. Zmniejszenie kontrastu zdjęcia.
C. Przenikanie zdjęć.
D. Zmiana jasności zdjęć.
Poprawnie wskazany efekt to przenikanie zdjęć, często nazywane też płynnym przejściem (ang. crossfade). Polega to na tym, że jedno zdjęcie stopniowo zanika, jednocześnie drugie pojawia się z narastającą widocznością. W praktyce technicznej realizuje się to najczęściej przez zmianę przezroczystości (opacity) dwóch warstw – jedna warstwa z pierwszym obrazem ma zmniejszaną wartość opacity z 1 do 0, a druga z kolejnym zdjęciem zwiększaną z 0 do 1. Na stronach WWW taki efekt robi się zwykle za pomocą CSS (transition, animation, keyframes) albo JavaScriptu, czasem z użyciem bibliotek typu jQuery czy gotowych sliderów. Moim zdaniem to jest jeden z podstawowych efektów, który warto umieć odtworzyć, bo pojawia się w galeriach, sliderach na stronach głównych, prezentacjach produktów czy prostych pokazach slajdów. W materiałach multimedialnych, np. w edycji wideo, dokładnie ten sam efekt nazywa się przejściem typu „cross dissolve” lub „fade”, i zasada działania jest identyczna – płynne nakładanie się dwóch klatek obrazu w czasie. Dobre praktyki mówią, żeby nie przesadzać z czasem trwania przenikania: zwykle 0,5–1,5 sekundy daje przyjemny, profesjonalny wygląd, bez wrażenia „zamulenia” interfejsu. Warto też pilnować spójności – jeśli na stronie używasz przenikania w jednym miejscu, dobrze jest utrzymać podobny styl animacji w innych elementach, żeby całość wyglądała konsekwentnie i nie rozpraszała użytkownika. W kontekście multimediów na WWW przenikanie jest też korzystne wydajnościowo, bo operuje głównie na właściwości opacity i transformacjach, które przeglądarki potrafią optymalizować sprzętowo.

Pytanie 39

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

$liczba = 1;
while ($liczba != 0)
{
  $liczba = rand(0, 100);
  echo $liczba;
}
A. liczby wprowadzane z klawiatury do momentu, gdy wczytana zostanie wartość 0
B. losowe liczby od 0 do 100 aż do momentu, gdy wylosowana zostanie wartość 0
C. kolejne liczby od 1 do 100
D. wylosowane liczby od 1 do 99
Odpowiedź "losowe liczby od 0 do 100 tak długo, aż nie zostanie wylosowana wartość 0" jest poprawna, ponieważ kod źródłowy wykorzystuje funkcję rand(), która generuje losowe liczby z zadanego zakresu, w tym przypadku od 0 do 100. Pętla while działa w taki sposób, że kontynuuje swoje działanie, dopóki zmienna $liczba nie przyjmie wartości 0. Oznacza to, że wszystkie wylosowane liczby, niezależnie od tego, czy są to liczby parzyste, nieparzyste, czy wartości graniczne, będą wyświetlane na ekranie do momentu, aż wylosowana zostanie wartość 0, która przerwie działanie pętli. Przykładem zastosowania tego typu kodu może być generowanie próbki danych w celu testowania algorytmów lub symulacji. Praktyka ta jest zgodna z dobrymi standardami programowania, gdzie często wykorzystuje się losowe dane do różnych celów, takich jak testowanie, analizy statystyczne lub gry. Ponadto, rozumienie jak działa generowanie liczb losowych i kontrola pętli jest podstawową umiejętnością w programowaniu, która pomaga w rozwoju bardziej zaawansowanych aplikacji.

Pytanie 40

Jakie znaczniki należy zastosować, aby umieścić kod w języku PHP w pliku z rozszerzeniem .php?

A.
<?php>...<php?>
B.
<php> ... </php>
C.
<php ... />
D.
<?php ... ?>
Atrybut w bazie danych to nazwana KOLUMNA tabeli, opisująca jedną określoną cechę obiektu (encji) - np. w tabeli „Uczeń” atrybutami są „imię”, „nazwisko”, „klasa”. Każda krotka (wiersz) ma dla danego atrybutu konkretną wartość. Dlatego atrybut to nazwana kolumna opisująca cechę.