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: 10 czerwca 2026 19:53
  • Data zakończenia: 10 czerwca 2026 20:02

Egzamin niezdany

Wynik: 9/40 punktów (22,5%)

Wymagane minimum: 20 punktów (50%)

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

Jakim poleceniem można uzyskać konfigurację serwera PHP, w tym dane takie jak: wersja PHP, system operacyjny serwera oraz wartości przedefiniowanych zmiennych?

A. phpcredits();
B. phpinfo();
C. echo phpversion();
D. print_r(ini_get_all());
Funkcja phpinfo() jest standardowym narzędziem w PHP, które dostarcza szczegółowych informacji o konfiguracji serwera oraz wersji PHP, która jest aktualnie używana. Wywołanie tej funkcji generuje stronę HTML z informacjami o ustawieniach PHP, w tym o zainstalowanych rozszerzeniach, włączonych opcjach oraz wartości przedefiniowanych zmiennych. Dodatkowo, phpinfo() prezentuje szczegóły dotyczące środowiska serwera, takie jak system operacyjny, serwer WWW oraz zmienne środowiskowe. Praktycznie, jest to niezwykle przydatne narzędzie dla programistów oraz administratorów serwerów, które umożliwia szybkie zdiagnozowanie problemów z konfiguracją czy identyfikację, które rozszerzenia PHP są dostępne. W kontekście bezpieczeństwa najlepiej jest używać tej funkcji tylko w środowisku developerskim lub lokalnym, aby uniknąć wycieku szczegółowych informacji o serwerze na produkcji. Zgodnie z najlepszymi praktykami, po zakończeniu diagnostyki, powinno się dezaktywować dostęp do tego typu informacji.

Pytanie 2

Co robi polecenie:

ALTER TABLE miasta ADD kod text;
?
A. dodaje dwie kolumny: kod i text
B. dodaje do tabeli kolumnę kod typu text
C. zmienia nazwę kolumny kod na text
D. zmienia nazwę tabeli miasta na kod
Polecenie ALTER TABLE miasta ADD kod text; dodaje do tabeli miasta nową kolumnę o nazwie kod i typie text. W składni ADD nazwa typ pierwsze słowo to nazwa kolumny, a drugie – jej typ danych. Dlatego polecenie dodaje kolumnę kod typu text.

Pytanie 3

Jaką funkcję pełni atrybut value w polu formularza, np. <input type="text" name="name" value="value">?

A. ustawia pole jako tylko do odczytu
B. określa domyślną wartość pola
C. ogranicza maksymalną długość pola
D. określa nazwę pola
Atrybut value w polu formularza ustala jego wartość początkową – tekst, który pojawia się w polu zaraz po załadowaniu strony i zostanie wysłany, jeśli użytkownik go nie zmieni. W przykładzie value="value" pole tekstowe od razu zawiera słowo „value”. Dlatego value określa domyślną wartość pola.

Pytanie 4

Zarządzanie procesem przekształcania kodu źródłowego stworzonego przez programistę na kod maszynowy, który jest zrozumiały dla komputera, nosi nazwę

A. analizowanie
B. wdrażanie
C. kompilowanie
D. rozpoczynanie
Kompilowanie to proces, w którym kod źródłowy, napisany w języku programowania wysokiego poziomu, jest przekształcany na kod maszynowy, który może być zrozumiany i wykonany przez komputer. Działa to na zasadzie analizy składniowej i semantycznej kodu źródłowego, a następnie generowania odpowiednich instrukcji dla procesora. Przykładem narzędzi, które realizują ten proces, są kompilatory, takie jak GCC dla języka C czy javac dla języka Java. Kompilowanie ma kluczowe znaczenie w programowaniu, ponieważ pozwala na optymalizację kodu, co zwiększa wydajność aplikacji. Dobre praktyki wskazują, że kompilowanie powinno być częścią cyklu programowania, a regularne kompilowanie kodu pomaga w szybszym wykrywaniu błędów oraz zapewnia, że kod jest zawsze zgodny z wymaganiami projektowymi. Warto również zaznaczyć, że proces kompilacji może obejmować różne etapy, takie jak prekompilacja, generacja kodu pośredniego oraz linkowanie, co czyni go złożonym i wieloetapowym działaniem.

Pytanie 5

Która reguła CSS pozwala stosować różne style w zależności od szerokości ekranu (kluczowa w RWD)?

A.
@import
B.
@font-face
C.
@keyframes
D.
@media
Reguła @media (media query) pozwala uzależnić style od warunków urządzenia – najczęściej od szerokości okna. Zapisuje się w niej warunek, np. @media (max-width: 600px) { ... }, a style w środku zadziałają tylko, gdy jest on spełniony. To podstawowe narzędzie RWD: dzięki niemu ten sam dokument inaczej wygląda na telefonie i na monitorze. Dlatego kluczowa dla responsywności jest reguła @media.

Pytanie 6

Po wykonaniu kodu PHP zostanie wyświetlona aktualna data zawierająca jedynie
echo date("Y");

A. dzień i miesiąc
B. rok
C. dzień
D. miesiąc i rok
Odpowiedź \"rok\" jest prawidłowa, ponieważ funkcja `date()` w PHP, w przypadku użycia formatu \"Y\", zwraca czterocyfrowy rok bieżącej daty. Funkcja ta jest kluczowa w kontekście programowania w PHP, szczególnie gdy chodzi o zarządzanie datami i czasem. W praktyce, używanie tej funkcji jest niezwykle istotne w aplikacjach internetowych, gdzie często jest potrzebne wyświetlenie daty w różnych formach. Na przykład, w systemach zarządzania treścią (CMS) można stosować funkcję `date()` do automatycznego generowania daty publikacji artykułów. Warto również zaznaczyć, że PHP oferuje różne formaty dla dat, a stosowanie standardów, takich jak format ISO 8601, może być przydatne w przypadku wymiany danych z innymi systemami. Używanie `date("Y")` to dobra praktyka, aby uniknąć problemów z lokalizacją i zapewnić spójność w wyświetlaniu daty na stronach internetowych."

Pytanie 7

Dostępna jest tabela z danymi o mieszkaniach, zawierająca kolumny: adres, metraż, liczba_pokoi, standard, status, cena. Wykonanie poniższej kwerendy SQL SELECT spowoduje wyświetlenie

