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: 7 lipca 2026 17:54
  • Data zakończenia: 7 lipca 2026 18:09

Egzamin zdany!

Wynik: 26/40 punktów (65,0%)

Wymagane minimum: 20 punktów (50%)

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

Aby osiągnąć efekt przedstawiony na ilustracji, w kodzie HTML należy zastosować znacznik skrótu <abbr> z atrybutem

Ilustracja do pytania
A. alt
B. name
C. dfn
D. title
Znacznik <abbr> w HTML pełni rolę semantyczną, pomagając w oznaczaniu skrótów i akronimów. Atrybut alt jest stosowany w znacznikach <img> do opisywania obrazów, co jest istotne dla dostępności i SEO, ale nie ma związku ze znacznikami tekstowymi jak <abbr>. Alt informuje o treści obrazu, co jest kluczowe dla użytkowników niewidzących, lecz nie pełni funkcji rozwijania skrótów tekstowych. Atrybut dfn służy do definiowania terminów w tekście, zazwyczaj używany w połączeniu ze znacznikiem <dfn>, a nie <abbr>. Chociaż dfn dostarcza definicji, nie jest używany do rozwijania skrótów. Atrybut name nie jest związany z rozwijaniem tekstu ani z <abbr>. Jest on stosowany głównie w formularzach HTML do identyfikacji elementów, takich jak <input>, umożliwiając ich rozróżnienie. Mylenie tych atrybutów wynika często z braku zrozumienia ich specyficznych zastosowań w kontekście HTML i dostępności. Właściwe używanie atrybutów to klucz do tworzenia semantycznie poprawnych i dostępnych stron internetowych.

Pytanie 2

Wskaż zapytanie, w którym dane zostały uporządkowane.

A. SELECT DISTINCT produkt, cena FROM artykuly;
B. SELECT nazwisko FROM firma WHERE pensja > 2000 LIMIT 10;
C. SELECT AVG(ocena) FROM uczniowie WHERE klasa = 2;
D. SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek;
Odpowiedź SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek jest poprawna, ponieważ zawiera klauzulę ORDER BY, która jest używana do sortowania wyników zapytania w SQL. W tym przypadku, dane są sortowane według wieku mieszkańców, co pozwala na łatwe zrozumienie rozkładu wiekowego w tej grupie. Klauzula ORDER BY jest standardowym elementem SQL, który może sortować wyniki w porządku rosnącym (ASC) lub malejącym (DESC). Przykładowe zastosowanie to raporty, w których użytkownik chce zobaczyć dane uporządkowane według konkretnego kryterium, np. wiek, cena, data. Dobre praktyki sugerują, aby zawsze jasno definiować, które kolumny mają być używane do sortowania, a także zrozumieć, że sortowanie wpływa na wydajność zapytań, zwłaszcza przy dużych zbiorach danych. W przypadku bardziej złożonych zapytań można także łączyć klauzulę ORDER BY z innymi klauzulami, takimi jak GROUP BY, co zwiększa elastyczność w analizie danych.

Pytanie 3

Czym jest w języku C++ konstrukcja double *x;?

A. formalnym argumentem typu rzeczywistego
B. zmienną całkowitą
C. zmienną rzeczywistą
D. wskaźnikiem
Pozostałe odpowiedzi mylą wskaźnik ze zwykłą zmienną. Bez * (double x;) byłaby to zmienna rzeczywista przechowująca liczbę. Nie jest to zmienna całkowita (to byłby int) ani formalny argument funkcji. Gwiazdka czyni z x wskaźnik.

Pytanie 4

W przedstawionym filmie, aby połączyć tekst i wielokąt w jeden obiekt tak, aby operacja ta była odwracalna zastosowano funkcję

A. części wspólnej.
B. wykluczenia.
C. grupowania.
D. sumy.
W tym zadaniu łatwo się pomylić, bo w grafice wektorowej mamy kilka różnych funkcji, które na pierwszy rzut oka wyglądają podobnie: łączą obiekty w coś, co zachowuje się jak jeden element. Jednak ich działanie „pod maską” jest zupełnie inne. Funkcje typu suma, wykluczenie czy część wspólna to klasyczne operacje boolowskie na kształtach. One zmieniają geometrię obiektów, czyli tworzą nową ścieżkę wynikową na podstawie przecięcia lub połączenia istniejących. W praktyce oznacza to, że jeśli zastosujesz sumę na tekście i wielokącie, program najczęściej zamieni tekst na krzywe i połączy wszystko w jedną ścieżkę. Efekt wizualny może być fajny, ale edytowalność tekstu przepada. Nie możesz już po prostu zmienić czcionki czy liter, bo to nie jest tekst, tylko zestaw węzłów.
Podobnie z wykluczeniem: ta operacja tworzy „dziurę” jednego obiektu w drugim. Używa się jej np. do wycinania napisu z tła lub tworzenia maski. To jest typowy trik przy projektach logotypów albo efektach dekoracyjnych. Ale z punktu widzenia pytania – to działanie jest destrukcyjne dla tekstu, bo znowu zamienia go na kształt i łączy z wielokątem w sposób nieodwracalny (poza cofnięciem operacji). Część wspólna działa jeszcze ostrzej: zostawia tylko obszar, w którym obiekty się nakładają. Reszta jest tracona. To też jest operacja geometryczna, a nie organizacyjna.
Typowy błąd myślowy polega na założeniu, że „skoro po operacji mam jeden obiekt, to znaczy, że to jest to samo co grupowanie”. Niestety nie. Grupowanie nie modyfikuje kształtów, tylko tworzy kontener logiczny – tak jakbyś w folderze trzymał kilka plików. Możesz je potem rozgrupować i wszystko wraca do stanu sprzed grupowania. Operacje suma, wykluczenie, część wspólna są destrukcyjne względem oryginalnych obiektów, bo generują nową ścieżkę zamiast starych. W kontekście dobrych praktyk w grafice komputerowej i multimediach przyjmuje się, że dopóki chcesz zachować pełną edytowalność (szczególnie tekstów), używasz grupowania, warstw i wyrównywania, a dopiero na późnym etapie projektu stosujesz operacje boolowskie, i to świadomie, wiedząc, że cofasz się już tylko historią edycji. Dlatego w pytaniu, gdzie mowa jest wprost o połączeniu tekstu i wielokąta w jeden obiekt w sposób odwracalny, jedyną sensowną odpowiedzią jest funkcja grupowania, a nie suma, wykluczenie czy część wspólna.

