Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 19 grudnia 2025 20:19
  • Data zakończenia: 19 grudnia 2025 21:11

Egzamin zdany!

Wynik: 25/40 punktów (62,5%)

Wymagane minimum: 20 punktów (50%)

Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Wskaż, jak wygląda komentarz wieloliniowy w języku PHP?

A. <!-- -->
B. /* */
C. #
D. //
Komentarz wieloliniowy w języku PHP jest oznaczany przez symbole '/*' na początku oraz '*/' na końcu. Tego typu komentarze pozwalają na umieszczanie dłuższych opisów lub wyjaśnień w kodzie, co jest szczególnie przydatne w przypadku bardziej złożonych fragmentów. Przykładowo, jeśli mamy funkcję, która wykonuje skomplikowane obliczenia, można użyć komentarza wieloliniowego, aby szczegółowo opisać, co ta funkcja robi oraz jakie są jej wejścia i wyjścia. W dobie pracy zespołowej i dbałości o dokumentację kodu, stosowanie komentarzy do wyjaśnienia celów, metod i ograniczeń kodu jest dobrą praktyką. Dzięki temu, programiści, którzy będą pracować z danym fragmentem kodu w przyszłości, będą mieli pełniejsze zrozumienie jego działania. Używanie komentarzy wieloliniowych w PHP jest zgodne z najlepszymi praktykami programistycznymi, sprzyja utrzymaniu porządku w kodzie oraz ułatwia jego późniejsze modyfikacje.

Pytanie 2

W programie do grafiki wektorowej stworzono zaprezentowany kształt, który został uzyskany z dwóch figur: trójkąta oraz koła. Aby utworzyć ten kształt, po narysowaniu figur i ich odpowiednim umiejscowieniu, należy zastosować funkcję

Ilustracja do pytania
A. wykluczenia
B. różnicy
C. rozdzielenia
D. sumy
Różnica w edytorach grafiki wektorowej odnosi się do operacji boolean, która usuwa część jednego kształtu na podstawie innego. Zastosowanie różnicy w tym kontekście nie byłoby poprawne, ponieważ nie dąży się do usunięcia części figury, lecz do ich połączenia. Rozdzielenie to proces odwrotny do łączenia, polegający na dzieleniu złożonych kształtów na mniejsze komponenty, co jest używane, gdy trzeba edytować poszczególne części odrębnie. Wykluczenie to funkcja często używana do tworzenia złożonych masek lub wzorów poprzez uzyskanie obszaru, który nie jest wspólny dla dwu kształtów, co również nie odpowiada naszemu celowi połączenia figur. Typowym błędem przy stosowaniu tych operacji jest brak zrozumienia, że każda z tych funkcji ma specyficzne zastosowania i efekty w grafice wektorowej. Zamiast połączenia w całość, uzyskalibyśmy skomplikowany zestaw kształtów, co mogłoby utrudnić dalszą edycję i optymalizację projektu. Dlatego ważne jest zrozumienie różnic między tymi operacjami, aby efektywnie i precyzyjnie pracować z grafiką wektorową, co jest kluczowe w profesjonalnym środowisku projektowym. Każda z tych funkcji ma swoje miejsce w procesie projektowania, a ich odpowiednie zastosowanie pozwala uzyskać zamierzony efekt w sposób efektywny i zgodny z dobrymi praktykami branżowymi. Zrozumienie tych zasad jest niezbędne dla tworzenia profesjonalnych i funkcjonalnych projektów graficznych.

Pytanie 3

Podczas testowania skryptu JavaScript można w konsoli wyświetlać obecnie przechowywane wartości zmiennych przy użyciu funkcji

A. console.log()
B. console.warn()
C. console.count()
D. console.error()
Funkcja console.log() jest najczęściej używaną metodą do wyświetlania informacji w konsoli JavaScript. Umożliwia ona programistom monitorowanie wartości zmiennych w czasie rzeczywistym, co jest niezwykle pomocne podczas debugowania aplikacji. Używając console.log(), można łatwo wprowadzić komunikaty do konsoli, co pozwala na śledzenie zachowań aplikacji oraz identyfikację potencjalnych problemów. Przykładowo, jeśli mamy zmienną 'x' i chcemy zobaczyć jej wartość, wystarczy wpisać console.log(x). Dobre praktyki inżynierii oprogramowania sugerują, aby używać tego narzędzia do logowania istotnych informacji, w tym danych wejściowych oraz wyników operacji, co ułatwia późniejszą analizę i utrzymanie kodu. Ponadto, console.log() jest częścią standardu Web API, co potwierdza jego znaczenie i powszechność w branży. Warto też pamiętać, że nadmierne logowanie może prowadzić do zagracenia konsoli, dlatego kluczowe jest stosowanie tej funkcji w umiarkowany sposób, szczególnie w środowisku produkcyjnym.

Pytanie 4

Formatem plików graficznych rastrowych z bezstratną kompresją jest

A. CDR
B. JNG
C. SVG
D. PNG
Format PNG (Portable Network Graphics) jest popularnym formatem plików graficznych stosowanym do zapisu obrazów rastrowych z kompresją bezstratną. Oznacza to, że podczas zapisywania pliku nie następuje utrata jakości obrazu, co czyni go idealnym do grafiki internetowej, gdzie jakość wizualna ma kluczowe znaczenie. PNG obsługuje przezroczystość, co pozwala na tworzenie grafik z tłem przejrzystym, co jest niezwykle przydatne w projektowaniu stron internetowych oraz w aplikacjach graficznych. Format ten wspiera także różne głębokości kolorów, co oznacza, że można go używać do przedstawiania obrazów w rozdzielczości do 48 bitów na kanał kolorów. W porównaniu do formatu GIF, PNG oferuje lepszą jakość obrazu oraz szersze możliwości zastosowań, ponieważ nie jest ograniczony do palety 256 kolorów. PNG jest zgodny z wieloma standardami, w tym z Internet Engineering Task Force (IETF), który przyjął go jako standard dla grafiki internetowej. Przykłady zastosowania formatu PNG obejmują ikony, logo oraz ilustracje, które wymagają wysokiej jakości i przezroczystości.

Pytanie 5

Jakie zadania programistyczne mogą być realizowane wyłącznie po stronie klienta w przeglądarce?

A. Bezpieczne wyświetlenie spersonalizowanej treści strony na podstawie uprawnień użytkownika aplikacji
B. Zapis danych z formularza w bazie danych związanej z aplikacją internetową
C. Weryfikacja hasła użytkownika w bazie danych powiązanej z aplikacją internetową
D. Weryfikacja danych wprowadzanych do pola tekstowego w czasie rzeczywistym
Sprawdzanie danych wpisywanych do pola tekstowego w czasie rzeczywistym jest zadaniem, które można wykonać wyłącznie po stronie klienta, korzystając z technologii takich jak JavaScript. Przykładem może być walidacja formularzy, gdzie użytkownik otrzymuje natychmiastową informację zwrotną na temat poprawności danych, zanim jeszcze wyśle formularz. Dzięki temu można zredukować ilość błędów i poprawić doświadczenia użytkownika. Zastosowanie tego typu walidacji jest zgodne z dobrymi praktykami, ponieważ pozwala na szybszą interakcję bez konieczności komunikacji z serwerem, co z kolei zmniejsza obciążenie serwera i przyspiesza czas ładowania strony. Warto również zwrócić uwagę na standardy dostępności, aby zapewnić, że walidacja jest wykonalna także dla osób używających technologii asystujących. Dobrze zaprojektowane formularze z walidacją po stronie klienta są bardziej przyjazne i funkcjonalne, co przekłada się na wyższe wskaźniki konwersji w aplikacjach internetowych.