SELECT metraz, cena FROM mieszkania WHERE ile_pokoi > 3;
A. Wszystkie informacje o tych mieszkaniach, które mają minimum 3 pokoje
B. Wszystkie informacje poza adresem tych mieszkań, które mają więcej niż 3 pokoje
C. Metraż oraz koszt tych mieszkań, które mają przynajmniej 3 pokoje
D. Metraż oraz koszt tych mieszkań, które mają więcej niż 3 pokoje
W tym zapytaniu SQL chodzi o to, żeby ściągnąć konkretne dane z tabeli mieszkania. Używamy klauzuli SELECT, dlatego wybieramy tylko te kolumny, które nas interesują, czyli metraż i cena. I to wszystko bierzemy z tabeli mieszkania, co mamy w klauzuli FROM. Jeszcze dodajemy filtr WHERE, który mówi, że bierzemy tylko te mieszkania, które mają więcej niż trzy pokoje. To naprawdę dobra strategia, bo dzięki temu dokładnie widzimy, co nas interesuje. Takie zapytanie przydaje się w analizach rynku nieruchomości, bo można porównywać ceny mieszkań z większą ilością pokoi. Ogólnie mówiąc, SQL jest super narzędziem do pracy z danymi, bo pozwala nam szybko i efektywnie wyciągać to, co jest dla nas ważne. Wiedza na temat takich zapytań to podstawa, zwłaszcza w pracy z dużymi bazami danych i generowaniu różnych raportów.

Pytanie 8

W języku HTML zdefiniowano listę:

<ol>
  <li>biały</li>
  <li>czerwony
    <ul>
      <li>różowy</li>
      <li>pomarańczowy</li>
    </ul></li>
  <li>niebieski</li>
</ol>
A. Jest to lista punktowana z zagłębioną listą numerowaną.
B. Jest to lista numerowana z zagłębioną listą punktowaną.
C. Nie ma zagłębień i jest punktowana, wyświetla 5 punktów.
D. Nie ma zagłębień i jest numerowana, słowo "niebieski" ma przyporządkowany numer 5.
Dobra robota! Twoja odpowiedź jest na miejscu. Ta lista HTML, co widziałeś na obrazku, to faktycznie lista uporządkowana, stworzona przy pomocy znacznika <ol>. Takie listy są numerowane, co sprawia, że łatwiej je śledzić. W HTML mamy dwa rodzaje list: uporządkowane, czyli numerowane z <ol>, i nieuporządkowane, które robimy z <ul> i one są punktowane. Fajnie, że pamiętasz o CSS, bo dzięki niemu możemy dostosować wygląd tych list. Ogólnie, lista numerowana zaczyna od 1 i idzie dalej (1, 2, 3 itd.), a punktowana pokazuje kropki. Co ciekawe, można też zagnieżdżać listy, co daje nam takie wielopoziomowe struktury. Dlatego w tej liście mamy wewnątrz punktowaną, która jest stworzona z <ul>. I pamiętaj, że używanie właściwych znaczników ma znaczenie – szczególnie dla osób korzystających z czytników ekranu.

Pytanie 9

W bazie danych wykonano następujące polecenia dotyczące uprawnień użytkownika adam. Po ich realizacji użytkownik adam uzyska uprawnienia do

GRANT ALL PRIVILEGES ON klienci TO adam
REVOKE SELECT, INSERT, UPDATE ON klienci FROM adam
A. tworzenia tabeli klienci oraz modyfikowania w niej danych
B. modyfikowania danych i przeglądania tabeli klienci
C. usuwania tabeli lub jej rekordów
D. przeglądania tabeli klienci oraz dodawania do niej sektorów
Analizując dostarczone polecenia SQL kluczowe jest zrozumienie jakie uprawnienia zostały przyznane użytkownikowi adam. Polecenie GRANT ALL PRIVILEGES przyznaje pełen zakres uprawnień do tabeli klienci co obejmuje operacje takie jak SELECT INSERT UPDATE DELETE oraz DROP. Jednakże w następnym kroku za pomocą polecenia REVOKE ograniczono specyficzne uprawnienia takie jak SELECT INSERT i UPDATE pozostawiając jedynie te które nie zostały wymienione co w tym przypadku oznacza usunięcie rekordów DELETE oraz całej tabeli DROP. Niezrozumienie znaczenia poszczególnych poleceń SQL oraz ich interakcji prowadzi do błędnych wniosków dotyczących zakresu możliwości użytkownika. Warto zwrócić uwagę że uprawnienia takie jak SELECT umożliwiają jedynie przeglądanie danych co nie jest zgodne z usunięciem danych ani tabeli. Podobnie INSERT pozwala na dodawanie nowych rekordów a nie ich usuwanie. UPDATE z kolei umożliwia modyfikację istniejących danych bez ich usunięcia. W kontekście zarządzania bazą danych ważne jest precyzyjne rozumienie jakie prawa są przyznawane i jakie konsekwencje to niesie dla bezpieczeństwa i operacyjności systemu bazodanowego. Niewłaściwe przypisanie uprawnień może prowadzić do nieautoryzowanego dostępu lub modyfikacji danych co stanowi poważne zagrożenie dla integralności danych oraz stabilności systemu. Zrozumienie różnic między poszczególnymi uprawnieniami jest fundamentalne dla zarządzania bazą danych zgodnie z najlepszymi praktykami branżowymi i standardami bezpieczeństwa informatycznego. Poprawna interpretacja poleceń SQL jest kluczowa dla zapewnienia odpowiedniego poziomu kontroli dostępu i ochrony danych w systemach bazodanowych.

Pytanie 10

W systemie MySQL należy użyć polecenia REVOKE, aby odebrać użytkownikowi anna możliwość wprowadzania zmian tylko w definicji struktury bazy danych. Odpowiednie polecenie do zrealizowania tej operacji ma formę

A. REVOKE CREATE UPDATE DROP ON tabela1 FROM 'anna'@'localhost'
B. REVOKE CREATE INSERT DELETE ON tabela1 FROM 'anna'@'localhost'
C. REVOKE ALL ON tabela1 FROM 'anna'@'localhost'
D. REVOKE CREATE ALTER DROP ON tabela1 FROM 'anna'@'localhost'
Wszystkie inne odpowiedzi są nieprawidłowe z kilku powodów. W pierwszej z nich, 'REVOKE ALL ON tabela1 FROM 'anna'@'localhost'', przyznawane są wszystkie uprawnienia, co jest sprzeczne z intencją odebrania tylko określonych praw. Użytkownicy powinni być ograniczani jedynie w tych obszarach, gdzie to konieczne. Z kolei odpowiedź 'REVOKE CREATE UPDATE DROP ON tabela1 FROM 'anna'@'localhost'' zawiera 'UPDATE', co jest związane z danymi, a nie strukturą bazy, co również czyni ją niewłaściwą. Odmowa praw do aktualizacji danych nie jest odpowiednia w kontekście modyfikacji struktury bazy. Z kolei opcja 'REVOKE CREATE INSERT DELETE ON tabela1 FROM 'anna'@'localhost'' ponownie nie odnosi się do struktury bazy, ponieważ odnosi się do manipulacji danymi, nie do struktury. Kluczowym błędem w tym kontekście jest mylenie uprawnień związanych z danymi z uprawnieniami związanymi ze strukturą bazy danych. W zarządzaniu uprawnieniami w MySQL istotne jest zrozumienie różnicy pomiędzy tymi kategoriami, aby skutecznie zabezpieczyć bazę danych. W praktyce dobrym podejściem jest wdrożenie zasady minimalnych uprawnień, co zmniejsza ryzyko nieautoryzowanych zmian w strukturze i danych bazy.

