Przejdź do głównej treści

Pytania pomocnicze - INF.03

Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych - pytania pomocnicze rozwijające tematy z pytań egzaminacyjnych. Łącznie: 8439. Strona 89 z 116.

Co dokładnie przesyła formularz HTML po kliknięciu przycisku submit?

Formularz przesyła pary danych w postaci nazwa pola = wartość pola. Nazwa pochodzi z atrybutu `name`, a wartość z aktualnej zawartości pola.

Czym różni się atrybut `name` od atrybutu `value`?

`name` określa nazwę parametru wysyłanego na serwer. `value` określa wartość pola, np. tekst wpisany lub wartość domyślną.

Dlaczego pole formularza powinno mieć atrybut `name`?

Bez atrybutu `name` serwer nie otrzyma wartości tego pola jako nazwanego parametru. W praktyce trudno wtedy odczytać dane po stronie backendu.

Jak odczytać w PHP pole `<input name="login">` wysłane metodą POST?

Należy użyć tablicy `$_POST`, np. `$_POST['login']`. Klucz `login` odpowiada wartości atrybutu `name`.

Jak odczytać w PHP pole `<input name="login">` wysłane metodą GET?

Należy użyć tablicy `$_GET`, np. `$_GET['login']`. Dane są wtedy zwykle widoczne w adresie URL.

Czym różni się `name` od `id` w elemencie formularza?

`id` identyfikuje element w dokumencie HTML, np. dla CSS, JavaScriptu lub etykiety. `name` określa nazwę parametru przesyłanego do serwera.

Jaki atrybut ustawia pole formularza jako tylko do odczytu?

Służy do tego atrybut `readonly`. Nie należy go mylić z `name`, które odpowiada za nazwę przesyłanego pola.

Jaki atrybut ogranicza maksymalną długość tekstu w polu input?

Do ograniczenia liczby znaków służy atrybut `maxlength`. Atrybut `name` nie wpływa na długość wpisywanych danych.

Czym jest kod źródłowy?

Kod źródłowy to program zapisany przez programistę w języku programowania, np. C++, JavaScript lub PHP. Jest czytelny dla człowieka, ale zwykle wymaga przetworzenia, aby komputer mógł go wykonać.

Czym jest kod maszynowy?

Kod maszynowy to zestaw instrukcji zrozumiałych bezpośrednio dla procesora. Jest zapisany w postaci binarnej i nie jest wygodny do bezpośredniego pisania przez człowieka.

Jaka jest rola kompilatora?

Kompilator analizuje kod źródłowy i przekształca go w kod wynikowy, np. plik wykonywalny lub kod pośredni. Może też wykrywać błędy składniowe.

Czym różni się kompilowanie od interpretowania?

Kompilowanie tłumaczy program przed uruchomieniem, natomiast interpretowanie wykonuje instrukcje programu na bieżąco. Przykładem języka często interpretowanego jest JavaScript.

Czym różni się kompilowanie od wdrażania?

Kompilowanie przygotowuje program do uruchomienia, a wdrażanie polega na przekazaniu gotowej aplikacji do użycia, np. przez umieszczenie jej na serwerze.

Jakie błędy mogą zostać wykryte podczas kompilacji?

Najczęściej wykrywane są błędy składniowe, błędy typów oraz brakujące deklaracje. Program z takimi błędami zwykle nie zostanie poprawnie skompilowany.

Do czego służy instrukcja UPDATE w SQL?

Instrukcja `UPDATE` służy do zmiany wartości w istniejących rekordach tabeli. Nie dodaje nowych danych ani nie usuwa rekordów.

Jaką rolę pełni klauzula SET w instrukcji UPDATE?

Klauzula `SET` określa, które kolumny mają zostać zmienione oraz jakie nowe wartości mają otrzymać.

Co się stanie, gdy w instrukcji UPDATE zabraknie klauzuli WHERE?

Zaktualizowane zostaną wszystkie rekordy w tabeli. Jest to częsty błąd, dlatego przed wykonaniem takiego zapytania trzeba sprawdzić jego skutki.

Jak odróżnić UPDATE od DELETE?

`UPDATE` zmienia dane w istniejących rekordach, natomiast `DELETE` usuwa rekordy z tabeli. Obie instrukcje należą do DML.

Dlaczego zapytanie SET cena = cena * 1.1 oznacza aktualizację danych?

Ponieważ zmienia dotychczasową wartość kolumny `cena`, mnożąc ją przez 1.1, czyli zwiększając o 10%.

Do jakiej grupy poleceń SQL należy UPDATE?

`UPDATE` należy do DML, czyli Data Manipulation Language. Są to polecenia służące do manipulowania danymi, np. `INSERT`, `UPDATE`, `DELETE`.

Do czego służy metoda getElementsByClassName()?

Służy do pobierania elementów HTML, które mają określoną klasę CSS zapisaną w atrybucie `class`.