Pytanie 5

W tabeli artykuly w bazie danych sklepu znajduje się pole o nazwie nowy. Jak należy wykonać kwerendę, aby wypełnić to pole wartościami TRUE dla wszystkich rekordów?

A. INSERT INTO artykuly VALUE nowy=TRUE;
B. INSERT INTO nowy FROM artykuly SET TRUE;
C. UPDATE nowy FROM artykuly VALUE TRUE;
D. UPDATE artykuly SET nowy=TRUE;
Żeby zaktualizować wartości w kolumnie 'nowy' w tabeli 'artykuły' na TRUE, musisz użyć komendy SQL UPDATE. To jest standardowy sposób, żeby zmieniać już istniejące rekordy w tabelach. W tym przypadku komenda 'UPDATE artykuly SET nowy=TRUE;' oznacza, że wszystkie rekordy w tabeli 'artykuły' będą miały pole 'nowy' ustawione na TRUE. To dość prosta i skuteczna operacja, która pozwala na jednolitą zmianę w całej tabeli. Na przykład, jeśli w tabeli 'artykuły' jest 1000 rekordów, to wszystkie z nich dostaną wartość TRUE w polu 'nowy', co może być pomocne, jeśli chcemy oznaczyć nowe produkty. Pamiętaj, żeby robić kopie zapasowe bazy danych przed takimi masowymi zmianami. To może uratować Cię od utraty ważnych danych, gdyby coś poszło nie tak. Użycie tej komendy jest zgodne z ogólnymi zasadami SQL, więc jest to bezpieczny sposób działania dla każdego, kto zarządza bazą danych.

Pytanie 6

Jaki minimalny kontrast tekstu (standardowego rozmiaru) do tła wymaga WCAG 2.x na poziomie AA?

A. 1,5 : 1
B. 4,5 : 1
C. 2,0 : 1
D. 2,5 : 1
Wytyczne WCAG 2.x na poziomie AA wymagają dla tekstu standardowego rozmiaru minimalnego kontrastu 4,5:1 między kolorem tekstu a tłem - to zapewnia czytelność m.in. osobom słabowidzącym. Dla dużego tekstu próg jest niższy (3:1). Dlatego minimalny kontrast AA to 4,5:1.

Pytanie 7

Które z pól są umieszczone w formularzu?





Studia podyplomowe Kurs

A. Textarea, Select, Input(Radio), Input(Radio), Input(Reset), Input(Submit)
B. Input(Text), Input(Checkbox), Select, Select, Input(Submit), Input(Reset)
C. Input(Text), Select, Input(Radio), Input(Radio), Input (Submit), Input(Reset)
D. Textarea, Option, Input(Checkbox), Input(Checkbox), Input (Submit), Input(Reset)
Dobrze zrozumiałeś różne typy pól, które mogą pojawić się w formularzu html. Wybrana przez Ciebie odpowiedź składa się z różnych typów pól, które są często używane w formularzach internetowych. Pierwsze, Input(Text), jest podstawowym polem do wprowadzania tekstu, które jest szeroko stosowane do zbierania informacji od użytkowników, takich jak imię, nazwisko itp. Pole Select to lista rozwijana, która pozwala użytkownikowi wybrać jedną z wielu opcji. W tym przypadku, używane jest do wyboru województwa. Input(Radio) to przyciski wyboru, które umożliwiają wybór jednej opcji z kilku. W formularzu, są one używane do wyboru między 'Studia podyplomowe' a 'Kurs'. Input(Submit) to przycisk służący do wysyłania formularza, a Input (Reset) pozwala na wyczyszczenie wszystkich pól formularza. Wszystkie te elementy są zgodne ze standardami i dobrymi praktykami tworzenia formularzy html. Dobre zrozumienie tych elementów jest kluczowe do tworzenia efektywnych i użytkowników formularzy.

Pytanie 8

Aby zbudować tabelę, należy wykorzystać polecenie

A. ALTER TABLE
B. CREATE DATABASE
C. INSERT INTO
D. CREATE TABLE
Odpowiedź 'CREATE TABLE' jest poprawna, ponieważ to polecenie jest używane w SQL do tworzenia nowych tabel w bazie danych. Tabela to podstawowa jednostka organizacyjna danych, która składa się z wierszy i kolumn, gdzie każda kolumna ma przypisaną określoną datę typu, taką jak integer, varchar, date itd. Przykład użycia tego polecenia to: 'CREATE TABLE pracownicy (id INT PRIMARY KEY, imie VARCHAR(50), nazwisko VARCHAR(50));'. W tym przypadku tworzymy tabelę 'pracownicy', w której znajdują się trzy kolumny: 'id', 'imie' i 'nazwisko'. Ważnym aspektem jest, że przy definiowaniu tabeli należy również określić klucze główne oraz inne ograniczenia, takie jak unikalność czy relacje między tabelami, co jest zgodne z najlepszymi praktykami projektowania baz danych. Użycie 'CREATE TABLE' pozwala na skuteczne zarządzanie strukturą bazy danych, co jest kluczowe dla jej późniejszej integralności i wydajności.

Pytanie 9

Której funkcji PHP użyć, aby NAWIĄZAĆ połączenie z serwerem bazy danych?

A.
mysqli_autocommit()
B.
mysqli_fetch_row()
C.
mysqli_connect()
D.
mysqli_get_connection_stats()
Aby PHP mogło rozmawiać z bazą, najpierw trzeba NAWIĄZAĆ połączenie - robi to mysqli_connect(host, uzytkownik, haslo, baza), np. mysqli_connect("localhost", "root", "", "sklep"). Funkcja zwraca uchwyt połączenia, którego potem używasz we wszystkich kolejnych operacjach (zapytaniach, pobieraniu wyników). To zawsze pierwszy krok pracy z bazą. Zapamiętaj nazwę: „connect” = połącz się z serwerem bazy danych.

Pytanie 10

Do czego służy w PHP funkcja mysqli_select_db()?