Pytanie 11

Aby zaimportować plik z danymi SQL do bazy danych MySQL, można użyć narzędzia:

A. Symfony 3
B. TotalCommander
C. phpMyAdmin
D. FileZilla
phpMyAdmin to popularne, dostępne przez przeglądarkę narzędzie do administrowania bazą MySQL/MariaDB. Pozwala tworzyć bazy i tabele, przeglądać i edytować dane, wykonywać zapytania SQL, a także eksportować i importować dane. Import pliku .sql sprowadza się do wybrania bazy, zakładki Import i wskazania pliku – phpMyAdmin wykona zawarte w nim polecenia. Dlatego to właśnie phpMyAdmin służy do zaimportowania pliku z danymi SQL.

Pytanie 12

Selektor CSS a:link {color:red} w arkuszach stylów nazywanych kaskadowymi określa

A. klasę.
B. pseudoelement.
C. identyfikator.
D. pseudoklasę.
Wybór odpowiedzi związanej z klasą, identyfikatorem lub pseudoelementem nie uwzględnia kluczowej różnicy między tymi pojęciami a pseudoklasami. Klasa w CSS definiuje grupę elementów, które mają wspólne cechy stylistyczne, natomiast identyfikator jest unikalny dla jednego elementu na stronie i powinien być używany tylko raz. Klasy i identyfikatory są przypisywane za pomocą atrybutów 'class' i 'id' w HTML, co czyni je bardziej statycznymi, podczas gdy pseudoklasy odnoszą się do konkretnego stanu elementu, co wprowadza element dynamiki. Pseudoelementy, takie jak '::before' lub '::after', również różnią się, ponieważ pozwalają na stylizację części elementu, a nie jego całego stanu. Typowe błędy myślowe związane z myleniem tych pojęć wynikają często z braku zrozumienia, jak działa kaskadowość i dziedziczenie w CSS. Kluczowe jest zrozumienie, że pseudoklasy są narzędziem do reakcji na interakcje użytkownika, co pozwala na bardziej zaawansowane i intuicyjne projektowanie stron internetowych. Ignorowanie tych różnic prowadzi do nieefektywnego stylowania i może obniżać jakość interfejsów użytkownika.

Pytanie 13

Którą funkcją PHP sprawdzić WARTOŚĆ oraz TYP zmiennej?

A.
var_dump()
B.
readfile()
C.
strlen()
D.
implode()
Pozostałe funkcje robią co innego. readfile() odczytuje i wypisuje zawartość PLIKU. implode() łączy elementy TABLICY w jeden napis (z separatorem). strlen() zwraca DŁUGOŚĆ napisu (liczbę znaków). Typ i wartość zmiennej pokazuje var_dump(), dlatego druga odpowiedź jest poprawna.

Pytanie 14

Wskaż właściwy zapis polecenia napisanego w języku JavaScript?

A. document.write("Liczba ? z dokładnością do 2 miejsc po przecinku ? " . 3.14 )
B. document.write("Liczba ? z dokładnością do 2 miejsc po przecinku ? " ; 3.14 )
C. document.write("Liczba ? z dokładnością do 2 miejsc po przecinku ? " 3.14 )
D. document.write("Liczba ? z dokładnością do 2 miejsc po przecinku ? " + 3.14 )

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź ta jest poprawna, ponieważ używa operatora konkatenacji (+) do połączenia tekstu oraz wartości liczbowej 3.14 w jednej instrukcji document.write. Funkcja document.write jest metodą w Javascript, która umożliwia dynamiczne wstawianie treści HTML do dokumentu. W przykładzie, ciąg tekstowy "Liczba ? z dokładnością do 2 miejsc po przecinku ? " jest poprawnie połączony z wartością liczbową, co skutkuje wyświetleniem na stronie rezultatu, który jest czytelny i zrozumiały dla użytkownika. Warto również zauważyć, że w takich sytuacjach stosuje się również metody formatowania liczb, takie jak toFixed() dla uzyskania precyzyjnych wyników, np. (3.14).toFixed(2) zwróci '3.14'. Zgodność z ECMAScript oraz standardami W3C sprawia, że ta konstrukcja jest zarówno praktyczna, jak i zgodna z najlepszymi praktykami programowania w JavaScript.

Pytanie 15

Który atrybut pola <input> ogranicza maksymalną liczbę znaków, jaką można w nim wpisać?

A. value
B. name
C. readonly
D. maxlength

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Atrybut <code><span class="code-variable">maxlength</span></code> ogranicza maksymalną liczbę znaków, jaką użytkownik może wpisać w pole tekstowe, np. <code><span class="code-text">&lt;</span><span class="code-keyword">input</span> <span class="code-variable">type</span><span class="code-text">=</span><span class="code-string">"text"</span> <span class="code-variable">maxlength</span><span class="code-text">=</span><span class="code-string">"10"</span><span class="code-text">&gt;</span></code> pozwoli wprowadzić najwyżej 10 znaków. Przydaje się przy polach o ustalonej długości, takich jak kod pocztowy czy PESEL. Dlatego limit znaków ustala <code><span class="code-variable">maxlength</span></code>.

Pytanie 16

Którego selektora użyć, aby odmiennie sformatować PIERWSZĄ literę akapitu?

