Rozwiązanie - Egzamin Praktyczny E.14

Arkusz E.14-02-18.01 - Styczeń 2018 - Wersja #02

Skrypt: PHP

Baza Danych:

Przykładowe rozwiązanie
Rozwiązanie - Arkusz praktyczny E.14-02-18.01 - Styczeń 2018 - Wersja #02
Wymagane zdjęcia
Egzamin E.14-02-18.01 - dodatkowe zdjęcia - ksiazki.jpg
ksiazki.jpg
Wyniki działań na bazie danych
Egzamin E.14-02-18.01 - Operacje na bazie danych - baza.jpg
baza.jpg
Egzamin E.14-02-18.01 - Operacje na bazie danych - baza.jpg
kw1.jpeg
Egzamin E.14-02-18.01 - Operacje na bazie danych - baza.jpg
kw2.jpeg
Egzamin E.14-02-18.01 - Operacje na bazie danych - baza.jpg
kw3.jpeg
Egzamin E.14-02-18.01 - Operacje na bazie danych - baza.jpg
kw4.jpeg
Plik baza.sql
-- phpMyAdmin SQL Dump
-- version 5.2.0
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Czas generowania: 08 Mar 2023, 04:09
-- Wersja serwera: 10.4.27-MariaDB
-- Wersja PHP: 8.1.12

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: `ogloszenia`
--

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

--
-- Struktura tabeli dla tabeli `ogloszenie`
--

CREATE TABLE `ogloszenie` (
  `id` int(10) UNSIGNED NOT NULL,
  `uzytkownik_id` int(10) UNSIGNED NOT NULL,
  `kategoria` int(10) UNSIGNED DEFAULT NULL,
  `podkategoria` int(10) UNSIGNED DEFAULT NULL,
  `tytul` text DEFAULT NULL,
  `tresc` text DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;

--
-- Zrzut danych tabeli `ogloszenie`
--

INSERT INTO `ogloszenie` (`id`, `uzytkownik_id`, `kategoria`, `podkategoria`, `tytul`, `tresc`) VALUES
(1, 1, 1, 12, 'Daniel Craig. Biografia', 'Biografia Daniela Craiga, niedrogo sprzedam'),
(2, 1, 1, 13, 'Buick', 'Sprzedam: \"Selekcja\" J. Kellermana, niezniszczona'),
(3, 2, 1, 13, 'Buick', 'Sprzedam horror Stephena Kinga w dobrym stanie'),
(4, 2, 1, 14, 'Tytus, Romek i Atomek', 'Ks. IV do sprzedania, stan dobry'),
(5, 2, 2, 0, 'Imagine Dragons', 'Sprzedam dwa CD Imagine Dragons');

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

--
-- Struktura tabeli dla tabeli `uzytkownik`
--

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

--
-- Zrzut danych tabeli `uzytkownik`
--

INSERT INTO `uzytkownik` (`id`, `imie`, `nazwisko`, `telefon`, `email`) VALUES
(1, 'Anna', 'Kowalska', '601601601', '[email protected]'),
(2, 'Jan', 'Nowak', '608608608', '[email protected]');

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

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

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

--
-- AUTO_INCREMENT dla zrzuconych tabel
--

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

--
-- AUTO_INCREMENT dla tabeli `uzytkownik`
--
ALTER TABLE `uzytkownik`
  MODIFY `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;
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 id, imie, nazwisko, email FROM uzytkownik WHERE id < 4;
Zapytanie 2: SELECT tytul FROM ogloszenie WHERE uzytkownik_id = 1;
Zapytanie 3: CREATE USER 'admin'@'localhost' IDENTIFIED BY 'zaq1@';
Zapytanie 4: GRANT SELECT, DELETE, UPDATE ON uzytkownik TO 'admin'@'localhost';
Plik portal.php
<!DOCTYPE html>
<html lang="en">
    <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>Ogłoszenia drobne</title>
        <link rel="stylesheet" href="styl2.css">
    </head>
    <body>
        <header>
            <h2>Ogłoszenia drobne</h2>
        </header>

        <div id="lewy">
            <h2>Ogłoszeniodawcy</h2>
            <?php
                // Skrypt #1
                $conn = new mysqli("localhost","root","","ogloszenia");

                $sql1 = "SELECT id, imie, nazwisko, email FROM uzytkownik WHERE id < 4;";
                $sql2 = "SELECT tytul FROM ogloszenie";
                $result1 = $conn->query($sql1);
                $result2 = $conn->query($sql2);

                while($row1 = $result1 -> fetch_array()) {
                    echo "<h3>".$row1["id"]." ".$row1["imie"]." ".$row1["nazwisko"]."</h3><p>".$row1["email"]."</p>";
                    $row2 = $result2 -> fetch_array();
                    echo "Ogłoszenie: ".$row2["tytul"]."<br>";
                }

                $conn -> close();
            ?>
        </div>

        <div id="prawy">
            <h2>Nasze kategorie</h2>
            <ul>
                <li>Książki</li>
                <li>Muzyka</li>
                <li>Multimedia</li>
            </ul>
            <img src="ksiazki.jpg" alt="uwolnij swoją książkę">

            <table>
                <tr>
                    <td>Ile?</td>
                    <td>Koszt</td>
                    <td>Promocja</td>
                </tr>

                <tr>
                    <td>1 - 40</td>
                    <td>1,20 PLN</td>
                    <td rowspan=2>Subskrybuj newsletter upust 0,30 PLN na ogłoszenie</td>
                </tr>

                <tr>
                    <td>41 i więcej</td>
                    <td>0,70 PLN</td>
                </tr>
            </table>
        </div>

        <footer>
            <p>Portal ogłoszenia drobne opracował: <a href="https://ee-informatyk.pl/" target="_blank" style="color: #fff;">EE-Informatyk.pl</a></p>
        </footer>
    </body>
</html>
Plik styl2.css
header {
    background: #5A9089;
    color: white;
    font-family: Verdana;
    text-align: center;
    height: 100px;
}

#lewy {
    background: #BAD2CF;
    width: 55%;
    height: 600px;
    float: left;
}

#prawy {
    background: #88AFAA;
    width: 45%;
    height: 600px;
    float: left;
}

footer {
    background: #5A9089;
    color: white;
    text-align: right;
    clear: both;
}

table, td {
    border: 1px dotted green;
}

table {
    width: 400px;
    margin: 15px;
    text-align: center;
}

img {
    padding: 25px;
}

ul {
    list-style: circle;
}

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ę