Rozwiązanie - Egzamin Praktyczny EE.09

Arkusz EE.09-02-21.01-SG - Styczeń 2021 - Wersja #02

Skrypt: PHP

Baza Danych:

Przykładowe rozwiązanie
Rozwiązanie - Arkusz praktyczny EE.09-02-21.01-SG - Styczeń 2021 - Wersja #02
Wymagane zdjęcia
Egzamin EE.09-02-21.01-SG - dodatkowe zdjęcia - obraz1.jpg
obraz1.jpg
Egzamin EE.09-02-21.01-SG - dodatkowe zdjęcia - zad2.png
zad2.png
Wyniki działań na bazie danych
Egzamin EE.09-02-21.01-SG - Operacje na bazie danych - import.png
import.png
Egzamin EE.09-02-21.01-SG - Operacje na bazie danych - import.png
kw1.jpg
Egzamin EE.09-02-21.01-SG - Operacje na bazie danych - import.png
kw2.jpg
Egzamin EE.09-02-21.01-SG - Operacje na bazie danych - import.png
kw3.jpg
Egzamin EE.09-02-21.01-SG - Operacje na bazie danych - import.png
kw4.jpg
Plik egzamin.sql
-- phpMyAdmin SQL Dump
-- version 5.2.0
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Czas generowania: 27 Mar 2023, 12:37
-- 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: `egzamin`
--

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

--
-- Struktura tabeli dla tabeli `liga`
--

CREATE TABLE `liga` (
  `id` int(10) UNSIGNED NOT NULL,
  `zespol` varchar(3) DEFAULT NULL,
  `punkty` int(10) UNSIGNED DEFAULT NULL,
  `grupa` char(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;

--
-- Zrzut danych tabeli `liga`
--

INSERT INTO `liga` (`id`, `zespol`, `punkty`, `grupa`) VALUES
(1, 'EVG', 34, 'A'),
(2, 'FCB', 21, 'A'),
(3, 'RM', 5, 'B'),
(4, 'JUV', 13, 'B'),
(5, 'ARS', 24, 'C'),
(6, 'CHL', 17, 'C');

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

--
-- Struktura tabeli dla tabeli `pozycja`
--

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

--
-- Zrzut danych tabeli `pozycja`
--

INSERT INTO `pozycja` (`id`, `nazwa`) VALUES
(1, 'bramkarz'),
(2, 'obronca'),
(3, 'pomocnik'),
(4, 'napastnik');

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

--
-- Struktura tabeli dla tabeli `rozgrywka`
--

CREATE TABLE `rozgrywka` (
  `id` int(10) UNSIGNED NOT NULL,
  `zespol1` varchar(3) NOT NULL,
  `zespol2` varchar(3) DEFAULT NULL,
  `wynik` varchar(20) DEFAULT NULL,
  `data_rozgrywki` date DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;

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

--
-- Struktura tabeli dla tabeli `zawodnik`
--

CREATE TABLE `zawodnik` (
  `id` int(10) UNSIGNED NOT NULL,
  `pozycja_id` int(10) UNSIGNED NOT NULL,
  `imie` varchar(20) DEFAULT NULL,
  `nazwisko` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;

--
-- Zrzut danych tabeli `zawodnik`
--

INSERT INTO `zawodnik` (`id`, `pozycja_id`, `imie`, `nazwisko`) VALUES
(1, 1, 'Wojciech', 'Szczesny'),
(2, 2, 'Rafal', 'Pietrzak'),
(3, 2, 'Jan', 'Bednarek'),
(4, 3, 'Grzegorz', 'Krychowiak'),
(5, 3, 'Kamil', 'Grosicki'),
(6, 4, 'Arkadiusz', 'Milik'),
(7, 4, 'Adam', 'Buksa');

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

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

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

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

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

--
-- AUTO_INCREMENT dla zrzuconych tabel
--

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

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

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

--
-- AUTO_INCREMENT dla tabeli `zawodnik`
--
ALTER TABLE `zawodnik`
  MODIFY `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=8;
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: SELECT imie, nazwisko FROM zawodnik WHERE pozycja_id = 4;
Zapytanie 2: SELECT zespol, punkty, grupa FROM liga ORDER BY punkty DESC;
Zapytanie 3: SELECT zawodnik.id, zawodnik.nazwisko, pozycja.nazwa FROM zawodnik INNER JOIN pozycja ON zawodnik.pozycja_id=pozycja.id WHERE zawodnik.id IN (3, 5);
Zapytanie 4: DELETE FROM rozgrywka;
Plik liga.php
<?php
    $conn = new mysqli("localhost","root","","egzamin");
?>

<!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>piłka nożna</title>
        <link rel="stylesheet" href="styl2.css">
    </head>
    <body>
        <header>
            <h3>Reprezentacja polski w piłce nożnej</h3>
            <img src="obraz1.jpg" alt="reprezentacja">
        </header>

        <div id="lewy">
            <form action="liga.php" method="post">
                <select name="rola" id="rola">
                    <option value="1">Bramkarze</option>
                    <option value="2">Obrońcy</option>
                    <option value="3">Pomocnicy</option>
                    <option value="4">Napastinicy</option>
                </select>
                <button type="submit">Zobacz</button>
            </form>
            <img src="zad2.png" alt="piłka">
            <p>Autor: <a href="https://ee-informatyk.pl/" target="_blank" style="color: unset;text-decoration: none;">EE-Informatyk.pl</a></p>
        </div>

        <div id="prawy">
            <ol>
                <?php
                    // Skrypt #1
                    if(isset($_POST["rola"])) {
                        $rola = $_POST["rola"];

                        $sql = "SELECT imie, nazwisko FROM zawodnik WHERE pozycja_id = $rola;";
                        $result = $conn->query($sql);
    
                        while($row = $result -> fetch_array()) {
                            echo "<li><p>$row[0] $row[1]</p></li>";
                        }
                    }
                ?>
            </ol>
        </div>

        <main>
            <h3>Liga mistrzów</h3>
        </main>

        <div id="liga">
            <?php
                // Skrypt #2
                $sql = "SELECT zespol, punkty, grupa FROM liga ORDER BY punkty DESC;";
                $result = $conn->query($sql);

                while($row = $result -> fetch_array()) {
                    echo "<div class='mecz'>";
                        echo "<h2>$row[0]</h2>";
                        echo "<h1>$row[1]</h1>";
                        echo "<p>grupa: $row[2]</p>";
                    echo "</div>";
                }
            ?>
        </div>
    </body>
</html>

<?php
    $conn -> close();
?>
Plik styl2.css
body {
    font-family: 'Verdana';
    background: seagreen;
}

header {
    color: white;
    text-align: center;
    height: 330px;
}

.mecz {
    color: white;
    text-align: center;
    width: 170px;
    margin: 5px;
    border: 1px solid white;
    border-radius: 15px;
    float: left;
}

.mecz:hover {
    background: white;
    color: black;
}

main {
    color: white;
}

#lewy {
    background: whitesmoke;
    width: 30%;
    text-align: center;
    height: 150px;
    float: left;
}

#prawy {
    background: whitesmoke;
    width: 70%;
    height: 150px;
    float: left;
}

#liga {
    clear: both;
}

h3 {
    text-align: center;
    letter-spacing: 6px;
    text-transform: capitalize;
}

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ę