A. do pobrania danych na podstawie zapytania
B. do wskazania bazy, z której będą pobierane dane
C. do nawiązania połączenia z serwerem SQL
D. do wskazania tabeli, z której pobierane są dane
Na jednym serwerze MySQL bywa wiele baz, więc po połączeniu trzeba wskazać, z KTÓREJ korzystać - służy do tego mysqli_select_db($polaczenie, "nazwa_bazy"). Zmienia aktywną bazę dla danego połączenia, dzięki czemu kolejne zapytania działają na właściwym zbiorze tabel. Zwykle bazę podaje się już w mysqli_connect(), ale tą funkcją można ją PRZEŁĄCZYĆ w trakcie. Zapamiętaj: „select_db” = wybierz bazę danych.

Pytanie 11

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

A.
var_dump()
B.
strlen()
C.
readfile()
D.
implode()
Funkcja var_dump() wypisuje zarówno WARTOŚĆ zmiennej, jak i jej TYP (oraz np. długość napisu), np. var_dump($x) pokaże int(5) czy string(3) "abc". To podstawowe narzędzie diagnostyczne PHP. Dlatego wartość i typ pokazuje var_dump().

Pytanie 12

W aplikacji internetowej komunikat powinien pojawiać się tylko wtedy, gdy dany użytkownik jest na stronie po raz pierwszy. Którą funkcję PHP należy w tym celu zastosować?

A. setcookie
B. session_destroy
C. define
D. mysqli_change_user
Prawidłowo – w tym zadaniu kluczowa jest funkcja setcookie(), bo to właśnie ciasteczka są standardowym mechanizmem do rozpoznawania, czy użytkownik był już wcześniej na danej stronie. W praktyce robi się to tak: przy pierwszym wejściu na stronę sprawdzasz, czy istnieje określone cookie, np. $_COOKIE['first_visit']. Jeśli go nie ma, wyświetlasz komunikat powitalny i ustawiasz ciasteczko za pomocą setcookie('first_visit', '1', time()+3600*24*365). Przy kolejnych wejściach cookie już będzie istniało, więc komunikat się nie pojawi. To jest bardzo typowy wzorzec np. dla banerów informujących o ciasteczkach, komunikatów onboardingowych czy jednorazowych podpowiedzi dla nowych użytkowników. Z mojego doświadczenia w webdevie to najprostsze i najbardziej przenośne rozwiązanie, bo działa niezależnie od sesji i logowania użytkownika – wystarczy przeglądarka z włączonymi cookies. Ważne jest też, żeby pamiętać o tym, że setcookie() musi być wywołane przed wysłaniem jakiegokolwiek outputu (czyli przed jakimkolwiek HTML, echo, BOM itd.), bo ciasteczka są wysyłane w nagłówkach HTTP. W bardziej rozbudowanych projektach często łączy się cookies z innymi mechanizmami (np. sesją czy bazą danych), ale do prostego sprawdzenia „czy użytkownik jest tu pierwszy raz” ciasteczko ustawiane setcookie() to według dobrych praktyk w zupełności wystarcza. Warto też dbać o parametry bezpieczeństwa ciastek (secure, httponly, samesite), szczególnie gdy później używamy tego mechanizmu do czegoś ważniejszego niż zwykły komunikat informacyjny.

Pytanie 13

W środowisku PHP pobrano z bazy danych rezultat działania zapytania przy użyciu komendy mysql_query. W celu uzyskania z otrzymanej kwerendy jednego wiersza danych, konieczne jest użycie polecenia

A. mysql_fetch_row
B. mysql_list_fields
C. mysql_field_len
D. mysql_fetch_lengths
Odpowiedź 'mysql_fetch_row' jest prawidłowa, ponieważ to funkcja w PHP, która pobiera jeden wiersz danych jako tablicę numeryczną z wyników zapytania SQL. Jest to kluczowy element do pracy z danymi zwróconymi przez bazę danych, gdyż umożliwia nam iterację przez wyniki zapytania. Przykładowo, po wykonaniu kwerendy za pomocą 'mysql_query', używamy 'mysql_fetch_row', aby uzyskać pierwszy wiersz wyników: $row = mysql_fetch_row($result);. W praktyce, korzystając z tej funkcji, możemy odnosić się do poszczególnych kolumn, używając indeksów, co jest efektywne, zwłaszcza przy pracy z dużymi zbiorami danych. Warto pamiętać, że 'mysql_fetch_row' jest jedną z podstawowych funkcji w pracy z bazami danych w PHP, jednak w najnowszych projektach zaleca się korzystanie z rozszerzenia PDO lub MySQLi, które oferują lepsze zabezpieczenia oraz wsparcie dla obiektowego podejścia programowania. To także zgodne z najlepszymi praktykami w zakresie bezpieczeństwa i wydajności aplikacji webowych.

Pytanie 14

Podczas wykonywania zapytania można skorzystać z klauzuli DROP COLUMN

A. ALTER TABLE
B. ALTER COLUMN
C. CREATE TABLE
D. DROP TABLE
Odpowiedź 'ALTER TABLE' jest poprawna, ponieważ klauzula DROP COLUMN jest używana w kontekście zmiany struktury tabeli w bazach danych. Polecenie ALTER TABLE pozwala na modyfikację istniejącej tabeli, w tym dodawanie, usuwanie lub modyfikowanie kolumn. Użycie klauzuli DROP COLUMN umożliwia usunięcie określonej kolumny z tabeli, co jest przydatne, gdy kolumna nie jest już potrzebna, zawiera nieaktualne dane lub w celu optymalizacji struktury bazy danych. Na przykład, jeśli mamy tabelę 'Użytkownicy' z kolumną 'wiek', której chcemy się pozbyć, możemy użyć polecenia: 'ALTER TABLE Użytkownicy DROP COLUMN wiek;'. Ważne jest, aby przed wykonaniem tej operacji upewnić się, że usunięcie kolumny nie wpłynie negatywnie na integralność danych lub logikę aplikacji. Praktyki dotyczące zarządzania bazami danych zalecają również wykonanie kopii zapasowej danych przed takimi operacjami, aby zminimalizować ryzyko utraty danych.

Pytanie 15

Przedstawione polecenie SQL nadaje użytkownikowi adam@localhost prawa:

GRANT SELECT, INSERT, UPDATE, DELETE ON klienci TO adam@localhost
A. zarządzania strukturą tabeli klienci.
B. zarządzania strukturą bazy danych klienci.
C. manipulowania danymi w tabeli klienci.
D. manipulowania danymi bazy danych klienci.
Niepoprawne odpowiedzi sugerują, że polecenie SQL nadaje użytkownikowi 'adam' z hosta 'localhost' prawa zarządzania strukturą bazy danych lub tabeli 'klienci', co jest niezgodne z prawdą. Zgodnie z konstrukcją polecenia GRANT, użytkownik otrzymuje prawa do manipulowania danymi, a nie do zarządzania strukturą. Zarządzanie strukturą bazy danych lub tabeli obejmuje operacje takie jak CREATE, ALTER, DROP, które pozwalają na tworzenie, modyfikowanie lub usuwanie bazy danych lub tabeli. Te uprawnienia są zazwyczaj zarezerwowane dla administratorów bazy danych i nie są nadawane zwykłym użytkownikom, co jest zgodne z zasadą minimalnych uprawnień dla bezpieczeństwa systemu. Dodatkowo, polecenie nie odnosi się do całej bazy danych 'klienci', tylko do konkretnej tabeli 'klienci'. Tę pomyłkę można zrozumieć, jako nieprawidłowe zrozumienie hierarchii i struktury bazy danych.

Pytanie 16

Witryna internetowa powinna mieć zaprezentowaną strukturę bloków. Aby osiągnąć ten układ, należy przypisać sekcjom odpowiednie właściwości w następujący sposób:

Ilustracja do pytania
A. float tylko dla bloków: 2, 3, 4; clear dla bloku 5
B. float tylko dla bloku 2; clear dla bloków: 3, 4
C. float wyłącznie dla bloku 5; clear dla bloku 2
D. float tylko dla bloków: 3, 4; clear dla bloku 5
Żeby osiągnąć układ, który widzisz w pytaniu, musisz dobrze zrozumieć, jak działają właściwości CSS float i clear. Właściwość float umożliwia przesunięcie elementów w lewo lub w prawo w stosunku do ich kontenera oraz innych elementów. To jest przydatne do tworzenia układów kolumnowych. W tym przypadku bloki 2, 3 i 4 muszą być przesunięte w prawo, żeby ułożyły się obok siebie na poziomie. Blok 2 jest największy i pełni rolę ramki dla pozostałych bloków. Użycie float dla tych bloków daje oczekiwany efekt. Jednak żeby blok 5 znalazł się pod całą strukturą, musisz zastosować clear dla bloku 5. Dzięki temu clear, blok 5 nie będzie otoczony przez inne elementy z float i znajdzie się poniżej. Z mojego doświadczenia, praktyczne wykorzystanie float i clear jest świetne, bo pozwala na tworzenie responsywnych układów bez potrzeby sięgania po bardziej skomplikowane metody jak flexbox czy grid. Choć float nie jest już tak powszechnie stosowany w profesjonalnych projektach, dobrze jest znać jego działanie i ograniczenia, żeby lepiej rozumieć ewolucję CSS oraz móc pracować z kodem, który jeszcze wykorzystuje te klasyczne metody.

Pytanie 17

Która funkcja PHP służy do ZAPISYWANIA danych do pliku?

A.
freadfile()
B.
fputs()
C.
fopen()
D.
fgets()
fgets() CZYTA wiersz z pliku, a nie zapisuje. fopen() tylko OTWIERA plik (zwraca uchwyt), nie zapisuje danych. freadfile() nie istnieje. Zapis do pliku wykonuje fputs().

Pytanie 18

Zapis tagu HTML w formie <a href="#hobby">przejdź</a>?

A. jest poprawny, po kliknięciu w odnośnik otworzy się strona internetowa o adresie "hobby"
B. jest błędny, w atrybucie href trzeba wpisać adres URL
C. jest błędny, niepoprawnie użyto znaku "#" w atrybucie href
D. jest poprawny, po kliknięciu w odnośnik aktualna strona zostanie przewinięta do elementu o nazwie "hobby"
Twoja odpowiedź jest trafna, bo znacznik <a href="#hobby">przejdź</a> naprawdę jest zgodny z tym, co mówi HTML. Jak to działa? No, ten znak '#' wskazuje na lokalny odnośnik, co oznacza, że przeglądarka szuka elementu na stronie, który ma id "hobby". Przykładowo, jeśli w kodzie HTML mamy coś jak <div id="hobby">, to klikając w link, przewinie widok do tej sekcji. To jest super przydatne, zwłaszcza w długich dokumentach czy różnych aplikacjach, bo pozwala szybko skakać do interesujących nas części. Z mojego doświadczenia, używanie takich lokalnych odnośników nie tylko ułatwia nawigację, ale też poprawia SEO i interakcję użytkowników z treścią. Warto to stosować!

Pytanie 19

Która wartość atrybutu target otwiera stronę w NOWYM oknie lub karcie?

A.
_blank
B.
_top
C.
_parent
D.
_self
Wartość _blank atrybutu target otwiera odnośnik w NOWYM oknie lub karcie przeglądarki, np. <a href="..." target="_blank">. Stosuje się ją, by nie odrywać użytkownika od bieżącej strony. Dlatego nowe okno otwiera _blank.

Pytanie 20

Na co wpływa częstotliwość próbkowania?

A. na skalę głośności utworu
B. na jakość cyfrowego dźwięku
C. na jakość dźwięku analogowego
D. na amplitudę fali dźwiękowej
Częstotliwość próbkowania (np. 44,1 kHz dla CD) określa, ile razy na sekundę mierzona jest amplituda sygnału przy zamianie dźwięku na postać cyfrową. Im wyższa, tym wierniej odwzorowany dźwięk - wpływa więc na jakość dźwięku CYFROWEGO. Dlatego częstotliwość próbkowania wpływa na jakość cyfrowego dźwięku.

Pytanie 21

Znak <s> w HTML powoduje