Pytanie 6

Z tabeli mieszkancy trzeba wydobyć unikalne nazwy miast, w tym celu należy użyć wyrażenia SQL zawierającego klauzulę

A. DISTINCT
B. CHECK
C. UNIQUE
D. HAVING
Odpowiedź 'DISTINCT' jest prawidłowa, ponieważ klauzula ta w SQL służy do eliminacji duplikatów z wyników zapytania. Gdy chcemy uzyskać unikalne wartości z określonej kolumny, stosujemy 'SELECT DISTINCT nazwa_kolumny FROM nazwa_tabeli'. Na przykład, używając zapytania 'SELECT DISTINCT miasto FROM mieszkancy', otrzymamy jedynie unikalne nazwy miast bez powtórzeń. To podejście jest szczególnie przydatne w analizach, gdzie kluczowe jest posiadanie jedynie jednorazowych wartości, na przykład w raportach marketingowych czy badaniach demograficznych. W praktyce 'DISTINCT' powinno być używane z rozwagą, gdyż jego użycie może wpływać na wydajność zapytania, zwłaszcza w przypadku dużych zbiorów danych. Należy również pamiętać, że 'DISTINCT' dotyczy wszystkich kolumn w zapytaniu – jeśli wybierzemy więcej niż jedną kolumnę, to zduplikowane wiersze będą usuwane tylko wtedy, gdy wszystkie kolumny są identyczne. To sprawia, że 'DISTINCT' jest elastycznym narzędziem w SQL, pozwalającym na efektywne zarządzanie i przetwarzanie danych.

Pytanie 7

W języku PHP do zmiennej a przypisano ciąg znaków, w którym wielokrotnie pojawia się słowo Kowalski. Aby jednym poleceniem wymienić w zmiennej a wszystkie wystąpienia słowa Kowalski na słowo Nowak, należy użyć polecenia

A. $a = str_replace('Nowak', 'Kowalski');
B. $a = str_replace('Nowak', 'Kowalski', $a);
C. $a = str_replace('Kowalski', 'Nowak', $a);
D. $a = str_rep('Kowalski', 'Nowak', $a);
Odpowiedź $a = str_replace('Kowalski', 'Nowak', $a); jest jak najbardziej trafna. Funkcja str_replace w PHP działa tak, że zamienia wszystkie wystąpienia jednego ciągu znaków na inny w danym tekście. W tym przypadku zastępujemy 'Kowalski' słowem 'Nowak'. To działa tak, że jak masz tekst 'Jan Kowalski i Anna Kowalski' w zmiennej $a, po wykonaniu tego kodu $a zmieni się na 'Jan Nowak i Anna Nowak'. Tego typu operacje są naprawdę przydatne w PHP, zwłaszcza gdy zajmujemy się danymi, które musimy zmieniać lub aktualizować, na przykład w aplikacjach internetowych. Pamiętaj, żeby używać takich funkcji w odpowiednich miejscach, bo operacje na dużych zbiorach danych mogą być wymagające.

Pytanie 8

Dzięki poleceniu ALTER TABLE można

A. zmieniać wartości rekordów
B. zmieniać strukturę tabeli
C. usunąć rekord
D. skasować tabelę
Polecenie ALTER TABLE jest kluczowym elementem w zarządzaniu bazami danych, umożliwiającym wprowadzanie zmian w strukturze istniejących tabel. Dzięki temu poleceniu możemy dodawać nowe kolumny, zmieniać typy danych istniejących kolumn, usuwać kolumny, a także zmieniać ograniczenia, takie jak klucze główne czy obce. Na przykład, w przypadku potrzeby dodania kolumny 'data_urodzenia' do tabeli 'użytkownicy', można użyć komendy: ALTER TABLE użytkownicy ADD data_urodzenia DATE;. Zmiany strukturalne są niezbędne, aby dostosować bazę danych do ewoluujących potrzeb aplikacji oraz do zapewnienia integralności danych. W praktyce, operacje te są często stosowane przy modernizacji aplikacji lub w odpowiedzi na zmieniające się wymagania biznesowe. Dobre praktyki wskazują, że przed wprowadzeniem zmian w strukturze tabeli warto wykonać kopię zapasową danych oraz przeanalizować wpływ tych zmian na istniejące zapytania i aplikacje, które korzystają z danej tabeli.

Pytanie 9

Ile razy zostanie wykonana pętla w języku PHP, jeśli zmienna kontrolna pozostaje niezmienna podczas działania pętli?

for($i=0; $i<=10; $i++) {
        .......
}
A. 11
B. 0
C. Nieskończoność
D. 10
Rozpatrując pętlę for w kontekście języka programowania PHP należy zwrócić uwagę na strukturę i logikę jej działania. Pętla zaczyna się od inicjalizacji zmiennej sterującej w tym przypadku $i=0. Warunek końcowy to $i<=10 co oznacza że pętla będzie kontynuowana dopóki wartość $i jest mniejsza lub równa 10. W praktyce oznacza to że pętla wykona się dla wartości od 0 do 10 włącznie co daje 11 iteracji. Błędne wyobrażenie że pętla wykona się 10 razy może wynikać z niepoprawnego zrozumienia warunku końcowego. Wartość logiczna $i<=10 pozwala na dodatkową iterację dla wartości $i=10. Kolejny błąd mógłby dotyczyć nieskończonej liczby iteracji co mogłoby być prawdziwe w przypadku braku prawidłowo określonego warunku końcowego lub błędu logicznego zmieniającego warunek w nieskończoność ale nie w tym przypadku. Warunek $i++ poprawnie i przewidywalnie zwiększa wartość $i w każdej iteracji unikając takich problemów. Zrozumienie działania pętli for i poprawne określenie warunków początkowych i końcowych oraz kroku iteracji jest kluczowe dla prawidłowego stosowania tej struktury kontrolnej w programowaniu. Takie zrozumienie pozwala na efektywne wykorzystanie pętli w różnych zadaniach programistycznych unikając potencjalnych błędów logicznych i zapewniając że kod działa zgodnie z założeniami.

Pytanie 10

Funkcja zapisana w języku PHP wygląda tak patrz ramka): Jej celem jest

Ilustracja do pytania
A. zwrócenie wartości 0, gdy liczba jest parzysta
B. wypisanie liczby nieparzystej
C. zwrócenie wartości 1, gdy liczba jest parzysta
D. wypisanie liczby parzystej
Funkcja w języku PHP jest zapisana w taki sposób że przyjmuje jeden argument liczba i sprawdza czy jest on parzysty. Używa operatora modulo % który zwraca resztę z dzielenia. Jeśli liczba podzielona przez 2 daje resztę równą 0 oznacza to że jest parzysta. W takim przypadku funkcja zwraca wartość 1. W przeciwnym razie czyli gdy liczba jest nieparzysta funkcja zwraca 0. Takie podejście jest częstym wzorcem w programowaniu gdyż pozwala na szybkie i efektywne sprawdzenie parzystości liczby. Stosowanie operatora modulo jest standardem w wielu językach programowania dzięki czemu kod jest zrozumiały i łatwo go przenieść między różnymi platformami. W praktyce takie funkcje mogą być używane w algorytmach gdzie konieczne jest filtrowanie danych na podstawie parzystości lub innych podobnych kryteriów. Dobre praktyki w kodowaniu w PHP obejmują również jasne nazywanie funkcji i zmiennych co poprawia czytelność i utrzymanie kodu. Można także zastanowić się nad rozszerzeniem funkcji o dodatkowe sprawdzania lub logikę w zależności od potrzeb projektu.