A. selektora dziecka p + first-letter
B. selektora klasy p.first-letter
C. selektora atrybutu p [first-letter]
D. pseudoelementu p::first-letter

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Pierwszą literę akapitu formatuje pseudoelement <code><span class="code-text">:</span><span class="code-text">:</span><span class="code-variable">first-letter</span></code>, np. <code><span class="code-keyword">p</span><span class="code-text">:</span><span class="code-text">:</span><span class="code-variable">first-letter</span> <span class="code-text">{</span> <span class="code-keyword">font-size</span><span class="code-text">:</span> <span class="code-number">2</span><span class="code-variable">em</span><span class="code-text">;</span> <span class="code-text">}</span></code> powiększy inicjał. Pseudoelementy (poprzedzane <code><span class="code-text">:</span><span class="code-text">:</span></code>) pozwalają stylizować FRAGMENT elementu – tu jego pierwszą literę. Dlatego właściwy jest <code><span class="code-keyword">p</span><span class="code-text">:</span><span class="code-text">:</span><span class="code-variable">first-letter</span></code>.

Pytanie 17

Jaki wynik pojawi się po wykonaniu zaprezentowanego kodu HTML?

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

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź D jest prawidłowa, ponieważ prezentowany kod HTML zawiera zagnieżdżone listy uporządkowane i nieuporządkowane. Zewnętrzna lista uporządkowana zaczyna się od numeru 1 i zawiera elementy li, gdzie drugi z nich zawiera w sobie listę nieuporządkowaną ul. Taka struktura jest zgodna ze standardami HTML i pozwala na efektywne prezentowanie hierarchii informacji. Co ważne, dodatkowy element ol z atrybutami type=A i start=4 generuje listę literową zaczynającą się od D, co jest wykorzystywane do tworzenia niestandardowych punktów startowych w listach uporządkowanych. Praktycznie, listy zagnieżdżone są używane do tworzenia bardziej złożonych struktur danych, jak instrukcje czy spisy treści. Korzystając z atrybutów type i start, możemy manipulować prezentacją list, co jest przydatne w rozwijających się serwisach internetowych. Zastosowanie atrybutu type z wartościami A, a, I itp., pozwala na zmianę stylu numerowania, co jest zgodne z dobrymi praktykami projektowania stron.

Pytanie 18

Wynikiem realizacji zamieszczonego kodu PHP jest pokazanie komunikatu

Ilustracja do pytania
A. warunek3
B. warunek2
C. warunek1
D. warunek4

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kod w języku PHP przedstawia warunki logiczne, które oceniają wartości zmiennych $a, $b, $c i $d. Zmienna $a i $c są ustawione na true, natomiast $b i $d na false. Pierwszy warunek sprawdza, czy zarówno $a && $b (czyli true && false, co daje false) lub $c && $d (czyli true && false, co również daje false) jest prawdziwe. Oba wyrażenia są fałszywe, więc warunek if nie zostanie spełniony. Drugi warunek elseif sprawdza, czy $a && $b (false) lub $c || $d (true || false, co daje true) jest prawdziwe. Ponieważ $c || $d jest prawdziwe, cały warunek jest spełniony i zostanie wyświetlony komunikat warunek2. Dobrym przykładem praktycznego zastosowania takich konstrukcji jest walidacja danych w aplikacjach webowych, gdzie można łączyć różne warunki logiczne w celu osiągnięcia wymaganej logiki decyzyjnej. Ważne jest, by rozumieć priorytety operatorów logicznych i zasady działania operatora „OR” (||) i „AND” (&&) w języku PHP, zgodnie z dokumentacją PHP.

Pytanie 19

Formularz, który pełni rolę pośrednika w nawigacji po bazie danych pomiędzy formularzami i kwerendami dostępnymi w systemie, określany jest jako formularz

A. głównym
B. sterującym
C. pierwotnym
D. zagnieżdżonym

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Formularz sterujący jest kluczowym elementem w projektowaniu baz danych, który pozwala na efektywną nawigację pomiędzy różnymi formularzami oraz kwerendami. Jego główną funkcją jest dostarczanie użytkownikowi centralnego punktu dostępu do różnych części aplikacji, co ułatwia zarządzanie danymi oraz ich przeglądanie. Przykładowo, w aplikacjach biznesowych formularz sterujący może zawierać przyciski, które kierują użytkownika do formularzy wprowadzania danych, formularzy raportowych, czy kwerend do wyszukiwania informacji. Dobrą praktyką jest, aby formularz sterujący był intuicyjny i estetyczny, co zwiększa użyteczność i efektywność aplikacji. W standardach projektowania baz danych, formularze sterujące są często powiązane z koncepcją MVC (Model-View-Controller), gdzie pełnią rolę kontrolera, który zarządza przepływem danych między modelem a widokiem, co umożliwia lepsze organizowanie interakcji użytkownika z systemem.

Pytanie 20

Klucz obcy w bazie danych jest tworzony w celu

A. stworzenia formularza do wprowadzania danych do tabeli
B. umożliwienia jednoznacznej identyfikacji rekordu w bazie danych
C. łączenia go z innymi kluczami obcymi w tabeli
D. określenia relacji 1..n łączącej go z kluczem głównym innej tabeli

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Klucz obcy w tabeli jest fundamentalnym elementem w relacyjnych bazach danych, który umożliwia tworzenie relacji pomiędzy tabelami. W szczególności, definiuje relację 1..n, co oznacza, że jeden rekord w tabeli, w której znajduje się klucz główny, może być powiązany z wieloma rekordami w tabeli, która posiada klucz obcy. Taki mechanizm pozwala na strukturalne powiązanie danych, co jest kluczowe dla zapewnienia integralności referencyjnej. Na przykład, w bazie danych zarządzającej informacjami o klientach i ich zamówieniach, klucz obcy w tabeli zamówień może wskazywać na klucz główny w tabeli klientów, co pozwala na łatwe śledzenie, które zamówienia są przypisane do konkretnego klienta. Zastosowanie kluczy obcych wspiera również dobre praktyki projektowania baz danych, takie jak normalizacja, co minimalizuje redundancję danych i poprawia ich spójność. Zgodność z tymi zasadami jest zgodna z wytycznymi organizacji takich jak ISO/IEC 9075 oraz ANSI SQL, które promują efektywne zarządzanie danymi.

Pytanie 21

Który z poniższych kodów XHTML sformatuje tekst zgodnie z podanym przykładem?

Ala ma kota
a kot ma Alę