A. skreślenie tekstu
B. migotanie tekstu
C. pochylenie tekstu
D. podkreślenie tekstu
Znaczniki HTML pełnią różne funkcje związane z formatowaniem tekstu, jednak nie każdy znacznik działa w sposób intuicyjny. Na przykład, wybór odpowiedzi dotyczącej pochylenia tekstu wskazuje na nieporozumienie w zakresie zastosowania znacznika. Tekst pochylony w HTML osiąga się za pomocą znacznika <em> lub <i>, które są przeznaczone do podkreślenia znaczenia lub wyróżnienia fragmentu tekstu. Odpowiedź sugerująca migotanie tekstu pokazuje braki w wiedzy o standardach HTML; w rzeczywistości nie ma takiego znacznika w HTML5, a efekt migotania jest niezalecany ze względu na problemy z dostępnością i użytecznością. Wreszcie, podkreślenie tekstu w HTML realizowane jest przy pomocy znacznika <u>, który jest zarezerwowany dla tekstu, który jest ważny lub w inny sposób wyróżniony, a nie dla przekreślenia. Zatem, w kontekście HTML, kluczowe jest zrozumienie przeznaczenia każdego znacznika, aby unikać nieporozumień i błędnych interpretacji, które mogą prowadzić do niewłaściwego formatowania oraz naruszenia zasad dostępności.

Pytanie 22

Na przedstawionej grafice widać fragment bazy danych. Jakie kwerendę należy zastosować, aby uzyskać nazwy produktów zakupionych przez klienta o id = 1?

Ilustracja do pytania
A. SELECT nazwa FROM produkty JOIN transakcje_produkty JOIN transakcje WHERE nr_klienta = 1
B. SELECT nazwa FROM produkty JOIN transakcje_produkty USING(nr_produktu) WHERE nr_klienta = 1
C. SELECT nazwa FROM produkty JOIN transakcje ON nr_produktu = nr_klienta WHERE nr_klienta = 1
D. SELECT nazwa FROM produkty JOIN transakcje_produkty USING(nr_produktu) JOIN transakcje USING(nr_transakcji) WHERE nr_klienta = 1
Prawidłowa odpowiedź używa właściwego połączenia tabel baz danych aby otrzymać nazwy produktów zakupionych przez klienta o konkretnym identyfikatorze. W SQL kwerenda z JOIN umożliwia łączenie danych z więcej niż jednej tabeli na podstawie wspólnego pola. W tym przypadku tabela produkty jest połączona z transakcje_produkty przez pole nr_produktu oraz tabela transakcje jest połączona z transakcje_produkty przez pole nr_transakcji. Dzięki temu możliwe jest uzyskanie pełnego obrazu transakcji dla klienta o id = 1. Zastosowanie USING(nr_produktu) i USING(nr_transakcji) upraszcza kwerendę eliminując konieczność jawnego określania kolumn po obu stronach klauzuli ON. Praktyczne zastosowanie takich kwerend jest podstawą w analizie danych sprzedażowych gdzie analiza historii zakupów klientów może dostarczyć cennych informacji dla działów marketingu oraz logistyki. Dobre praktyki obejmują również optymalizację zapytań SQL aby były jak najbardziej efektywne co jest kluczowe przy pracy z dużymi zbiorami danych.

Pytanie 23

W tabeli personel znajdują się pola: imie, nazwisko, pensja, staz. Aby otrzymać średnią pensję pracowników, dla których staż wynosi od 10 do 20 lat pracy włącznie, należy wykonać kwerendę:

A. SELECT COUNT(*) FROM personel WHERE staz >= 10 AND staz <= 20
B. SELECT AVG(pensja) FROM personel WHERE staz >= 10 AND staz <= 20
C. SELECT COUNT(pensja) FROM personel WHERE staz >= 10 AND staz <= 20
D. SELECT AVG(*) FROM personel WHERE staz >= 10 AND staz <= 20
Poprawna kwerenda to 'SELECT AVG(pensja) FROM personel WHERE staz >= 10 AND staz <= 20;'. Użycie funkcji AVG() jest kluczowe, gdyż jej celem jest obliczenie średniej wartości z konkretnego zestawu danych, w tym przypadku pensji pracowników z określonym stażem. Funkcja ta agreguje dane, zliczając sumę pensji i dzieląc ją przez ich liczbę, co jest standardową metodą obliczania średniej arytmetycznej. W kontekście praktycznym, taką kwerendę można wykorzystać w raportach finansowych dla działu HR, aby ocenić wynagrodzenia w zespole z odpowiednim doświadczeniem. Standardy SQL zalecają użycie funkcji agregujących, takich jak AVG(), do takich obliczeń, co zapewnia dokładność i efektywność w analizie danych. Co więcej, efektywne wykorzystanie takich zapytań pozwala na lepsze planowanie budżetu oraz strategii wynagrodzeń w organizacjach.

Pytanie 24

Które polecenie MySQL służy do odebrania uprawnień użytkownikowi?

A.
CREATE
B.
RENAME
C.
GRANT
D.
REVOKE
Odebranie wcześniej nadanych uprawnień realizuje polecenie REVOKE, np. REVOKE INSERT ON baza.* FROM anna;. To przeciwieństwo GRANT, obie należą do grupy DCL (sterowanie dostępem). Zapamiętaj parę: GRANT daje, REVOKE odbiera.

Pytanie 25

W JavaScript zapis a++; można przedstawić w inny sposób jako

A. a = a + 1
B. 1 += a
C. a << 1
D. a = a & 1
Odpowiedź 'a = a + 1;' jest poprawna, ponieważ dokładnie odzwierciedla działanie operatora inkrementacji 'a++;'. Operator '++' w JavaScript zwiększa wartość zmiennej o 1. W przypadku użycia 'a = a + 1;', operacja ta jest explicite zapisana jako przypisanie aktualnej wartości 'a' powiększonej o 1. Taki zapis jest często stosowany w sytuacjach, gdy chcemy lepiej zrozumieć, co się dzieje w kodzie, szczególnie dla początkujących programistów. Przykładowo, jeśli mamy zmienną, która przechowuje liczbę, możemy użyć 'a = a + 1;' w pętli, aby zliczać ilość iteracji. Warto zauważyć, że użycie operatora '++' jest bardziej zwięzłe i często preferowane w profesjonalnym kodzie, jednak zrozumienie, jak działa to na poziomie podstawowym, jest kluczowe. Dobrą praktyką jest dbałość o przejrzystość kodu, zwłaszcza w zespołach, gdzie różne osoby mogą pracować nad tym samym projektem.

Pytanie 26

W języku JavaScript zdefiniowano obiekt. Aby uzyskać wartość atrybutu, można użyć następującego zapisu:

obiekt = { q: 1, w: 2, e: 3, r:4 };
A. obiekt:w
B. obiekt->w
C. obiekt::w
D. obiekt.w
Błędne odpowiedzi opierają się na nieprawidłowej interpretacji sposobu dostępu do właściwości obiektów w JavaScript. Notacja 'obiekt:w' nie jest poprawna, ponieważ nie stosuje się dwukropka do uzyskiwania dostępu do właściwości. Dwukropek jest używany w kontekście tworzenia obiektów, gdzie określa parę klucz-wartość, a nie podczas odczytywania wartości. Z kolei notacja 'obiekt::w' w JavaScript również nie ma zastosowania. Podwójny dwukropek nie jest uznawany za prawidłową operację i nie ma zastosowania w kontekście obiektów. Zresztą, w wielu innych językach programowania, takich jak C++ czy Python, używa się podwójnego dwukropka w zupełnie innym kontekście, co może prowadzić do pomyłek. Ostatnia odpowiedź 'obiekt->w' może sugerować wpływy z języków takich jak C czy C++, gdzie operator strzałki '->' jest używany do dostępu do właściwości wskaźnika na obiekt. W JavaScript jednak nie używa się wskaźników, a dostęp do właściwości obiektu odbywa się przez notację kropkową lub notację indeksu. Właściwe zrozumienie tych koncepcji jest kluczowe dla efektywnego programowania w JavaScript, a błędne podejście do notacji prowadzi do frustracji i błędów w kodzie.

Pytanie 27

Jak nazwana jest technika dołączania arkusza stylów do dokumentu HTML użyta w podanym kodzie?

<p style="color:red;">tekst</p>
A. Styl wpisany, lokalny
B. Styl alternatywny, zewnętrzny
C. Styl zewnętrzny
D. Styl wewnętrzny
Styl wewnętrzny to metoda w której reguły CSS są zawarte w sekcji head dokumentu HTML w znaczniku style Jest to przydatne w przypadku gdy stylizacja ma obejmować wiele elementów w pojedynczym dokumencie ale nie wymaga globalnego zastosowania Styl wewnętrzny jest bardziej zorganizowany niż styl wpisany ale nadal nie jest najlepszym rozwiązaniem dla dużych projektów ponieważ utrudnia współdzielenie stylów między wieloma stronami Styl alternatywny zewnętrzny odnosi się do sytuacji gdy mamy dostępne różne arkusze stylów które mogą być wymiennie stosowane do tej samej strony internetowej Jest to zaawansowana koncepcja rzadko stosowana w praktyce ale przydatna w projektach gdzie użytkownicy mogą wybierać różne motywy graficzne Styl zewnętrzny to najbardziej zalecana metoda stylizacji gdzie wszystkie reguły są zapisane w osobnym pliku CSS który jest linkowany do dokumentu HTML Pozwala to na łatwe zarządzanie i aktualizację stylów w całym projekcie Jednym z typowych błędów jest mylenie stylu zewnętrznego ze stylem wpisanym oba rozwiązania służą do różnych celów Styl zewnętrzny daje strukturę i pozwala na współdzielenie stylów między stronami co poprawia spójność wyglądu całego serwisu oraz ułatwia jego utrzymanie w przeciwieństwie do bardziej chaotycznego podejścia stylu wpisanego który może prowadzić do zduplikowanego i trudnego w zarządzaniu kodu

Pytanie 28

W kodzie CSS użyto stylizacji dla elementu listy, a żadne inne reguły CSS nie zostały ustalone. To zastosowane formatowanie spowoduje, że

Ilustracja do pytania
A. tekst wszystkich elementów, którym nadano id „hover”, będzie w kolorze Maroon
B. kolor Maroon obejmie co drugi element listy
C. tekst wszystkich elementów listy będzie miał kolor Maroon
D. po najechaniu myszką na element listy, kolor tekstu zmieni się na Maroon
Odpowiedź jest poprawna, ponieważ selektor CSS li:hover odnosi się do elementów listy, które zmieniają swój styl po najechaniu kursorem. W tym przypadku zmiana dotyczy koloru tekstu, który stanie się maroon. Selektor :hover jest pseudoklasą w CSS, która odpowiada za zmiany stylu elementu, gdy użytkownik umieści nad nim kursor. Jest to powszechnie stosowana technika w projektowaniu interaktywnych i przyjaznych dla użytkownika stron internetowych, umożliwiająca na przykład wizualne podkreślenie linków lub elementów menu. Dzięki zastosowaniu takiego selektora, projektanci mogą tworzyć dynamiczne efekty, które reagują na działania użytkownika, co zwiększa atrakcyjność wizualną i funkcjonalność strony. Dobre praktyki zalecają używanie pseudoklas jak :hover do poprawy interakcji użytkownika z interfejsem, a także do zapewnienia spójności z innymi elementami strony, które mogą również reagować na najechanie kursorem. Warto także pamiętać o dostępności, zapewniając alternatywne sposoby na interakcję z elementami, np. dla urządzeń dotykowych.

Pytanie 29

Polecenie serwera MySQL postaci

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

Pytanie 30

Co oznacza termin „upload” danych?

A. pobieranie plików z serwera
B. opóźnienie w transmisji pliku
C. przesyłanie plików na serwer
D. trasę transferu pliku
Termin „upload” oznacza PRZESYŁANIE plików z komputera użytkownika NA serwer - np. wgranie zdjęcia czy plików witryny przez FTP. To kierunek „w górę”, do serwera. Dlatego upload to przesyłanie plików na serwer.

Pytanie 31

Polecenie SQL:

GRANT SELECT, INSERT, UPDATE, DELETE ON klienci TO adam@localhost
Przedstawione polecenie SQL nadaje użytkownikowi adam@localhost prawa:
A. do zarządzania strukturą tabeli klienci
B. do manipulowania danymi bazy danych klienci
C. do manipulowania danymi w tabeli klienci
D. do zarządzania strukturą bazy danych klienci
W kontekście analizy niepoprawnych odpowiedzi, odpowiedzi dotyczące zarządzania strukturą tabeli klienci oraz zarządzania strukturą bazy danych klienci są niepoprawne, ponieważ polecenie GRANT nie odnosi się do tych aspektów. Zarządzanie strukturą tabeli zazwyczaj obejmuje takie operacje jak tworzenie lub modyfikowanie tabel, co jest realizowane przez polecenia takie jak CREATE TABLE czy ALTER TABLE. W przypadku polecenia GRANT, nie ma mowy o wprowadzaniu zmian w strukturze tabeli, a jedynie o nadawaniu uprawnień do manipulacji danymi. Podobnie, zarządzanie strukturą bazy danych dotyczy bardziej operacji administracyjnych, takich jak tworzenie bazy danych, co również nie jest tożsame z uprawnieniami do operacji na danych. Ostatnia z niepoprawnych odpowiedzi, dotycząca manipulowania danymi bazy danych klienci, jest również myląca, ponieważ odnosi się do całej bazy danych jako całości, podczas gdy polecenie dotyczy wyłącznie konkretnej tabeli. W praktyce, zarządzanie danymi w kontekście bazy danych oznacza operacje na zbiorze danych, a nie na pojedynczych rekordach w tabelach. Dlatego kluczowe jest zrozumienie, że GRANT pozwala na nadawanie uprawnień do działania na konkretnej tabeli, a nie na całej bazie danych czy jej strukturze.

Pytanie 32

W systemie baz danych zdefiniowano tabelę Mieszkancy, która zawiera dane. W celu usunięcia tej tabeli oraz jej zawartości, należy użyć polecenia

A. TRUNCATE TABLE Mieszkancy;
B. DROP TABLE Mieszkancy;
C. ALTER TABLE Mieszkancy;
D. DELETE FROM Mieszkancy;
Polecenie 'DROP TABLE Mieszkancy;' jest odpowiednie do usunięcia tabeli z bazy danych, wraz ze wszystkimi jej danymi i strukturą. W przeciwieństwie do innych poleceń, takich jak 'DELETE' czy 'TRUNCATE', które modyfikują zawartość tabeli, 'DROP TABLE' usuwa całą tabelę z systemu. Użycie tego polecenia jest nieodwracalne, dlatego przed jego zastosowaniem warto upewnić się, że posiadamy kopię zapasową danych, jeśli będą one w przyszłości potrzebne. W praktyce, jeśli jesteś administratorem bazy danych i chcesz usunąć zbędną tabelę, polecenie to jest niezwykle efektywne i pozwala na zwolnienie zasobów. Zgodnie z najlepszymi praktykami, przed wykonaniem operacji na bazie danych, zawsze warto przeprowadzić analizę wpływu na inne powiązane obiekty, takie jak relacje między tabelami. Dobrą praktyką jest również włączenie kontroli dostępu, aby nieuprawnione osoby nie mogły wykonywać takich operacji.

Pytanie 33

Kiedy między dwiema tabelami zachodzi relacja wiele-do-wielu?

A. gdy wielu wierszom z tabeli A odpowiada wiele wierszy z tabeli B
B. gdy wielu wierszom z A odpowiada tylko jeden wiersz z B
C. gdy jednemu wierszowi z A odpowiada dokładnie jeden wiersz z B
D. gdy jednemu wierszowi z A odpowiada wiele wierszy z B
Relacja wiele-do-wielu zachodzi, gdy WIELU wierszom z tabeli A może odpowiadać WIELE wierszy z tabeli B (i odwrotnie) - np. wielu autorów pisze wiele książek wspólnie. W praktyce rozbija się ją na dwie relacje 1..n przez tabelę pośrednią. Zapamiętaj: „wielu z obu stron” = wiele-do-wielu.

Pytanie 34

W kodzie HTML przypisano pewne znaczniki do klasy o nazwie "nomargin". Jak można przeprowadzić operacje na tych znacznikach w języku JavaScript, korzystając z odpowiedniej funkcji?

A. getElementsByClassName("nomargin")
B. getElement("nomargin")
C. getElementById("nomargin")
D. getElementsByTagName("nomargin")
Odpowiedzi, takie jak 'getElement("nomargin")', 'getElementById("nomargin")' oraz 'getElementsByTagName("nomargin")', są niewłaściwe z różnych powodów, które warto szczegółowo przeanalizować. Pierwsza opcja, 'getElement("nomargin")', nie istnieje w standardzie JavaScript, co może prowadzić do błędów w kodzie. Właściwe metody umożliwiające selekcję elementów to bardziej specyficzne funkcje, jak getElementById, która z kolei wymaga unikalnego identyfikatora, a nie klasy. Przykład 'getElementById("nomargin")' działałby tylko wtedy, gdy 'nomargin' byłby przypisany jako identyfikator (id) jednego, unikalnego elementu. Jednak w HTML nie zaleca się stosowania tej metody do selekcji klas, co stwarza kolejne problemy. Ostatnia odpowiedź, 'getElementsByTagName("nomargin")', jest również błędna, ponieważ ta metoda służy do selekcji elementów na podstawie ich tagów HTML, a nie klas. Ponadto, brak zrozumienia różnic między tymi metodami może prowadzić do istotnych błędów w kodzie, które będą skutkować błędnym działaniem aplikacji webowych. Kluczowe jest, aby przy pracy z DOM stosować odpowiednie metody zgodnie z ich przeznaczeniem, co podnosi jakość kodu oraz jego czytelność.

Pytanie 35

W edytorze grafiki rastrowej funkcja „dodaj kanał alfa” umożliwia

A. wyostrzenie krawędzi obrazu
B. ustawienie prawidłowego balansu bieli
C. wprowadzenie warstwy z przezroczystością
D. powiększenie głębi ostrości obrazu
Czasami można się pomylić i przypisać funkcji „dodaj kanał alfa” właściwości, których ona w rzeczywistości nie posiada. W środowisku graficznym, balans bieli to zupełnie inny obszar, który dotyczy korekty kolorystyki zdjęcia, a nie warstw czy przezroczystości. To jest bardziej domena narzędzi do obróbki fotografii, gdzie ważne jest uzyskanie naturalnych barw. Natomiast głębia ostrości to pojęcie typowo fotograficzne, które odnosi się do zakresu ostrości obrazu w przestrzeni – żaden kanał w grafice rastrowej tego nie zmieni, bo zdjęcie jest już zapisane w płaskiej formie. Wyostrzanie krawędzi z kolei to proces nakładania filtrów poprawiających ostrość, najczęściej przez zwiększanie kontrastu między pikselami na granicach różnych kolorów – i tutaj również kanał alfa nie ma żadnego zastosowania. Z mojego doświadczenia, takie błędne rozumienie pojawia się, gdy ktoś myli narzędzia do edycji obrazu z bardziej zaawansowanymi funkcjami związanymi z warstwami czy maskowaniem. Warto pamiętać, że kanał alfa jest typowy tam, gdzie istotna jest przezroczystość i praca na wielowarstwowych plikach – praktycznie nie ma wpływu na kolorystykę czy ostrość obrazu. Branżowe standardy jasno rozdzielają te pojęcia: balans bieli i ostrość związane są z przetwarzaniem barw i detali, a alfa – wyłącznie z przezroczystością. Przypisywanie mu innych funkcji to taki typowy mit początkujących grafików, który warto rozwiać już na starcie nauki.