Pytanie 11

Który typ relacji wymaga stworzenia tabeli pośredniczącej łączącej klucze główne obu tabel?

A. 1..n
B. n..1
C. 1..1
D. n..n
Odpowiedź n..n jest prawidłowa, ponieważ ten typ relacji wskazuje, że wiele rekordów z jednej tabeli może być związanych z wieloma rekordami z drugiej tabeli. Aby prawidłowo zaimplementować tę relację w bazie danych, konieczne jest utworzenie tabeli pośredniej, która będzie zawierać klucze główne z obu tabel jako klucze obce. Na przykład, w systemie zarządzania uczelnią, tabela 'Studenci' może być powiązana z tabelą 'Kursy', gdzie jeden student może zapisać się na wiele kursów, a jeden kurs może mieć wielu studentów. Tabela pośrednia 'Studenci_Kursy' będzie zawierać kolumny 'StudentID' i 'KursID', które tworzą unikalne pary, umożliwiając efektywne zarządzanie danymi. Standardy projektowania baz danych, takie jak modelowanie ER (Entity-Relationship), zalecają stosowanie tabel pośrednich w takich przypadkach, aby zminimalizować redundancję danych oraz zwiększyć integralność referencyjną systemu.

Pytanie 12

Funkcja zapisana w języku PHP ma postać jak poniżej. Jej zadaniem jest

function fun1($liczba)
{
    if($liczba % 2 == 0)
        return 1;

    return 0;
}
A. wypisanie liczby nieparzystej.
B. zwrócenie wartości 1, gdy liczba jest parzysta.
C. wypisanie liczby parzystej.
D. zwrócenie wartości 0, gdy liczba jest parzysta.
Twoja odpowiedź jest poprawna. Funkcja fun1($liczba) w PHP zwraca wartość 1, gdy liczba podana jako argument jest parzysta. Jest to wynikiem działania funkcji, której składnikami są operator modulo (%) i porównanie (==). Kod ($liczba % 2 == 0) sprawdza, czy reszta z dzielenia liczby przez 2 jest równa zero, co jest prawdą dla wszystkich liczb parzystych. Jeśli warunek jest spełniony, funkcja zwraca wartość 1. Jest to typowe i efektywne podejście do sprawdzania parzystości liczb w językach programowania. Wykorzystanie operatora modulo jest powszechną praktyką, gdyż nie tylko pozwala na realizację takiej operacji, ale również jest szybkie i nie wymaga zbyt dużego nakładu zasobów procesora. Można zastosować tę wiedzę w różnych scenariuszach - na przykład, gdy potrzebujesz przeprowadzić różne operacje na podstawie parzystości lub nieparzystości liczb.

Pytanie 13

Zastosowana w dokumencie HTML definicja multimediów sprawi, że na stronie

<video controls>
    <source src="video1.mp4" type="video/mp4">
    <source src="video1.ogg" type="video/ogg">
    Komunikat dotyczący video
</video>
A. zostaną wyświetlone obok siebie dwa filmy z plików: video1.mp4 oraz video1.ogg.
B. pod wyświetlanym filmem zostanie wyświetlony napis "Komunikat dotyczący video".
C. zostanie wyświetlony film z pliku video1.mp4 lub w przypadku nierozpoznania formatu MPEG-4 – video1.ogg.
D. wyświetlony film zostanie automatycznie uruchomiony zaraz po załadowaniu strony internetowej.
Twoja odpowiedź jest prawidłowa. Element HTML video umożliwia osadzenie filmów w stronach internetowych bez konieczności korzystania z zewnętrznych wtyczek. W przykładzie kodu HTML, który analizujemy, zauważamy, że element video zawiera atrybut controls, co umożliwia użytkownikom kontrolowanie odtwarzania filmu. Wewnątrz elementu video znajdują się dwa elementy źródła - video1.mp4 z typem video/mp4 i video1.ogg z typem video/ogg. Przeglądarka internetowa najpierw spróbuje odtworzyć plik MP4. Jeśli nie rozpozna formatu MPEG-4, spróbuje odtworzyć plik OGG. Jest to praktyczne zastosowanie technologii HTML5, która umożliwia tworzenie bardziej interaktywnych i angażujących stron internetowych. Stosowanie różnych formatów plików video jest również dobrą praktyką, ponieważ różne przeglądarki mogą obsługiwać różne formaty.

Pytanie 14

W języku JavaScript, aby uzyskać element wykorzystując metodę getElementById, jaką właściwością można zmienić jego zawartość?

A. innerBody
B. Body
C. HTML
D. innerHTML
Właściwość innerHTML jest kluczowym elementem manipulacji zawartością DOM (Document Object Model) w JavaScript. Umożliwia ona programistom dostęp do zawartości danego elementu HTML oraz jej modyfikację. Gdy pobieramy element za pomocą metody getElementById, mamy możliwość bezpośredniego zmienienia jego treści poprzez przypisanie nowego stringa do innerHTML. Przykładowo, jeśli mamy element o identyfikatorze 'myElement', możemy zaktualizować jego zawartość w następujący sposób: document.getElementById('myElement').innerHTML = 'Nowa treść!';. To podejście jest powszechnie stosowane w dynamicznych aplikacjach internetowych, gdzie treść na stronie musi być często aktualizowana w odpowiedzi na działania użytkownika. Warto jednak pamiętać, że użycie innerHTML niesie ze sobą pewne ryzyko związane z bezpieczeństwem, takie jak podatność na ataki XSS (Cross-Site Scripting). Dlatego zaleca się stosowanie tej właściwości z ostrożnością i rozważenie alternatyw, jak np. textContent, w przypadku, gdy nie potrzebujemy interpretować HTML. Dobrą praktyką jest również walidacja i sanitizacja danych wejściowych, aby zminimalizować ryzyko związane z wstrzyknięciem niepożądanych skryptów. W kontekście standardów kodowania, zasadniczo zaleca się preferowanie metod, które nie tylko poprawiają bezpieczeństwo, ale także czytelność kodu.

Pytanie 15

Dla akapitu zdefiniowano styl CSS. Które właściwości stylu CSS poprawnie określają dla akapitu czcionkę: Arial; rozmiar czcionki: 16 pt; oraz styl czcionki: pochylenie?

A. p{font-style: Arial; font-size: 16pt; font-variant: normal;}
B. p{font-family: Arial; font-size: 16pt; font-style: italic;}
C. p{font-family: Arial; font-size: 16px; font-variant: normal;}
D. p{font-style: Arial; size: 16px; font-weight: normal;}
Jeśli chodzi o opisanie czcionki w CSS dla akapitu, to kluczowe są trzy właściwości. 'font-family' mówi nam, jaki krój czcionki wybieramy, w tym wypadku 'Arial', bo to popularna czcionka bezszeryfowa. Potem mamy 'font-size', czyli rozmiar czcionki, tutaj to '16pt'. To standardowy rozmiar, który dobrze wygląda w druku. Na końcu, 'font-style' ustawia styl czcionki, a użycie 'italic' sprawia, że tekst będzie w pochyłym stylu. Te trzy rzeczy są super ważne, żeby tekst na stronie wyglądał schludnie i czytelnie. W projektowaniu stron internetowych warto pamiętać, że dla druku lepsze są jednostki takie jak 'pt', a dla ekranów stosujemy 'px'. Spójność w stylizacji też jest kluczowa, bo dzięki temu tekst wygląda jednolicie na całej stronie. To naprawdę ważne, zwłaszcza gdy robimy coś w CSS, bo pozwala to na ładniejszy web design.

Pytanie 16

