Rozwiązanie - Egzamin Praktyczny E.14

Arkusz E.14-01-19.01 - Styczeń 2019 - Wersja #01

Skrypt: PHP

Baza Danych:

Przykładowe rozwiązanie
Rozwiązanie - Arkusz praktyczny E.14-01-19.01 - Styczeń 2019 - Wersja #01
Wymagane zdjęcia
Egzamin E.14-01-19.01 - dodatkowe zdjęcia - kadr.jpg
kadr.jpg
Wyniki działań na bazie danych
Egzamin E.14-01-19.01 - Operacje na bazie danych - import.png
import.png
Egzamin E.14-01-19.01 - Operacje na bazie danych - import.png
kw1.jpg
Egzamin E.14-01-19.01 - Operacje na bazie danych - import.png
kw2.jpg
Egzamin E.14-01-19.01 - Operacje na bazie danych - import.png
kw3.jpg
Egzamin E.14-01-19.01 - Operacje na bazie danych - import.png
kw4.jpg
Plik dane.sql
-- phpMyAdmin SQL Dump
-- version 5.2.0
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Czas generowania: 12 Mar 2023, 09:30
-- Wersja serwera: 10.4.27-MariaDB
-- Wersja PHP: 8.2.0

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- Baza danych: `dane`
--

-- --------------------------------------------------------

--
-- Struktura tabeli dla tabeli `aktorzy`
--