A. <p>Ala ma <b>kota</b> <br/> a <b>kot</b> ma Alę</p>
B. <p>Ala ma <b>kota</b> <br/> a <i>kot</i> ma Alę</p>
C. <p>Ala ma <b>kota <br /> a <i>kot</i> ma Alę</p>
D. <p>Ala ma <b>kota</i><br/> a <b>kot</b> ma Alę</p>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź <p>Ala ma <b>kota</b> <br/> a <i>kot</i> ma Alę</p> jest poprawna, ponieważ zgodnie z zasadami XHTML, użycie znaczników <b> i <i> do formatowania tekstu jest odpowiednie; <b> stosowany jest do wyróżniania tekstu pogrubionego, a <i> do kursywy. W tej odpowiedzi zastosowano również poprawny znacznik <br/>, który jest samodzielnym znacznikiem i nie wymaga zamknięcia w parze. Zgodnie z dobrymi praktykami, kod XHTML powinien być poprawnie sformatowany, a każdy otwierający znacznik powinien mieć odpowiadający mu zamykający znacznik, chyba że jest to znacznik samodzielny, jak <br/>. Warto zaznaczyć, że XHTML wymaga również, aby wszystkie atrybuty były zapisane w formacie małych liter, co zostało spełnione w tej odpowiedzi. Przykład zastosowania tej wiedzy można znaleźć w tworzeniu stron internetowych, gdzie poprawne sformatowanie kodu HTML lub XHTML jest kluczowe dla prawidłowego wyświetlania treści w przeglądarkach.

Pytanie 22

System informatyczny umożliwiający tworzenie, edycję i publikację treści na stronach internetowych bez konieczności posiadania zaawansowanej wiedzy technicznej, to

A. DBMS
B. CMS
C. ERP
D. RDBMS

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to CMS, czyli Content Management System – system zarządzania treścią. Jest to specjalne oprogramowanie, które pozwala tworzyć, edytować i publikować treści na stronie WWW bez konieczności pisania kodu w HTML, CSS czy PHP. Z mojego doświadczenia w szkołach i firmach to właśnie CMS-y są najczęściej używane do budowy stron firmowych, blogów, portali informacyjnych czy nawet prostych sklepów internetowych. Typowe przykłady CMS-ów to WordPress, Joomla, Drupal czy TYPO3. W praktyce wygląda to tak, że logujesz się do panelu administracyjnego przez przeglądarkę, masz formularze do dodawania artykułów, edytor WYSIWYG („to co widzisz, to dostajesz”), możliwość wstawiania obrazków, filmów z YouTube, galerii, a nawet zarządzania menu i użytkownikami. Nie trzeba przy tym znać składni HTML ani obsługi bazy danych – system sam zapisuje dane w bazie, generuje strony zgodne z wybranym szablonem i dba o podstawową strukturę. Dobre praktyki w pracy z CMS-em to używanie aktualnych motywów i wtyczek, regularne aktualizacje systemu (ze względów bezpieczeństwa), wykonywanie kopii zapasowych oraz dbanie o przejrzystą strukturę treści (nagłówki H1, H2, H3, sensowne adresy URL, metaopisy). W branży przyjmuje się, że CMS powinien wspierać SEO (np. możliwość ustawiania tytułów stron i opisów), wielojęzyczność, system ról i uprawnień użytkowników (redaktor, autor, administrator) oraz wersjonowanie treści. Moim zdaniem znajomość podstaw obsługi CMS-a to dziś absolutny standard w zawodach związanych z tworzeniem i utrzymaniem stron WWW.

Pytanie 23

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

A. nav { float: right; }
B. aside {float: left; }
C. nav { float: left; } aside { float: left; }
D. nav { float: right; } section { float: right; }

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowa odpowiedź opiera się na tym, jak działają własności float w CSS i w jakiej kolejności przeglądarka renderuje elementy blokowe. Jeśli w dokumencie HTML kolejność znaczników to np. &lt;aside&gt;, potem &lt;section&gt;, a na końcu &lt;nav&gt;, to bez dodatkowego stylowania wszystkie trzy ustawią się pionowo, jeden pod drugim, w tej właśnie kolejności. Dodanie float zmienia sposób, w jaki elementy „odpływają” od normalnego przepływu dokumentu i jak układają się obok siebie. W stylu nav { float: right; } section { float: right; } sprawiamy, że zarówno nav, jak i section są przesuwane do prawej krawędzi kontenera, natomiast aside (bez float) pozostaje w normalnym przepływie, czyli z lewej strony. Ponieważ przeglądarka układa elementy w kolejności występowania w kodzie, najpierw wyrenderuje aside po lewej, potem section „odpłynie” w prawo, a na końcu nav też „odpłynie” w prawo, ustawiając się po prawej stronie, ale dalej od góry niż section. Efekt wizualny jest taki, że po lewej mamy aside, po prawej nav, a section ląduje między nimi, dokładnie tak jak było pokazane na filmie. Moim zdaniem to zadanie dobrze pokazuje, że przy floatach zawsze trzeba myśleć o trzech rzeczach naraz: kolejności elementów w HTML, kierunku „pływania” (left/right) oraz o tym, które elementy pozostawiamy w normalnym przepływie. W praktyce w nowoczesnych projektach częściej używa się flexboxa albo CSS Grid do takich układów, bo są czytelniejsze i mniej problematyczne. Przykładowo, zamiast kombinować z float, można by użyć display: flex; na kontenerze i ustawić order dla aside i nav. Float nadal jednak pojawia się w starszych layoutach i w zadaniach egzaminacyjnych, więc warto dobrze rozumieć jego zachowanie, choćby po to, żeby poprawnie modyfikować istniejące style lub naprawiać „rozjechane” układy w starszych projektach.

Pytanie 24

Jaką wartość wydrukuje na standardowe wyjście poniższy fragment kodu C++?

int obliczenia( int x ) {
x %= 3;
x++;
return x;
}

int main() {
std::cout<<obliczenia(32);
}
A. 3
B. 0
C. 32
D. 2

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Program w języku C++ zawiera funkcję obliczenia która przyjmuje parametr x. Wewnątrz funkcji wykonuje się operacja modulo x %= 3 co oznacza że zmienna x zostanie zastąpiona resztą z dzielenia x przez 3. W przypadku liczby 32 reszta z dzielenia przez 3 wynosi 2 ponieważ 32 dzielone przez 3 daje 10 z resztą 2. Następnie wykonuje się operacja inkrementacji x++ co oznacza że wartość x zostanie zwiększona o 1. W efekcie końcowym x przyjmie wartość 3. Funkcja zwraca tę wartość a wynik zostanie wypisany na standardowym wyjściu za pomocą std::cout. Zrozumienie operacji modulo oraz inkrementacji jest kluczowe w wielu zastosowaniach programistycznych szczególnie w algorytmach które operują na cyklicznych strukturach danych lub wymagają regularnego zwiększania wartości liczbowych. Operacja modulo jest często wykorzystywana do ograniczania zakresu wartości do pewnego zakresu np. w implementacji cyklicznych kolejek lub obliczaniu dni tygodnia. Dobrą praktyką jest także zrozumienie jak operacje te wpływają na wydajność i czytelność kodu co jest istotne w kontekście dużych projektów programistycznych. Poprawna odpowiedź to 3 ponieważ odpowiada ona wyniku jaki zostanie wypisany przez program.