W tabeli Recepta, kolumny Imie i Nazwisko odnoszą się do pacjenta, na którego wystawiona jest recepta. Jaką kwerendę należy wykorzystać, aby dla każdej recepty uzyskać datę jej wystawienia oraz imię i nazwisko lekarza, który ją wystawił?

Ilustracja do pytania
A. SELECT Imie, DataWystawienia FROM Recepta JOIN Lekarz ON Recepta.Lekarz_id = Lekarz.id
B. SELECT Lekarz.Imie, Lekarz.Nazwisko, DataWystawienia FROM Recepta JOIN Lekarz ON Recepta.Lekarz_id = Lekarz.id
C. SELECT Imie, Nazwisko, DataWystawienia FROM Recepta
D. SELECT Lekarz.Imie, Lekarz.Nazwisko, DataWystawienia FROM Recepta
Wybór odpowiedzi numer 4 jest prawidłowy, ponieważ kwerenda ta skutecznie łączy tabelę Recepta z tabelą Lekarz poprzez klucz obcy Lekarz_id. W ten sposób możliwe jest uzyskanie imienia i nazwiska lekarza wystawiającego receptę oraz daty jej wystawienia. W SQL, operacja JOIN umożliwia łączenie danych z dwóch tabel na podstawie kolumn powiązanych, co jest fundamentalną zasadą w relacyjnych bazach danych. W tym przypadku klucz obcy Lekarz_id w tabeli Recepta odnosi się do klucza głównego id w tabeli Lekarz. Dzięki temu możemy pobrać informacje o lekarzu wystawiającym receptę, co jest powszechną praktyką w aplikacjach medycznych i systemach zarządzania informacją. Stosowanie JOIN jest kluczowe w projektowaniu efektywnych i skalowalnych baz danych, co pozwala na utrzymanie danych w uporządkowanej i znormalizowanej formie zgodnie z zasadami normalizacji baz danych. Taka struktura bazy danych umożliwia łatwe zarządzanie i aktualizowanie informacji oraz minimalizuje redundancję danych, co jest istotne dla zapewnienia spójności i integralności danych w systemie.

Pytanie 17

Aby ustanowić połączenie z serwerem bazy danych w języku PHP, należy użyć funkcji

A. mysqli_fetch_row()
B. mysqli_autocommit()
C. mysqli_get_connection_stats()
D. mysqli_connect()
Funkcja mysqli_connect() to taka podstawa w PHP, która pomaga połączyć się z bazą danych MySQL. Musisz jej użyć z czterema argumentami: nazwą hosta, użytkownika, hasłem i nazwą bazy danych. Dzięki mysqli_connect() Twoja aplikacja będzie działać sprawniej i bezpieczniej, co jest mega ważne. Na przykład, żeby połączyć się z bazą, możesz użyć takiego kodu: $conn = mysqli_connect('localhost', 'username', 'password', 'database_name');. Jak już masz połączenie, to później możesz robić różne zapytania SQL i manipulować danymi. To też jest zgodne z zasadą separacji, bo oddziela logikę od zarządzania danymi. No i pamiętaj, że warto zadbać o obsługę błędów przy łączeniu, najlepiej sprawdzić to przy pomocy prostego warunku: if (!$conn) { die('Connection failed: ' . mysqli_connect_error()); } Moim zdaniem, to bardzo przydatne podejście.

Pytanie 18

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

A. spójności bazy danych
B. poprawności składni zapytań
C. opcji udostępnienia bazy danych
D. uprawnień dostępu do serwera bazy danych
Spójność bazy danych to kluczowy aspekt, który należy sprawdzić przed wykonaniem kopii bezpieczeństwa. Oznacza to, że wszystkie dane w bazie muszą być zgodne z ustalonymi regułami i zapewniać prawidłowe relacje między różnymi tabelami oraz rekordami. Na przykład, jeżeli w bazie danych znajdują się relacje między tabelami, to każda referencja musi wskazywać na istniejący rekord. W praktyce, przed wykonaniem kopii zapasowej, administratorzy często przeprowadzają operacje takie jak walidacja danych, aby upewnić się, że nie ma błędów, które mogłyby prowadzić do nieprawidłowych wyników po przywróceniu danych. Dobre praktyki w zarządzaniu bazami danych, takie jak regularne wykonywanie kontroli spójności oraz audytów danych, pomagają zminimalizować ryzyko problemów z danymi. Warto również korzystać z narzędzi automatyzacyjnych, które mogą wykrywać niezgodności w danych, co znacznie ułatwia proces przed wykonaniem kopii zapasowej.

Pytanie 19

Jakie będzie rezultatem działania poniższego kodu PHP?

$a = $c = true; 
$b = $d = false;
if(($a && $b) || ($c && $d)) echo 'warunek1';
elseif(($a && $b) || ($c || $d)) echo 'warunek2';
elseif(($c && $d) || (!$a)) echo 'warunek3';
else echo 'warunek4';
A. warunek1
B. warunek4
C. warunek2
D. warunek3
Kod PHP zawiera kilka warunków logicznych w strukturze if-else. Przy początkowych wartościach zmiennych, $a i $c są równe true, natomiast $b i $d są false. Pierwszy warunek if sprawdza czy ($a && $b) || ($c && $d), co tłumaczy się na (true && false) || (true && false), co daje false || false, a w rezultacie false. Zatem warunek się nie spełnia i przechodzimy do kolejnego. W elseif mamy ($a && $b) || ($c || $d), co oznacza (true && false) || (true || false), co daje false || true, czyli true. Ten warunek się spełnia i wyświetla 'warunek2'. Kod przechodzi do następnego elseif tylko wtedy, gdy poprzednie warunki były false, co w tym przypadku nie ma miejsca. W praktyce, analizując kod PHP, ważne jest zrozumienie operatorów logicznych: && oznacza 'i', || oznacza 'lub', a ! oznacza negację. Prawidłowe stosowanie tych operatorów jest kluczowe w programowaniu warunkowym, pozwalając na kontrolę przepływu programu i podejmowanie decyzji w oparciu o złożone logiki. Użycie elseif pozwala na czytelne i klarowne rozgałęzienie kodu, co jest dobrą praktyką w pisaniu złożonych skryptów.

Pytanie 20

Który z podanych znaczników HTML nie jest używany do formatowania tekstu?

A. <em>
B. <sub>
C. <div>
D. <strong>
<div> jest znacznikiem HTML, który służy do grupowania elementów na stronie, co ułatwia ich stylizację i manipulację w CSS oraz JavaScript. W przeciwieństwie do znaczników takich jak <em>, <sub> i <strong>, które mają konkretne zastosowania związane z formatowaniem tekstu, <div> pełni rolę kontenera, co czyni go bardziej uniwersalnym narzędziem do strukturyzacji treści. Przykładowo, można użyć <div> do utworzenia sekcji nagłówka, stopki lub bocznego panelu na stronie. Zgodnie z standardami W3C, <div> jest elementem blokowym, co oznacza, że zajmuje całą szerokość dostępną w swoim rodzicu. W praktyce, <div> pozwala na efektywne zarządzanie układem strony i jest często stosowany w połączeniu z CSS w celu uzyskania pożądanej prezentacji wizualnej. Przykład zastosowania: <div class='container'>...</div> może być użyty do zawarcia innych elementów jak <h1>, <p> czy <img>. Dzięki temu można łatwo manipulować stylem i zachowaniem tych elementów, co czyni <div> kluczowym narzędziem w nowoczesnym web designie.

Pytanie 21

W PHP tablice asocjacyjne to struktury, w których