Czy w getElementsByClassName() podaje się nazwę klasy z kropką?

Nie. Podaje się samą nazwę klasy, np. `akapit`, a nie `.akapit`. Kropki używa się w selektorach CSS, np. w `querySelector()`.

Jaka jest różnica między class a id w HTML?

`class` może być wspólna dla wielu elementów, a `id` powinno jednoznacznie identyfikować jeden element na stronie.

Czy getElementsByClassName('akapit') znajdzie element z id="akapit"?

Nie. Ta metoda przeszukuje atrybut `class`, więc element z samym `id="akapit"` nie zostanie wybrany.

Co zwraca metoda getElementsByClassName()?

Zwraca kolekcję `HTMLCollection`, czyli listę pasujących elementów. Aby odwołać się do pierwszego elementu, używa się indeksu `[0]`.

Czy getElementsByClassName() sprawdza treść elementu HTML?

Nie. Metoda nie analizuje tekstu między znacznikami, tylko wartość atrybutu `class`.

Dlaczego sama deklaracja `var text;` nie wystarcza w tym kodzie?

Ponieważ zmienna zadeklarowana bez wartości ma w JavaScript wartość `undefined`. Przy dopisywaniu tekstu operatorem `+=` może to spowodować pojawienie się napisu `undefined` na początku wyniku.

Jak poprawnie zainicjować zmienną przeznaczoną do przechowywania tekstu?

Należy przypisać jej pusty ciąg znaków, np. `var text = '';`. Dzięki temu kolejne fragmenty tekstu będą dopisywane od pustej wartości.

Jak działa operator `+=` w przypadku tekstu w JavaScript?

Operator `+=` dopisuje prawą stronę wyrażenia do aktualnej wartości zmiennej. Dla stringów oznacza konkatenację, czyli łączenie napisów.

Do czego służy `tab.length` w pętli `for`?

`tab.length` zwraca liczbę elementów tablicy. Dzięki temu pętla wykonuje się dla wszystkich indeksów od `0` do `tab.length - 1`.

Dlaczego odpowiedź „zadeklarować zmienną i” jest niepoprawna?

Zmienna `i` jest już zadeklarowana w nagłówku pętli: `for (var i = 0; ...)`. Problem dotyczy zmiennej `text`, która nie ma wartości początkowej.

Jaką rolę pełni fragment `'<br>'` dopisywany w pętli?

Jest to znacznik HTML oznaczający przełamanie linii. Dzięki niemu każdy element tablicy może zostać wyświetlony w osobnym wierszu.

Do czego służy instrukcja SELECT w SQL?

Instrukcja `SELECT` służy do pobierania danych z jednej lub wielu tabel bazy danych. Pozwala wskazać konkretne kolumny, które mają zostać zwrócone w wyniku zapytania.

Jak działa słowo kluczowe DISTINCT w zapytaniu SELECT?

`DISTINCT` usuwa powtarzające się wiersze z wyniku zapytania. Dla jednej kolumny oznacza to zwrócenie każdej wartości tylko raz.

Dlaczego poprawna odpowiedź to SELECT DISTINCT producent FROM programy?

Ponieważ pytanie wymaga pobrania nazw producentów bez powtórzeń. Kolumna `producent` jest wybierana z tabeli `programy`, a `DISTINCT` eliminuje duplikaty.

Czy SELECT UNIQUE producent FROM programy jest poprawne w MySQL?

Nie. W standardowej składni MySQL do usuwania powtórzeń w wyniku zapytania używa się `DISTINCT`, a nie `UNIQUE`.

Jaka jest różnica między DISTINCT a UNIQUE?

`DISTINCT` stosuje się w zapytaniu `SELECT`, aby usunąć duplikaty z wyniku. `UNIQUE` jest zwykle używane jako ograniczenie w tabeli, które wymusza unikalność wartości w kolumnie.

Co zwróci zapytanie SELECT producent FROM programy bez DISTINCT?

Zwróci wszystkie wartości z kolumny `producent`, także powtarzające się. Jeśli kilka programów ma tego samego producenta, jego nazwa pojawi się kilka razy.

Do czego służy reguła CSS @media?

Reguła `@media` pozwala stosować wybrane style CSS tylko wtedy, gdy spełniony jest określony warunek, np. dana szerokość ekranu.

Czym różni się max-width od min-width w media queries?

`max-width` oznacza, że style działają do podanej szerokości włącznie. `min-width` oznacza, że style działają od podanej szerokości wzwyż.

Co to jest breakpoint w RWD?

Breakpoint to punkt graniczny szerokości ekranu, przy którym zmienia się wygląd strony, np. układ kolumn lub rozmiar menu.

Dlaczego @font-face nie jest poprawną odpowiedzią w tym pytaniu?