Pytanie 25

Jaką rozdzielczość należy przyjąć, aby uzyskać proporcje obrazu 16:9, zakładając, że piksel ma formę kwadratu?

A. 320 na 240 pikseli
B. 2560 na 2048 pikseli
C. 1366 na 768 pikseli
D. 800 na 480 pikseli

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Proporcje obrazu 16:9 są standardem szerokokątnym, powszechnie stosowanym w telewizji, filmach oraz w grach komputerowych. Przy rozdzielczości 1366 na 768 pikseli, stosunek szerokości do wysokości wynosi 16 do 9, co oznacza, że dla każdego 16 pikseli szerokości przypada 9 pikseli wysokości. Technicznie, aby obliczyć proporcje obrazu, należy podzielić szerokość przez wysokość. W tym przypadku 1366/768 daje wartość równą około 1.77, co odpowiada proporcji 16:9. Takie rozdzielczości są często używane w laptopach oraz monitorach HD, co czyni je idealnym wyborem do zastosowań multimedialnych. Standard 16:9 stał się powszechnie akceptowanym formatem, co wpływa na kompatybilność treści wizualnych, umożliwiając ich odpowiednie wyświetlanie na różnych urządzeniach. Użycie tej rozdzielczości zapewnia również lepszą jakość obrazu w porównaniu z niższymi rozdzielczościami, co jest kluczowe w kontekście nowoczesnych technologii wyświetlania.

Pytanie 26

Zaprezentowano rezultat zastosowania CSS oraz odpowiadający mu kod HTML. W jaki sposób trzeba zdefiniować styl, aby uzyskać takie formatowanie?

Ilustracja do pytania
A. p.first-letter { font-size: 400%; color: blue; }
B. #first-letter { font-size: 400%; color: blue; }
C. .first-letter { font-size: 400%; color: blue; }
D. p::first-letter { font-size: 400%; color: blue; }

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź jest prawidłowa, ponieważ selektor CSS p::first-letter precyzyjnie określa, że stylizacja ma być zastosowana do pierwszej litery każdego akapitu, który jest oznaczony tagiem p. Jest to pseudo-element CSS, który umożliwia dostęp do pierwszej litery bloku tekstu w celu nadania jej unikalnego wyglądu. W tym przypadku zmieniono jej rozmiar na 400% oraz kolor na niebieski. Użycie ::first-letter jest zgodne z najlepszymi praktykami, gdyż pozwala na zachowanie semantyczności HTML i oddzielenie warstwy prezentacyjnej od treści, co jest kluczowe w responsywnym projektowaniu stron internetowych. Pseudo-elementy jak ::first-letter są niezwykle przydatne w tworzeniu estetycznych i czytelnych interfejsów użytkownika, zwłaszcza w przypadku publikacji zawierających dużo tekstu. Dobrą praktyką jest stosowanie pseudo-elementów w połączeniu z klasami i identyfikatorami, aby stylizacja była elastyczna i mogła być łatwo dostosowywana zgodnie z potrzebami projektu.

Pytanie 27

Czego użyć, aby zbadać ROZKŁAD ILOŚCIOWY kolorów (jasności) na zdjęciu?

A. desaturacji
B. balansu kolorów
C. rozmycia Gaussa
D. histogramu

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Histogram to wykres pokazujący, ile pikseli ma poszczególne wartości jasności lub barwy – czyli ROZKŁAD ILOŚCIOWY tonów/kolorów na zdjęciu. Pozwala ocenić ekspozycję i kontrast. Dlatego do analizy rozkładu kolorów służy histogram.

Pytanie 28

Aby grupować obszary na poziomie bloków, które będą stylizowane za pomocą znacznika: należy wykorzystać

A. <div>
B. <span>
C. <p>
D. <param>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Element <div> to naprawdę ważna część HTML-a, bo pozwala na porządne grupowanie treści na stronie. Dzięki niemu możemy lepiej zorganizować dokument, co nie tylko wygląda estetycznie, ale też ma znaczenie dla semantyki. Używając <div>, łatwiej podpinamy style CSS i skrypty JavaScript, co bardzo pomaga w budowaniu responsywnych układów. Na przykład, gdy tworzymy stronę z nagłówkiem, głównym tekstem i stopką, to dobrze jest wrzucić te sekcje w odpowiednie <div>, bo potem łatwiej je stylizować i edytować. Trzeba pamiętać, że <div> nie ma swojej domyślnej semantyki, więc jego znaczenie zależy tylko od kontekstu, w jakim go użyjemy, co czyni go naprawdę wygodnym narzędziem w tworzeniu nowoczesnych stron.

Pytanie 29

Wskaż zapis stylu CSS formatujący punktor list numerowanych na wielkie cyfry rzymskie, a list punktowanych na kwadraty.

A. ol { list-style-type: upper-alpha; }
   ul { list-style-type: disc; }

B. ol { list-style-type: square; }
   ul { list-style-type: upper-roman; }

C. ol { list-style-type: disc; }
   ul { list-style-type: upper-alpha; }

D. ol { list-style-type: upper-roman; }
   ul { list-style-type: square; }
A. A.
B. D.
C. B.
D. C.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Gratulacje, twoja odpowiedź jest poprawna! Wybór opcji D. odnosi się do poprawnego formatowania list w CSS. Odpowiedź pokazuje dobrą znajomość właściwości list-style-type, która jest kluczowa do formatowania typów list. W tym przypadku, dla listy numerowanej (ol), jest ustawiona wartość upper-roman, która reprezentuje wielkie cyfry rzymskie. Dla listy punktowanej (ul) ustawiamy wartość square, co daje efekt punktów w formie kwadratów. To właśnie takie formatowanie list jest preferowane w branży ze względu na jego estetykę i czytelność. Pamiętaj, że zrozumienie i umiejętność manipulacji różnymi właściwościami CSS jest kluczem do tworzenia atrakcyjnych i funkcjonalnych stron internetowych.

Pytanie 30

Co robi polecenie:

GRANT ALL PRIVILEGES ON klienci TO pracownik;
?
A. nadaje użytkownikowi pracownik wszystkie prawa do tabeli klienci
B. odbiera pracownik wszystkie prawa do klienci
C. kopiuje uprawnienia z klienci na pracownik
D. nadaje grupie klienci prawa do tabeli pracownik

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie <code><span class="code-keyword">GRANT</span> <span class="code-variable">ALL</span> <span class="code-variable">PRIVILEGES</span> <span class="code-keyword">ON</span> <span class="code-variable">klienci</span> <span class="code-variable">TO</span> <span class="code-variable">pracownik</span><span class="code-text">;</span></code> nadaje użytkownikowi <code><span class="code-variable">pracownik</span></code> WSZYSTKIE uprawnienia (<code><span class="code-variable">ALL</span> <span class="code-variable">PRIVILEGES</span></code>) do tabeli <code><span class="code-variable">klienci</span></code> – po <code><span class="code-keyword">ON</span></code> wskazuje się obiekt (tabelę), a po <code><span class="code-variable">TO</span></code> odbiorcę. Dlatego polecenie daje pełne prawa do <code><span class="code-variable">klienci</span></code> użytkownikowi <code><span class="code-variable">pracownik</span></code>.

Pytanie 31

W CSS zapis selektora p > i { color: red; } wskazuje, że kolor czerwony zostanie zastosowany do

A. tylko tego tekstu w znaczniku <p>, który ma przypisaną klasę o nazwie i
B. wszystkiego tekstu w znaczniku <p> z wyjątkiem tekstu w znaczniku <i>
C. wszelkiego tekstu w znaczniku <p> lub wszelkiego tekstu w znaczniku <i>
D. wyłącznie tekstu w znaczniku <i>, który znajduje się bezpośrednio wewnątrz znacznika <p>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zapis selektora CSS p > i { color: red; } jest precyzyjny i wskazuje, że kolor czerwony zostanie zastosowany wyłącznie do elementów <i>, które znajdują się bezpośrednio w obrębie elementu <p>. Warto zrozumieć, że symbol '>' oznacza selektor dziecka, co oznacza, że styl dotyczy tylko tych <i>, które są bezpośrednimi potomkami <p>. Przykładowo, jeśli mamy strukturę HTML:<p>To jest <i>przykład</i> tekstu <i>z <i>zagnieżdżonym</i> elementem</i>.</p>, to tylko pierwszy znacznik <i> (czyli "przykład") będzie miał kolor czerwony, ponieważ drugi znacznik <i> jest zagnieżdżony i nie jest bezpośrednim dzieckiem <p>. W kontekście standardów CSS, stosowanie selektorów dziecka jest zalecane, gdyż pozwala na precyzyjniejsze określenie, do których elementów styl ma być zastosowany, co w praktyce ułatwia zarządzanie stylami na stronach z bardziej złożoną strukturą HTML.

Pytanie 32

W języku JavaScript zdefiniowano następującą funkcję:

function fun1(f) {
    if (f < 0) f = f * (-1);
    return f;
}
Jej celem jest:
A. Zwrócić wartość bezwzględną argumentu f
B. Zwrócić wartość odwrotną do argumentu f
C. Wypisać wartość odwrotną do argumentu f
D. Wypisać wartość bezwzględną argumentu f

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja w języku JavaScript przedstawiona w pytaniu realizuje zadanie zwracania wartości bezwzględnej z argumentu f. Wartość bezwzględna liczby jest jej odległością od zera na osi liczbowej i jest zawsze liczbą nieujemną. Mechanika działania funkcji polega na sprawdzeniu za pomocą instrukcji warunkowej if czy wartość przekazanego argumentu f jest mniejsza od zera. Jeśli tak, wartość ta jest mnożona przez -1 co przekształca ją w liczbę dodatnią. W przeciwnym razie liczba pozostaje bez zmian. Ostatecznie funkcja zwraca wynik operacji co jest typowym podejściem w programowaniu funkcyjnym. Warto zwrócić uwagę że takie podejście jest zgodne z dobrymi praktykami programistycznymi ponieważ funkcja ma jednoznacznie określony cel i nie powoduje efektów ubocznych takich jak modyfikacja zmiennych globalnych. W realnych projektach często korzysta się z funkcji Math.abs która jest wbudowana w JavaScript i zwraca wartość bezwzględną liczby co jest bardziej wydajnym podejściem i zgodnym ze standardami języka

Pytanie 33

Jakie skutki wywoła poniższy fragment kodu w języku JavaScript?

n = "Napis1"; s = n.length;
A. Przypisze wartość zmiennej n do zmiennej s
B. Przypisze zmiennej s wartość odpowiadającą długości tekstu w zmiennej n
C. Wyświetli liczbę znaków napisu z zmiennej n
D. Przypisze zmiennej s część napisu ze zmiennej n o długości określonej przez zmienną length

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Fragment skryptu w języku JavaScript, w którym zmienna n jest przypisana do napisu "Napis1", a następnie zmienna s jest przypisana do długości tego napisu, korzysta z właściwości length. Odpowiedź 3 jest poprawna, ponieważ właściwość length dla obiektów typu string zwraca liczbę znaków w danym napisie. W tym przypadku "Napis1" ma 6 znaków, więc zmienna s przyjmie wartość 6. Tego typu operacje są powszechnie stosowane w programowaniu do manipulacji i analizy danych tekstowych, co jest istotnym aspektem tworzenia aplikacji webowych. W praktyce, programiści często muszą sprawdzać długość napisów, aby weryfikować dane wejściowe, przygotowywać napisy do dalszego przetwarzania lub dostosowywać interfejs użytkownika. Dobrym przykładem zastosowania length jest walidacja formularzy, gdzie długość wprowadzonego tekstu musi spełniać określone kryteria, np. minimalną lub maksymalną liczbę znaków. Warto zaznaczyć, że zgodnie ze standardami ECMAScript, wszystkie napisy w JavaScript mają tę właściwość, co czyni ją niezwykle użyteczną w codziennej pracy programisty.

Pytanie 34

Który z protokołów umożliwia publikację strony internetowej na serwerze?

A. NNTP
B. ICMP
C. FTP
D. SMTP

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
FTP, czyli File Transfer Protocol, to taki standard, który pozwala na przesyłanie plików między komputerami w sieci. Jest to dość ważne, bo bez FTP nie moglibyśmy publikować stron w internecie. Dzięki temu protokołowi można wysyłać różne pliki, jak HTML, CSS, JavaScript czy nawet grafiki i filmy, na serwery WWW. Z perspektywy praktycznej, to przy publikacji nowej strony wchodzi w grę użycie klienta FTP, na przykład FileZilla. Łączysz się z serwerem, logujesz się swoimi danymi i przesyłasz pliki do odpowiednich folderów. No i nie zapomnij o portach - standardowy port dla FTP to 21. A jeśli zależy Ci na bezpieczeństwie, warto pomyśleć o SFTP albo FTPS, bo to też istotne w kontekście ochrony danych. Jak dla mnie, dobrze jest znać te praktyki, żeby nie martwić się o swoje pliki podczas przesyłania.