A. elementy tablicy są zawsze numerowane od zera
B. indeks może być dowolnym ciągiem znaków
C. w każdej pozycji tablicy znajduje się inna tablica
D. są co najmniej dwa wymiary
Tablice asocjacyjne w języku PHP są strukturami danych, które łączą unikalne klucze (indeksy) z wartościami. Klucze mogą być dowolnymi napisami, co oznacza, że programista ma dużą swobodę w definiowaniu, jak będą wyglądały indeksy. Na przykład, można używać nazw użytkowników jako kluczy, co pozwala na łatwe odwoływanie się do powiązanych danych. Przykład zastosowania tablic asocjacyjnych to przechowywanie informacji o użytkownikach w formacie: $użytkownicy = array('jan' => 'Jan Kowalski', 'ania' => 'Anna Nowak'). W praktyce, tablice asocjacyjne są niezwykle użyteczne, gdyż pozwalają na bardziej intuicyjny dostęp do danych, a także umożliwiają organizowanie danych w sposób, który jest zrozumiały dla programisty oraz osób współpracujących z kodem. Dobrą praktyką jest stosowanie nazw kluczy, które jednoznacznie opisują przechowywane dane, co zwiększa czytelność i ułatwia późniejsze modyfikacje w kodzie. Warto również dodać, że tablice asocjacyjne w PHP są implementowane jako hashe, co zapewnia szybki dostęp do wartości na podstawie kluczy. To czyni je efektywnym narzędziem w codziennej pracy programisty, szczególnie przy pracy z dużymi zbiorami danych.

Pytanie 22

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

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

Pytanie 23

Istnieje tabela o nazwie przedmioty, która zawiera kolumny ocena i uczenID. Jakie zapytanie należy wykorzystać, aby obliczyć średnią ocen ucznia z ID równym 7?

A. COUNT SELECT ocena FROM przedmioty WHERE uczenID=7;
B. AVG SELECT ocena FROM przedmioty WHERE uczenID=7;
C. SELECT AVG(ocena) FROM przedmioty WHERE uczenID=7;
D. SELECT COUNT(ocena) FROM przedmioty WHERE uczenID=7;
Odpowiedź SELECT AVG(ocena) FROM przedmioty WHERE uczenID=7; jest prawidłowa, ponieważ wykorzystuje funkcję agregującą AVG, która oblicza średnią wartość dla podanego zestawu danych. W tym przypadku skupiamy się na ocenach ucznia o ID równym 7, co osiągamy poprzez zastosowanie klauzuli WHERE. Funkcje agregujące, takie jak AVG, są standardowym narzędziem w SQL do analizy danych, szczególnie przydatnym w kontekście raportowania i analityki. Dzięki takiemu zapytaniu możemy szybko uzyskać średnią ocen ucznia, co może być wykorzystane do oceny jego postępów w nauce lub do podejmowania decyzji z zakresu pedagogiki w oparciu o zebrane dane. W praktyce, takie podejście jest zgodne z najlepszymi praktykami w pracy z bazami danych, pozwalając na wydobycie istotnych informacji z dużych zbiorów danych bez konieczności przetwarzania ich ręcznie. Użycie AVG w połączeniu z klauzulą GROUP BY mogłoby również być zastosowane, gdybyśmy chcieli uzyskać średnie oceny dla wielu uczniów jednocześnie, co dodatkowo podkreśla elastyczność i moc SQL w analizie danych.

Pytanie 24

Które z poniższych stwierdzeń dotyczy grafiki wektorowej?

A. Zawiera przedstawienie obrazu przy użyciu siatki składającej się z kolorowych pikseli ustawionych w pionie i poziomie na monitorze komputera, drukarce lub innym urządzeniu wyjściowym
B. Zapisywany obraz jest opisywany za pośrednictwem figur geometrycznych umieszczonych w układzie współrzędnych
C. Służy do zapisu cyfrowych zdjęć
D. Może być zapisywana w formacie JPG lub PNG
Grafika wektorowa to technika tworzenia i zapisywania obrazów przy użyciu figur geometrycznych, takich jak punkty, linie, krzywe i wielokąty, które są definiowane za pomocą równań matematycznych. W przeciwieństwie do grafiki rastrowej, która jest oparta na siatce pikseli, grafika wektorowa jest skalowalna bez utraty jakości, co oznacza, że obrazy mogą być powiększane lub pomniejszane bez widocznych zniekształceń. Przykłady formatów plików dla grafiki wektorowej to SVG (Scalable Vector Graphics) i AI (Adobe Illustrator). Umożliwia to zastosowanie w różnych dziedzinach, takich jak projektowanie logo, ilustracje, animacje i drukowanie, gdzie wymagana jest wysoka jakość i precyzja. Grafika wektorowa jest często preferowana w projektach wymagających dużej elastyczności, ponieważ zmiana wymiarów obiektu nie wiąże się z koniecznością ponownego rysowania lub retuszowania obrazu. Standardy takie jak W3C dla SVG definiują, jak powinny być tworzone i wyświetlane grafiki wektorowe w sieci, co zapewnia ich uniwersalność i zgodność z różnymi urządzeniami.

Pytanie 25

W kodzie HTML zamieszczono link do strony internetowej: ```strona Google``` Jakie dodatkowe zmiany należy wprowadzić, aby link otwierał się w nowym oknie lub zakładce przeglądarki, dodając do definicji linku odpowiedni atrybut?

A. target = "_blank"
B. rel = "external"
C. target = "_parent"
D. rel = "next"
Atrybuty rel = "next" oraz rel = "external" nie są odpowiednie dla celu otwierania strony w nowym oknie czy zakładce. Atrybut rel służy do określenia relacji między stroną źródłową a docelową, a nie do definiowania sposobu otwierania odnośników. Wartość "next" jest używana w kontekście paginacji, oznaczającej, że dany link prowadzi do następnej strony w serii, co nie ma nic wspólnego z otwieraniem w nowym oknie. Podobnie, "external" jest używane do wskazania, że link prowadzi do zewnętrznego źródła, ale nie definiuje, jak ma być otwierany. Otwieranie odnośników bez odpowiednich atrybutów, które kontrolują sposób ich wyświetlania, może prowadzić do frustracji użytkowników, gdyż są oni zmuszeni do korzystania z przycisków „wstecz” przeglądarki, aby wrócić do poprzedniej strony. Umożliwienie otwierania w nowym oknie może być lepszym rozwiązaniem dla zewnętrznych źródeł, co jest często praktykowane w standardach webowych. Użytkownik powinien mieć kontrolę nad tym, czy chce opuścić obecną stronę, czy też nie. Dlatego kluczowe jest zrozumienie znaczenia i zastosowania atrybutu target w kontekście projektowania stron internetowych oraz odpowiednich standardów, aby poprawić doświadczenia użytkowników.

Pytanie 26

CMYK to zestaw czterech podstawowych kolorów używanych w druku:

A. turkusowego, błękitnego, białego, różowego
B. turkusowego, purpurowego, żółtego, czarnego
C. czerwonego, purpurowego, żółtego, szarego
D. turkusowego, purpurowego, białego, czarnego
Wśród pozostałych odpowiedzi znajdują się kolory, które nie są częścią modelu CMYK. Przykładowo, wykorzystanie białego jako jednego z podstawowych kolorów jest błędne, ponieważ w druku subtraktywnym biały kolor uzyskuje się poprzez brak nałożenia farby, a nie przez jej obecność. Ponadto, odpowiedzi zawierające szary również są niepoprawne, ponieważ szary nie jest podstawowym kolorem w modelu CMYK, a jego uzyskanie wymaga mieszania pozostałych kolorów w odpowiednich proporcjach. W druku istotne jest, aby zrozumieć, że kolory muszą pochodzić z farb o wysokiej czystości, które efektywnie współpracują ze sobą podczas procesu drukowania. Również, obecność turkusowego w tych odpowiedziach jest myląca, ponieważ w kontekście CMYK chodzi o cyjan, który ma zupełnie inną charakterystykę kolorystyczną. Znajomość właściwych terminów i kolorów w druku jest niezbędna, aby unikać pomyłek w projektowaniu oraz druku materiałów, co może prowadzić do znacznych błędów w końcowym produkcie.