`@font-face` służy do definiowania własnych czcionek w CSS, a nie do zmiany stylów zależnie od szerokości ekranu.

Do czego służy @keyframes w CSS?

`@keyframes` służy do definiowania animacji CSS, czyli kolejnych etapów zmiany wyglądu elementu w czasie.

Do czego służy @import w CSS?

`@import` pozwala zaimportować inny plik CSS do bieżącego arkusza stylów. Nie jest głównym mechanizmem RWD.

Na czym polega podejście mobile-first?

Mobile-first oznacza projektowanie stylów najpierw dla małych ekranów, a następnie rozszerzanie ich dla większych ekranów za pomocą np. `@media (min-width: ...)`.

Do czego służy znak # w wartości atrybutu href?

Znak `#` oznacza fragment dokumentu, czyli odwołanie do elementu o określonym `id`. Przykład `href="#dane"` prowadzi do elementu `id="dane"`.

Jaki element HTML jest celem odsyłacza href="#dane"?

Celem jest element znajdujący się na stronie, który ma atrybut `id="dane"`. Może to być np. sekcja, nagłówek, div lub inny element HTML.

Czy href="#dane" otwiera nową kartę przeglądarki?

Nie. Nową kartę może otworzyć np. atrybut `target="_blank"`, ale sam zapis `href="#dane"` tylko przewija stronę do wskazanego fragmentu.

Co się stanie, jeśli na stronie nie ma elementu o id="dane"?

Przeglądarka zwykle pozostanie na stronie i nie przewinie jej do konkretnego miejsca. W adresie może jednak pojawić się fragment `#dane`.

Czym różni się id od class w kontekście kotwic HTML?

`id` identyfikuje pojedynczy, unikalny element i może być celem odsyłacza z `#`. `class` służy głównie do grupowania elementów, np. dla CSS, i nie jest standardowym celem fragmentu URL.

Jak utworzyć odsyłacz do fragmentu innej podstrony?

Należy podać adres strony oraz fragment po znaku `#`, np. `href="kontakt.html#formularz"`. Po otwarciu strony przeglądarka przewinie ją do elementu `id="formularz"`.

Do czego służy polecenie UPDATE w SQL?

Polecenie `UPDATE` służy do zmiany istniejących danych w tabeli. Nie tworzy nowych rekordów ani nie zmienia struktury bazy.

Jaką rolę pełni funkcja mysqli_query() w PHP?

`mysqli_query()` wykonuje zapytanie SQL na połączeniu z bazą danych MySQL. Może wykonywać m.in. `SELECT`, `INSERT`, `UPDATE` i `DELETE`.

Czym różni się UPDATE od INSERT?

`UPDATE` zmienia dane w istniejących rekordach, a `INSERT` dodaje nowe rekordy do tabeli.

Czym różni się UPDATE od ALTER TABLE?

`UPDATE` zmienia dane zapisane w tabeli, natomiast `ALTER TABLE` zmienia strukturę tabeli, np. dodaje lub usuwa kolumnę.

Dlaczego w zapytaniu UPDATE ważny jest warunek WHERE?

`WHERE` określa, które rekordy mają zostać zmienione. Bez tego warunku zapytanie może zmodyfikować wszystkie wiersze w tabeli.

Do jakiej grupy poleceń SQL należy UPDATE?

`UPDATE` należy do DML, czyli Data Manipulation Language. Są to polecenia służące do operowania na danych, np. `INSERT`, `UPDATE`, `DELETE`.

Czy zapytanie UPDATE pobiera dane z bazy?

Nie. Do pobierania danych służy głównie `SELECT`, natomiast `UPDATE` modyfikuje dane już znajdujące się w bazie.

Do czego służy polecenie ALTER TABLE w SQL?

ALTER TABLE służy do zmiany struktury istniejącej tabeli, np. dodania, usunięcia albo modyfikacji kolumny.

Czym różni się ALTER TABLE od CREATE TABLE?

CREATE TABLE tworzy nową tabelę, natomiast ALTER TABLE modyfikuje tabelę, która już istnieje w bazie danych.

Czym różni się ALTER TABLE od DROP TABLE?

ALTER TABLE zmienia strukturę tabeli, a DROP TABLE usuwa całą tabelę wraz z jej definicją i zwykle także danymi.

Jak dodać nową kolumnę do istniejącej tabeli?

Używa się polecenia ALTER TABLE z klauzulą ADD, np. ALTER TABLE klienci ADD email VARCHAR(100);

Jak usunąć kolumnę z tabeli w SQL?

Najczęściej stosuje się ALTER TABLE z klauzulą DROP COLUMN, np. ALTER TABLE klienci DROP COLUMN email;

Do jakiej grupy poleceń SQL należy ALTER TABLE?

ALTER TABLE należy do DDL, czyli języka definiowania danych. Polecenia DDL służą do tworzenia i modyfikowania struktury bazy danych.