Pytanie 35

Co spowoduje zapis

h2 { background-color: green; }
?
A. zieloną czcionkę wszystkich nagłówków
B. zielone tło nagłówków drugiego poziomu (<h2>)
C. zieloną czcionkę nagłówków drugiego poziomu
D. zielone tło całej strony

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Selektor <code><span class="code-variable">h2</span></code> wskazuje nagłówki drugiego poziomu, a właściwość <code><span class="code-keyword">background-color</span><span class="code-text">:</span> <span class="code-variable">green</span></code> ustawia ich TŁO na zielono. Zatem zapis zazieleni TŁO elementów <code><span class="code-text">&lt;</span><span class="code-keyword">h2</span><span class="code-text">&gt;</span></code>. Dlatego poprawna jest trzecia odpowiedź.

Pytanie 36

Który format to RASTROWY format graficzny z kompresją BEZSTRATNĄ?

A. PNG
B. CDR
C. JNG
D. SVG

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
PNG (Portable Network Graphics) to RASTROWY format graficzny z kompresją BEZSTRATNĄ – odtwarza obraz piksel w piksel, bez utraty jakości, a dodatkowo obsługuje przezroczystość (kanał alfa). Dlatego rastrowym formatem bezstratnym jest PNG.

Pytanie 37

Aby utworzyć relację wiele do wielu pomiędzy tabelami A i B, należy

A. tabelę A połączyć z tabelą B przez utworzenie kluczy obcych
B. wprowadzić trzecią tabelę zawierającą klucze obce do tabel A i B
C. tabela A będzie miała identyczne pola jak tabela B
D. wiele wpisów z tabeli A zduplikuje się w tabeli B

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Aby stworzyć relację wiele do wielu między dwiema tabelami, w rzeczywistości wymagana jest dodatkowa tabela, nazywana tabelą pośrednią lub łączącą. Tabela ta zawiera klucze obce, które wskazują na klucze główne w tabelach A i B. Dzięki temu możliwe jest powiązanie wielu rekordów z tabeli A z wieloma rekordami z tabeli B. Na przykład, jeśli mamy tabelę 'Studenci' i tabelę 'Kursy', to aby zrealizować relację wiele do wielu, tworzymy tabelę 'Zapisani', która zawiera kolumny 'StudentID' i 'KursID'. W ten sposób możemy zarejestrować, że jeden student może być zapisany na wiele kursów, a jeden kurs może być uczęszczany przez wielu studentów. Taki model danych jest zgodny z zasadami normalizacji bazy danych i pozwala na efektywne zarządzanie danymi oraz unikanie redundancji.

Pytanie 38

Co oznacza skrót SQL?

A. Sequential Question Language
B. Simple Query Logic
C. Structured Query Language
D. Standard Quality Language

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
SQL to skrót od Structured Query Language, czyli strukturalny język zapytań. Służy do komunikacji z relacyjnymi bazami danych: tworzenia struktur (DDL), wstawiania i modyfikowania danych (DML), pobierania ich zapytaniami (SELECT) oraz zarządzania uprawnieniami (DCL). Dlatego poprawne rozwinięcie to Structured Query Language.

Pytanie 39

Metoda pełniąca w języku PHP rolę konstruktora klasy nosi nazwę:

A.
__new()
B.
__init()
C.
__construct()
D.
__create()

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Konstruktor w PHP to specjalna („magiczna”) metoda <code><span class="code-function">__construct</span><span class="code-text">(</span><span class="code-text">)</span></code> – z dwoma podkreślnikami na początku. Interpreter wywołuje ją automatycznie w chwili tworzenia obiektu (<code><span class="code-keyword">new</span> <span class="code-function">Klasa</span><span class="code-text">(</span><span class="code-text">)</span></code>), więc używa się jej do nadania polom wartości początkowych, np. <code><span class="code-keyword">public</span> <span class="code-keyword">function</span> <span class="code-function">__construct</span><span class="code-text">(</span><span class="code-text">$</span><span class="code-variable">imie</span><span class="code-text">)</span> <span class="code-text">{</span> <span class="code-text">$</span><span class="code-variable">this-</span><span class="code-text">&gt;</span><span class="code-variable">imie</span> <span class="code-text">=</span> <span class="code-text">$</span><span class="code-variable">imie</span><span class="code-text">;</span> <span class="code-text">}</span></code>. Metodą przeciwną, wywoływaną przy usuwaniu obiektu, jest <code><span class="code-function">__destruct</span><span class="code-text">(</span><span class="code-text">)</span></code>. Dlatego konstruktorem w PHP jest <code><span class="code-function">__construct</span><span class="code-text">(</span><span class="code-text">)</span></code>.

Pytanie 40

Wskaż definicję metody, którą należy wstawić w miejscu kropek, aby na stronie WWW wyświetlił się tekst: Jan Kowalski

<p id="wynik"></p>
<script type="text/javascript">
    var osoba = { nazwisko: "Kowalski", imie: "Jan" };
    …
    document.getElementById("wynik").innerHTML = osoba.dane();
</script>

osoba.dane = function() {
    return this.imie+" "+this.nazwisko;
};                 A.

dane() = function() {
    return this.imie+" "+this.nazwisko;
};                 B.

osoba.dane = function() {
    return imie+" "+nazwisko;
};                 C.

dane() = function {
    this.imie+" "+this.nazwisko;
};                 D.
A. A.
B. B.
C. D.
D. C.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Fajnie, że wybrałeś dobrą odpowiedź! Metoda 'dane' jest powiązana z obiektem 'osoba', co pozwala ci używać słowa kluczowego 'this', żeby odwołać się do 'imię' i 'nazwisko'. To naprawdę ważna zasada w programowaniu obiektowym. 'This' to taki klucz, dzięki któremu możesz wskazać, z którego obiektu korzystasz w danej chwili. W tym przypadku odnosisz się do obiektu 'osoba'. Wyobraź sobie, że tworzysz aplikację i chcesz pokazać informacje o użytkowników, na przykład na stronie profilu. Dzięki metodzie 'dane', która jest częścią obiektu 'osoba', możesz łatwo wyświetlić imię i nazwisko. O to chodzi w programowaniu!