Pytanie 27

Formularz główny używany do poruszania się w bazie danych pomiędzy formularzami i kwerendami dostępnymi w systemie określany jest jako formularz

A. pierwotnym
B. głównym
C. sterującym
D. zagnieżdżonym
Odpowiedzi takie jak 'główny', 'pierwotny' czy 'zagnieżdżony' nie odpowiadają rzeczywistości funkcjonalnej formularzy w systemach baz danych. Formularz główny może być mylony z formularzem sterującym, jednakże jego funkcjonalność jest zazwyczaj ograniczona do wyświetlania danych w jednym kontekście, bez zapewnienia możliwości nawigacji między różnymi sekcjami bazy. Z kolei termin 'pierwotny' nie jest standardowym określeniem w kontekście formularzy; może prowadzić do nieporozumień związanych z terminologią baz danych, gdzie termin 'pierwotny klucz' zyskuje znaczenie w innej sferze. Formularz zagnieżdżony odnosi się do formularzy umieszczonych wewnątrz innych formularzy, co jest zupełnie inną koncepcją i nie ma związku z ogólną nawigacją po systemie. Typowe błędy myślowe, które prowadzą do takich odpowiedzi, obejmują mylenie różnych typów formularzy i ich funkcji. Użytkownicy powinni być świadomi, że prawidłowe nazewnictwo i zrozumienie kontekstu jest kluczowe w pracy z bazami danych, co może wpływać na efektywność działania oraz na jakość wytwarzanych aplikacji.

Pytanie 28

Co oznacza w języku C++ przedstawiony fragment kodu?

struct CONTACT
{
std::string nazwisko;
std::string telefon;
int numer;
};
A. Organizację zmiennych
B. Interakcję między zmiennymi lokalnymi a globalnymi
C. Typ strukturalny składający się z trzech pól
D. Trzy niezależne zmienne
W C++ struktury to takie narzędzia do grupowania danych, co już wiesz. Jednak w twoim opisie pojawił się błąd dotyczący zmiennych globalnych i lokalnych. To nie do końca ma związek z tym, co robi struktura. Globalne zmienne to te, które możesz używać wszędzie w programie, a lokalne tylko w danym bloku kodu. Hierarchia zmiennych to inny temat, bo zazwyczaj chodzi o klasy i dziedziczenie, a nie o struktury. W przypadku CONTACT, wszystkie pola są równorzędne, więc nie ma tam żadnej hierarchii. Twoje stwierdzenie, że te zmienne są niepowiązane, również jest nietrafione, bo z definicji struktury wszystkie te pola skupiają się na tym samym obiekcie. To, że struktury grupują dane, to jedna z ich najważniejszych cech, którą trzeba mieć na uwadze, żeby dobrze wykorzystywać możliwości C++.

Pytanie 29

Jaką wiadomość należy umieścić w przedstawionym fragmencie kodu PHP zamiast znaków zapytania? $a=mysql_connect('localhost','adam','mojeHasło'); if(!$a) echo "?????????????????????????";

A. Wybrana baza danych nie istnieje
B. Błąd w przetwarzaniu zapytania SQL
C. Rekord został pomyślnie dodany do bazy
D. Błąd połączenia z serwerem SQL
Wybranie innej opcji niż 'Błąd połączenia z serwerem SQL' jest mylne, ponieważ każda z tych odpowiedzi nie odnosi się do kontekstu błędu połączenia z bazą danych. Stwierdzenie 'Wybrana baza nie istnieje' sugeruje, że połączenie z serwerem SQL zostało nawiązane, ale nie udało się znaleźć konkretnej bazy danych. W rzeczywistości jednak błąd przy próbie połączenia z serwerem SQL jest czymś innym, ponieważ w momencie, gdy połączenie się nie udaje, nie można jeszcze mówić o istnieniu czy nieistnieniu bazy. Kolejna opcja, 'Pomyślnie dodano rekord do bazy', jest oczywiście błędna, ponieważ w przypadku braku połączenia nie ma możliwości dodania jakiegokolwiek rekordu. Ta odpowiedź myli koncepcję pomyślnego wykonania operacji z brakiem połączenia z bazą danych. Ostatecznie, 'Błąd przetwarzania zapytania SQL' również jest niepoprawny w tym kontekście, ponieważ odnosi się do sytuacji, w której połączenie z bazą danych zostało nawiązane, ale zapytanie SQL nie mogło zostać przetworzone z powodu błędów składniowych, braku uprawnień lub innych problemów. Jednak w przypadku problemu z połączeniem nie dochodzi nawet do etapu przetwarzania zapytania, co czyni tę odpowiedź nieadekwatną.

Pytanie 30

W CSS, aby stylizować tekst przez dodanie podkreślenia dolnego lub górnego, należy użyć atrybutu

A. text-align
B. text-indent
C. text-decoration
D. text-transform
Atrybut text-align jest używany do określenia wyrównania tekstu w elemencie. Może przyjmować wartości takie jak left, right, center oraz justify, co oznacza odpowiednio wyrównanie do lewej, prawej, wyśrodkowane oraz justyfikowane. Chociaż jest to kluczowy element stylizacji tekstu, nie ma związku z dodawaniem efektów dekoracyjnych, takich jak podkreślenie. Z kolei text-indent służy do wprowadzenia wcięcia na początku linii tekstu, co jest szczególnie przydatne w przypadku akapitów. Efekt ten nie ma żadnego związku z dekorowaniem tekstu, a jedynie z jego rozmieszczeniem na stronie. Tekst może być wcięty, ale bez efektów dekoracyjnych, co czyni ten atrybut nieodpowiednim do podkreślania. Text-transform, z drugiej strony, jest używany do zmiany wielkości liter w tekście. Umożliwia konwersję tekstu na wersaliki, małe litery lub typowe wielkości, ale nie pozwala na dodanie żadnych efektów graficznych, jak podkreślenie czy nadkreślenie. W związku z tym, wszystkie wymienione atrybuty nie są właściwe do formatowania tekstu poprzez podkreślenie, ponieważ koncentrują się na wyrównaniu, wcięciu lub transformacji tekstu, a nie na jego dekorowaniu.

Pytanie 31

Które z wymienionych par znaczników HTML mają identyczny efekt wizualny na stronie internetowej, jeśli nie zastosowano żadnych stylów CSS?

A. <b> i <big>
B. <b> i <strong>
C. <meta> oraz <title>
D. <p> oraz <h2>
Odpowiedź <b> i <strong> jest poprawna, ponieważ oba znaczniki służą do wyróżniania tekstu, przy czym nie mają one różnicy w wizualizacji, jeśli nie zastosowano żadnych stylów CSS. Z punktu widzenia semantyki HTML, <strong> jest znacznikiem, który wyraża większe znaczenie dla zawartego w nim tekstu, co jest korzystne dla dostępności oraz SEO, ale wizualnie, bez dodatkowych stylów, obie etykiety wykazują te same cechy. Przykładowo, można ich używać w sytuacjach, gdy chcemy wyróżnić ważne informacje w artykule lub nagłówku. Zastosowanie tych znaczników zgodnie z dobrymi praktykami HTML pozwala na lepsze zrozumienie struktury strony przez wyszukiwarki oraz czytniki ekranu, co ma znaczenie w kontekście dostępności. W związku z tym, wyróżnianie tekstu za pomocą <b> i <strong> jest nie tylko estetyczne, ale także funkcjonalne, wspierając zarówno użytkowników, jak i algorytmy wyszukiwania.