Pytanie 36

Która funkcja PHP zamieni wyraz „kota” na „mysz” w napisie „ala ma kota”?

A.
str_replace("ala ma kota", "kota", "mysz");
B.
str_replace("kota", "mysz", "ala ma kota");
C.
replace("ala ma kota", "kota", "mysz");
D.
replace("kota", "mysz", "ala ma kota");
Zamiany fragmentu napisu dokonuje str_replace($szukane, $zamiennik, $tekst) - w dokładnie tej kolejności, więc str_replace("kota", "mysz", "ala ma kota") da „ala ma mysz”. Pierwszy argument to czego szukamy, drugi czym zastąpić, trzeci gdzie. Zapamiętaj kolejność: szukane, nowe, tekst.

Pytanie 37

W języku CSS określono styl dla stopki. Aby zastosować to formatowanie do bloku oznaczonego znacznikiem div, należy wpisać

#stopka { ... }
A. <div title="stopka">
B. <div id="stopka">
C. <div "stopka">
D. <div class="stopka">
W przypadku odpowiedzi <div "stopka"> brak jest poprawnej składni HTML ponieważ atrybuty w tagach HTML są zawsze parą nazwa-wartość i muszą być opatrzone znakami równości oraz cudzysłowami wokół wartości. Taka konstrukcja nie jest zgodna z zasadami HTML i nie zostanie przetworzona prawidłowo przez przeglądarki. Atrybut title czyli <div title="stopka"> używany jest do wyświetlania dodatkowych informacji w formie dymka po najechaniu kursorem i nie jest związany z selektorami CSS. Z kolei <div class="stopka"> odnosi się do użycia klasy. Klasy są bardziej elastyczne pozwalając na przypisywanie tego samego stylu do wielu elementów co jest użyteczne w przypadku powtarzających się elementów na stronie. Jednakże w pytaniu jest mowa o selektorze ID co oznacza że stylizacja dotyczy konkretnego niepowtarzalnego elementu. Selekcję przez id poprzedzamy znakiem # co jest konwencją stosowaną w projektach gdzie poszczególne elementy mają być unikalne w ramach dokumentu HTML. Zrozumienie i poprawne używanie atrybutów takich jak id i class jest kluczowe dla efektywnego zarządzania stylem w dużych i złożonych projektach internetowych. Selekcja poprzez id jest stosowana w przypadkach gdzie wymagana jest unikalna identyfikacja elementu co jest niezbędnym elementem w procesie projektowania struktury stron internetowych. Stąd też ważne jest aby unikać nadmiarowego stosowania id w miejscach gdzie powtarzalność elementów jest wymagana ponieważ prowadzi to do problemów w zakresie skalowalności i utrzymania kodu.

Pytanie 38

Analizując poniższy kod HTML, jak w przeglądarce zachowa się blok B względem bloku A?

<div>A</div>
<div style="margin-top: 20px">B</div>
A. blok B będzie oddalony od bloku A o 20 px
B. zostanie ustawiony dolny margines bloku B
C. blok A zostanie przesunięty w lewo o 20 px
D. bloki A i B będą nachodzić na siebie
Drugi <div> (blok B) ma w atrybucie style ustawione margin-top: 20px - to margines zewnętrzny po GÓRNEJ stronie. Ponieważ blok B leży pod blokiem A, ten 20-pikselowy margines tworzy odstęp nad B, odsuwając go w dół od A. Dlatego blok B będzie oddalony od bloku A o 20 px.

Pytanie 39

W poniższym kodzie PHP wykonano operację na bazie danych. Której funkcji należy użyć, aby pobrać liczbę zmienionych w tabeli wierszy?

$zapytanie="UPDATE kadra SET stanowisko='Programista' WHERE id < 10";
mysqli_query($db, $zapytanie);
A. mysqli_use_result()
B. mysqli_field_count()
C. mysqli_num_rows()
D. mysqli_affected_rows()
Wybrana odpowiedź jest niestety niepoprawna. Może to wynikać z niezrozumienia różnych funkcji dostępnych w języku PHP do manipulowania danymi w bazach danych MySQL. Funkcja mysqli_field_count() zwraca liczbę pól w wyniku zapytania SELECT, a nie liczbę zmienionych wierszy. Z kolei mysqli_use_result() inicjuje pobieranie wyników zapytania wysłanego do serwera MySQL i nie zwraca informacji o liczbie zmienionych wierszy. Natomiast funkcja mysqli_num_rows() zwraca liczbę wierszy w wyniku zapytania SELECT, a nie liczbę zmienionych wierszy. Do tego celu służy jedynie funkcja mysqli_affected_rows(), która zwraca liczbę wierszy zmienionych, dodanych lub usuniętych przez ostatnie wywołanie funkcji mysqli_query() na serwerze MySQL. Pamiętaj więc, że wybór odpowiedniej funkcji zależy od kontekstu i rodzaju operacji wykonanej na bazie danych.

Pytanie 40

Mając var osoba = {imie:"Anna", nazwisko:"Kowalska", rok_urodzenia:1985};, jak odwołać się do właściwości nazwisko?

A.
osoba.nazwisko
B.
osoba[2]
C.
osoba::nazwisko
D.
osoba[1]
Pozostałe zapisy są błędne. osoba[1] i osoba[2] traktują obiekt jak tablicę indeksowaną liczbami - ale właściwości obiektu mają NAZWY, nie numery pozycji, więc nic nie zwrócą. osoba::nazwisko używa operatora zakresu :: znanego z C++ czy PHP (dla elementów statycznych klasy) - w JavaScripcie nie istnieje. Poprawne jest osoba.nazwisko.