CREATE TABLE `aktorzy` (
  `id` int(11) NOT NULL,
  `imie` text DEFAULT NULL,
  `nazwisko` text DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- --------------------------------------------------------

--
-- Struktura tabeli dla tabeli `filmy`
--

CREATE TABLE `filmy` (
  `id` int(10) UNSIGNED NOT NULL,
  `gatunki_id` int(10) UNSIGNED NOT NULL,
  `rezyserzy_id` int(10) UNSIGNED NOT NULL,
  `tytul` text DEFAULT NULL,
  `rok` year(4) DEFAULT NULL,
  `ocena` int(10) UNSIGNED DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;

--
-- Zrzut danych tabeli `filmy`
--

INSERT INTO `filmy` (`id`, `gatunki_id`, `rezyserzy_id`, `tytul`, `rok`, `ocena`) VALUES
(1, 1, 1, 'Arrival', 2016, 4),
(2, 2, 2, 'Vaiana: Skarb oceanu', 2016, 5),
(3, 3, 3, 'Sully', 2016, 5),
(4, 3, 4, 'Milczenie', 2017, 6),
(5, 4, 5, 'Uciekaj!', 2017, 5),
(6, 5, 6, 'W starym, dobrym stylu', 2017, 6),
(7, 5, 7, 'Bodyguard Zawodowiec', 2017, 5),
(8, 0, 0, 'Suburbicon', 2017, 5);

-- --------------------------------------------------------

--
-- Struktura tabeli dla tabeli `gatunki`
--

CREATE TABLE `gatunki` (
  `id` int(10) UNSIGNED NOT NULL,
  `nazwa` text DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;

--
-- Zrzut danych tabeli `gatunki`
--

INSERT INTO `gatunki` (`id`, `nazwa`) VALUES
(1, 'Sci-Fi'),
(2, 'animacja'),
(3, 'dramat'),
(4, 'horror'),
(5, 'komedia');

-- --------------------------------------------------------

--
-- Struktura tabeli dla tabeli `rezyserzy`
--

CREATE TABLE `rezyserzy` (
  `id` int(10) UNSIGNED NOT NULL,
  `imie` text DEFAULT NULL,
  `nazwisko` text DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;

--
-- Zrzut danych tabeli `rezyserzy`
--

INSERT INTO `rezyserzy` (`id`, `imie`, `nazwisko`) VALUES
(1, 'Denis', 'Villeneuve'),
(2, 'Ron', 'Clements'),
(3, 'Clint', 'Eastwood'),
(4, 'Martin', 'Scorseze'),
(5, 'Jordan', 'Peele'),
(6, 'Zach', 'Braff'),
(7, 'Patrick', 'Hughes'),
(8, 'Francis', 'Coppola');

--
-- Indeksy dla zrzutów tabel
--

--
-- Indeksy dla tabeli `aktorzy`
--
ALTER TABLE `aktorzy`
  ADD PRIMARY KEY (`id`);

--
-- Indeksy dla tabeli `filmy`
--
ALTER TABLE `filmy`
  ADD PRIMARY KEY (`id`);

--
-- Indeksy dla tabeli `gatunki`
--
ALTER TABLE `gatunki`
  ADD PRIMARY KEY (`id`);

--
-- Indeksy dla tabeli `rezyserzy`
--
ALTER TABLE `rezyserzy`
  ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT dla zrzuconych tabel
--

--
-- AUTO_INCREMENT dla tabeli `filmy`
--
ALTER TABLE `filmy`
  MODIFY `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=10;

--
-- AUTO_INCREMENT dla tabeli `gatunki`
--
ALTER TABLE `gatunki`
  MODIFY `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;

--
-- AUTO_INCREMENT dla tabeli `rezyserzy`
--
ALTER TABLE `rezyserzy`
  MODIFY `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=9;
COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Plik kwerendy.txt
Zapytanie 1: INSERT INTO filmy(id, tytul, rok, ocena) VALUES (NULL,'Suburbicon',2017,5);
Zapytanie 2: SELECT filmy.tytul, gatunki.nazwa FROM filmy, gatunki WHERE filmy.gatunki_id=gatunki.id AND ocena=6;
Zapytanie 3: SELECT tytul, rok FROM filmy, gatunki WHERE filmy.gatunki_id=gatunki.id AND gatunki.nazwa = 'dramat' AND ocena = 5;
Zapytanie 4: CREATE TABLE aktorzy(id INT NOT NULL, imie TEXT, nazwisko TEXT, PRIMARY KEY(id));
Plik index.html
<!DOCTYPE html>
<html lang="pl">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Filmy</title>
        <link rel="stylesheet" href="styl1.css">
    </head>
    <body>
        <div id="lewy">
            <h3>Dostępne gatunki filmu</h3>
            <ol>
                <li>Sci-Fi</li>
                <li>animacja</li>
                <li>dramat</li>
                <li>horror</li>
                <li>komedia</li>
            </ol>
            <p><a href="kadr.jpg">Pobierz obraz</a></p>
            <p><a href="repertuar-kin.pl" target="_blank">Sprawdź repertuar kin</a></p>
        </div>

        <div id="prawy1">
            <h1>FILMOTEKA</h1>
        </div>

        <div id="prawy2">
            <form action="dodaj.php" method="post">
                Tytuł: <input type="text" name="tytul" id="tytul"><br>
                Gatunek filmu: <input type="number" name="gatunek" id="gatunek"><br>
                Rok produkcji: <input type="number" name="rok" id="rok"><br>
                Ocena: <input type="number" name="ocena" id="ocena"><br>
                <button type="reset">CZYŚĆ</button>
                <button type="submit">DODAJ</button>
            </form>
        </div>

        <div id="prawy3">
            <img src="kadr.jpg" alt="zdjęcia filmowe">
        </div>

        <footer>
            <p>Autor strony: <a href="https://ee-informatyk.pl/" target="_blank" style="text-decoration: none;color: #000;">EE-Informatyk.pl</a></p>
        </footer>
    </body>
</html>
Plik dodaj.php
<?php

    if(isset($_POST["tytul"]) && isset($_POST["gatunek"]) && isset($_POST["rok"]) && isset($_POST["ocena"])) {
        $tytul = $_POST["tytul"];
        $gatunek = $_POST["gatunek"];
        $rok = $_POST["rok"];
        $ocena = $_POST["ocena"];

        $conn = new mysqli("localhost","root","","dane");

        $sql = "INSERT INTO `filmy` (`id`, `gatunki_id`, `tytul`, `rok`, `ocena`) VALUES (NULL, '$gatunek', '$tytul', '$rok', '$ocena');";
        $result = $conn->query($sql);
    
        $conn -> close();

        echo "Film został pomyślnie dodany";
    }
?>
Plik styl1.css
body {
    font-family: Helvetica;
}

#lewy {
    background: Navy;
    color: white;
    height: 700px;
    width: 25%;
    float: left;
}

#prawy1 {
    background: royalblue;
    height: 100px;
    width: 75%;
    text-align: center;
    float: left;
}

#prawy2 {
    background: Steelblue;
    height: 300px;
    width: 75%;
    float: left;
}

#prawy3 {
    background: royalblue;
    height: 300px;
    width: 75%;
    text-align: center;
    float: left;
}

footer {
    background: steelblue;
    text-align: center;
    padding: 20px;
    clear: both;
}

h1 {
    letter-spacing: 5px;
}

form {
    padding: 30px;
    line-height: 3;
}

form:hover {
    background: deepskyblue;
}

Strona używa plików cookies

Serwis wykorzystuje ciasteczka głównie w celu prowadzenia systemu formularzy oraz zbierania danych dotyczących ruchu na stronie.

Więcej informacji znajdziesz w Polityce Prywatności

Akceptuję