Pytanie 32

W języku PHP zapis // służy do

A. używania tablicy superglobalnej
B. dodawania komentarza jednoliniowego
C. zastosowania operatora dzielenia bez reszty
D. dodawania komentarza wieloliniowego
Zastosowanie tablicy superglobalnej nie ma bezpośredniego związku z używaniem znaku //. Superglobalne tablice w PHP, takie jak $_POST, $_GET czy $_SESSION, służą do przechowywania i wymiany danych pomiędzy stronami, ale nie mają nic wspólnego z komentarzami. Wstawianie komentarza wieloliniowego jest poprawnym sposobem dodawania dłuższych wyjaśnień w kodzie, jednak znakiem // nie uzyskujemy tego efektu, a raczej ograniczamy się do komentarzy jednoliniowych. Z kolei zastosowanie operatora dzielenia bez reszty również nie jest powiązane z komentarzami. Operator / służy do dzielenia wartości, a jego użycie nie wymaga znaków // do oznaczania komentarzy. W środowisku programistycznym często można spotkać mylne przekonania, że znaki komentarza mogą pełnić inne funkcje, co prowadzi do nieporozumień w stosowaniu kodu. Prawidłowe rozumienie komentarzy w PHP jest kluczowe dla tworzenia zrozumiałego i łatwego do utrzymania kodu. Nieprawidłowe przypisanie funkcji komentarzy do innych elementów języka PHP może prowadzić do poważnych błędów w kodzie oraz trudności w jego analizie przez innych programistów.

Pytanie 33

Poniżej przedstawiono fragment kodu języka HTML. Jest on definicją listy:

<ol>
  <li>punkt 1</li>    <li>punkt 2</li>
  <ul>
    <li>podpunkt1</li>
    <ul>    <li>podpunkt2</li>  <li>podpunkt3</li>  </ul>
  </ul>
  <li>punkt3</li>
</ol>

A.

  1. punkt 1
  2. punkt 2
    • podpunkt1
    • podpunkt2
    • podpunkt3
  3. punkt3

B.

  1. punkt 1
  2. punkt 2
  3. punkt3
    • podpunkt1
    • podpunkt2
    • podpunkt3

C.

  1. punkt 1
  2. punkt 2
    • podpunkt1
      • podpunkt2
      • podpunkt3
  3. punkt3

D.

  • punkt 1
  • punkt 2
    1. podpunkt1
      • podpunkt2
      • podpunkt3
  • punkt3
A. A.
B. B.
C. C.
D. D.
Twoja odpowiedź niestety nie była prawidłowa. Kluczową częścią zadania była interpretacja struktury kodu HTML prezentującej listę numerowaną (<ol>) z trzema elementami listy (<li>). W szczególności, zwróć uwagę na to, że w drugim elemencie listy znajduje się zagnieżdżona lista nieuporządkowana (<ul>) z trzema podpunktami. Fakt, że podpunkty są oznaczone kropkami, jest charakterystyczny dla listy nieuporządkowanej, co sugerowało, że prawidłową odpowiedzią jest C. W przypadku innych odpowiedzi, nie odzwierciedlały one prawidłowo struktury przedstawionego kodu, co mogło wynikać z niezrozumienia znaczenia poszczególnych tagów HTML. Pamiętaj, że w HTML istotne jest zrozumienie, jak tagi są zagnieżdżone w sobie, tworząc strukturę strony. Przy dalszej nauce zwracaj uwagę na to, jak poszczególne elementy HTML są ze sobą powiązane.

Pytanie 34

Który atrybut należy dodać do znacznika <video>, aby wyciszyć dźwięk odtwarzanego w przeglądarce filmu?

<video>
    <source src="film.mp4" type="video/mp4">
</video>
A. autoplay
B. controls
C. muted
D. loop
Twoja odpowiedź nie jest poprawna. Wybór atrybutu 'loop', 'autoplay' lub 'controls' nie spowoduje wyłączenia dźwięku filmu. Atrybut 'loop' jest stosowany do zapętlenia odtwarzania filmu, co oznacza, że film będzie odtwarzany ponownie, gdy dojdzie do końca. Atrybut 'autoplay' powoduje, że film zaczyna się odtwarzać automatycznie, jak tylko strona zostanie załadowana. Natomiast atrybut 'controls' dodaje elementy sterujące do filmu, takie jak przyciski do odtwarzania/pauzowania filmu, regulacji głośności, itp. żaden z tych atrybutów nie spowoduje wyłączenia dźwięku. Aby to osiągnąć, należy użyć atrybutu 'muted'. To ważne dla użytkownika, aby miał kontrolę nad dźwiękiem na stronie i aby nie był zaskoczony automatycznym odtwarzaniem dźwięku bez jego zgody. Dobrą praktyką jest domyślne wyłączenie dźwięku, ale pozostawienie użytkownikowi możliwości jego włączenia.

Pytanie 35

W SQL, aby dodać nowy wiersz do bazy danych, należy użyć polecenia

A. INSERT INTO
B. CREATE ROW
C. CREATE INTO
D. SELECT ROW
Wybór innych opcji zamiast 'INSERT INTO' wskazuje na nieporozumienie dotyczące podstawowych komend SQL. 'SELECT ROW' nie jest poprawnym poleceniem w SQL i nie służy do wstawiania danych. W SQL 'SELECT' jest używane do pobierania danych z bazy, a nie do ich wstawiania. Takie myślenie może prowadzić do błędnego założenia, że wystarczy jedynie wybrać dane, aby je dodać. Z kolei 'CREATE ROW' i 'CREATE INTO' są także niepoprawnymi komendami, ponieważ nie istnieją w standardzie SQL. 'CREATE' jest używane do definicji nowych struktur, takich jak tabele czy bazy danych, a nie do operacji wstawiania danych. Użytkownicy mogą mylić proces tworzenia z procesem dodawania, co prowadzi do zamieszania w zakresie funkcji każdej z komend. To zrozumienie jest kluczowe, ponieważ skutkuje tym, że nieprawidłowe komendy mogą prowadzić do błędów przy próbie interakcji z bazą danych, a w konsekwencji do utraty danych lub naruszenia integralności bazy. Właściwe przyswojenie funkcji 'INSERT INTO' jest zatem niezbędne dla efektywnej pracy z bazami danych.

Pytanie 36

Jakie rozwiązanie należy zastosować w przechowywaniu danych, aby przyspieszyć wykonywanie zapytań w bazie danych?

A. Klucze podstawowe.
B. Zasady.
C. Domyślne wartości.
D. Indeksy.
Indeksy są kluczowym elementem optymalizacji wydajności baz danych. Działają one jak wskaźniki, które pozwalają systemowi zarządzania bazą danych (DBMS) szybko zlokalizować dane bez potrzeby przeszukiwania całej tabeli. Indeksy są szczególnie przydatne przy wykonywaniu zapytań, które filtrują, sortują lub łączą dane z różnych tabel. Na przykład, w przypadku dużych zbiorów danych, dodanie indeksu do kolumny, która jest często używana w klauzulach WHERE, może znacznie skrócić czas odpowiedzi. W standardzie SQL, można tworzyć indeksy za pomocą polecenia CREATE INDEX, co pozwala na zdefiniowanie, które kolumny mają być indeksowane. Warto jednak pamiętać, że nadmiar indeksów może prowadzić do spowolnienia operacji zapisu, dlatego ważne jest, aby dobrze przemyśleć, które kolumny powinny być indeksowane. Użycie indeksów jest szczególnie zalecane w przypadku aplikacji, które często wykonują zapytania na dużych zbiorach danych, takich jak systemy e-commerce czy aplikacje analityczne.

Pytanie 37

Jakie uprawnienia posiada użytkownik jan po wykonaniu poniższych poleceń na bazie danych? ```GRANT ALL PRIVILEGES ON klienci TO jan;``` ```REVOKE SELECT, INSERT, UPDATE, DELETE ON klienci FROM jan;```

A. Będzie miał możliwość zmiany struktury tabeli klienci
B. Będzie miał możliwość wstawiania rekordów do tabeli klienci
C. Będzie miał możliwość usuwania rekordów z tabeli klienci
D. Będzie miał możliwość wyszukiwania danych w tabeli klienci
Użytkownik jan po wykonaniu podanych poleceń SQL nie będzie miał możliwości usuwania rekordów z tabeli klienci. W rzeczywistości polecenie GRANT ALL PRIVILEGES na początku miało na celu nadanie wszystkich uprawnień do tej tabeli, jednak po wykonaniu polecenia REVOKE SELECT, INSERT, UPDATE, DELETE odebrano mu możliwość wykonywania podstawowych operacji na danych, takich jak wstawianie, usuwanie czy aktualizowanie rekordów. Jest to częsty błąd w myśleniu, gdzie użytkownicy mogą sądzić, że uprawnienia ogólne obejmują również wszystkie podkategorie, nawet jeśli nie zostały określone. Podobnie, możliwość wyszukiwania danych w tabeli klienci również została usunięta z uwagi na odebranie uprawnienia SELECT. To pokazuje, jak kluczowe jest zrozumienie struktury uprawnień w SQL, gdzie każdy typ uprawnienia ma swoje własne znaczenie. W praktyce, w wielu organizacjach ważne jest, aby administracja bazą danych była przeprowadzana zgodnie z zasadą najmniejszych uprawnień, aby ograniczyć dostęp do krytycznych operacji oraz zminimalizować ryzyko błędów i incydentów związanych z bezpieczeństwem. Z tego powodu, odpowiedzi sugerujące, że jan ma jakieś uprawnienia do wstawiania lub usuwania danych w tabeli klienci, są nieprawidłowe, ponieważ zostały one jasno odwołane w ostatnim poleceniu.

Pytanie 38

Jaką metodę przesyłania danych za pomocą formularza do kodu PHP należy uznać za najbardziej bezpieczną dla poufnych informacji?

A. Metoda POST, przy użyciu protokołu HTTPS
B. Metoda POST, przy użyciu protokołu HTTP
C. Metoda GET, przy użyciu protokołu HTTPS
D. Metoda GET, przy użyciu protokołu HTTP
Wybór metody GET za pomocą protokołu HTTP do przesyłania poufnych danych wiąże się z poważnymi zagrożeniami dla bezpieczeństwa. Metoda GET przesyła dane jako część adresu URL, co oznacza, że mogą one być łatwo widoczne w historii przeglądania użytkownika i logach serwera. Oznacza to, że jakiekolwiek dane osobowe lub informacje finansowe mogą zostać przypadkowo ujawnione osobom trzecim. Przykładowo, jeśli użytkownik wprowadza swoje hasło w formularzu używając metody GET, to jego hasło będzie widoczne w pasku adresu przeglądarki, co stwarza ryzyko kradzieży tożsamości. Protokół HTTP dodatkowo nie zapewnia żadnego szyfrowania, co czyni go podatnym na ataki typu „man-in-the-middle”, w których złośliwy użytkownik może przechwycić przesyłane dane. Praktyki bezpieczeństwa wymagają, aby poufne informacje były zawsze przesyłane za pomocą bezpiecznego połączenia oraz odpowiedniej metody, co czyni odpowiedzi na bazie HTTP jako nieodpowiednie. Często spotykanym błędem jest mylenie metod GET i POST; niektórzy użytkownicy mogą nie dostrzegać różnicy i nie zdawać sobie sprawy z tego, jak ważne jest odpowiednie zabezpieczenie komunikacji w sieci. Dlatego kluczowe jest, aby przy przesyłaniu wrażliwych danych zawsze korzystać z HTTPS oraz metody POST, co stanowi standard w branży internetowej.

Pytanie 39

Jak można umieścić komentarz w kodzie PHP, używając odpowiednich symboli?

A. /* ... */
B. <? ... ?>
C. /? ... ?/
D. <!-- ... -->
W języku PHP, komentarze można umieszczać w kodzie przy użyciu znaku '/*' na początku i '*/' na końcu. Jest to standardowy sposób tworzenia komentarzy blokowych, który pozwala na dodanie dłuższych opisów lub notatek. Komentarze te są ignorowane przez interpreter PHP, co oznacza, że nie wpływają na działanie programu. Użycie komentarzy blokowych jest szczególnie przydatne w sytuacjach, gdy chcemy wyłączyć większe fragmenty kodu lub dokumentować skomplikowane algorytmy. Można również stosować komentarze jednolinijkowe, które rozpoczyna się od znaku '//'. Ważne jest, aby stosować komentarze w sposób przemyślany, aby poprawić czytelność kodu oraz ułatwić jego utrzymanie. Warto zaznaczyć, że zgodnie z zaleceniami standardów PEP8 i PSR-12, dobrze udokumentowany kod jest kluczowy dla jego długoterminowej użyteczności i współpracy w zespole programistycznym. Przykładem użycia komentarza blokowego może być: /* To jest komentarz blokowy, który wyjaśnia poniższy kod. */

Pytanie 40

W systemie baz danych wykonano następujące operacje dotyczące uprawnień użytkownika adam: GRANT ALL PRIVILEGES ON klienci To adam REVOKE SELECT, INSERT, UPDATE ON klienci FROM adam. Jakie prawa będzie miał użytkownik adam po zrealizowaniu tych operacji?

A. aktualizowania danych oraz przeglądania tabeli klienci
B. tworzenia tabeli klienci oraz wprowadzania do niej danych
C. usunięcia tabeli lub jej danych
D. przeglądania tabeli klienci i dodawania do niej rekordów
Odpowiedzi, które sugerują, że użytkownik adam ma inne prawa, są niepoprawne z technicznego punktu widzenia. Użytkownik ten nie może aktualizować danych ani przeglądać tabeli klienci, ponieważ prawa do aktualizacji i przeglądania zostały odebrane przez polecenie REVOKE. Oznacza to, że wszystkie operacje wymagające dostępu do odczytu oraz modyfikacji danych w tabeli klienci są dla niego zablokowane. Kolejna nieprawidłowa odpowiedź sugeruje, że adam ma prawo do tworzenia tabeli klienci, co jest również błędne, ponieważ w kontekście przyznanych uprawnień użytkownik nie uzyskał prawa do tworzenia nowych obiektów w bazie danych. Ostatecznie, odpowiedzi te nie uwzględniają, że konkretne działania, takie jak wstawianie nowych rekordów, są zablokowane przez REVOKE, co skutkuje brakiem możliwości dodawania danych do tabeli klienci. Wnioskując, użytkownik adam ma jedynie prawo do usuwania rekordów, a nie do przeglądania, aktualizowania czy tworzenia nowych tabel, co jest kluczowe przy zarządzaniu dostępem do baz danych.