Rozwiązanie - Egzamin Praktyczny INF.03
Arkusz INF.03-03-23.01-SG - Styczeń 2023 - Wersja #03
Skrypt: PHP
Baza Danych:
Powiązana zawartość
Plik kwiaciarnia.sql
-- phpMyAdmin SQL Dump
-- version 5.2.1
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Generation Time: Sty 13, 2024 at 08:43 PM
-- Wersja serwera: 10.4.28-MariaDB
-- Wersja PHP: 8.2.4
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 */;
--
-- Database: `kwiaciarnia`
--
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `klienci`
--
CREATE TABLE `klienci` (
`id` int(11) NOT NULL,
`imie` varchar(15) DEFAULT NULL,
`nazwisko` varchar(15) DEFAULT NULL,
`rabat` int(10) UNSIGNED DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `kwiaciarnie`
--
CREATE TABLE `kwiaciarnie` (
`id_kwiaciarni` int(10) UNSIGNED NOT NULL,
`nazwa` varchar(20) DEFAULT NULL,
`miasto` varchar(20) DEFAULT NULL,
`ulica` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
--
-- Dumping data for table `kwiaciarnie`
--
INSERT INTO `kwiaciarnie` (`id_kwiaciarni`, `nazwa`, `miasto`, `ulica`) VALUES
(1, 'Astra', 'Warszawa', 'Sobieskiego'),
(2, 'Melisa', 'Malbork', 'Konopnickiej');
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `zamowienia`
--
CREATE TABLE `zamowienia` (
`id_zam` int(10) UNSIGNED NOT NULL,
`id_kwiaciarni` int(20) DEFAULT NULL,
`data` date DEFAULT NULL,
`kwiaty` text DEFAULT NULL,
`cena` float DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
--
-- Dumping data for table `zamowienia`
--
INSERT INTO `zamowienia` (`id_zam`, `id_kwiaciarni`, `data`, `kwiaty`, `cena`) VALUES
(1, 1, '2017-01-16', 'róża', 250),
(2, 1, '2017-01-10', 'gerbera', 120),
(3, 2, '2017-01-06', 'róża', 200),
(4, 2, '2017-01-09', 'gozdzik', 170),
(5, 1, '2017-01-07', 'róża', 125),
(6, 1, '2017-01-11', 'róża', 75);
--
-- Indeksy dla zrzutów tabel
--
--
-- Indeksy dla tabeli `klienci`
--
ALTER TABLE `klienci`
ADD PRIMARY KEY (`id`);
--
-- Indeksy dla tabeli `kwiaciarnie`
--
ALTER TABLE `kwiaciarnie`
ADD PRIMARY KEY (`id_kwiaciarni`);
--
-- Indeksy dla tabeli `zamowienia`
--
ALTER TABLE `zamowienia`
ADD PRIMARY KEY (`id_zam`);
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT for table `klienci`
--
ALTER TABLE `klienci`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `kwiaciarnie`
--
ALTER TABLE `kwiaciarnie`
MODIFY `id_kwiaciarni` 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 nazwa, ulica FROM kwiaciarnie WHERE miasto = "Malbork";
Zapytanie 2: SELECT id_kwiaciarni, COUNT(*) FROM zamowienia GROUP BY id_kwiaciarni;
Zapytanie 3: SELECT nazwa, miasto, kwiaty FROM zamowienia JOIN kwiaciarnie ON zamowienia.id_kwiaciarni = kwiaciarnie.id_kwiaciarni WHERE data="2017.01.07";
Zapytanie 4: CREATE TABLE klienci (id int NOT NULL AUTO_INCREMENT, imie varchar(15), nazwisko varchar(15), rabat int UNSIGNED, PRIMARY KEY (id));
Plik index.html
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Kwiaty</title>
<link rel="stylesheet" href="styl3.css">
</head>
<body>
<header>
<h1>Grupa Polskich Kwiaciarni</h1>
</header>
<div id="lewy">
<h2>Menu</h2>
<ol>
<li><a href="index.html">Strona główna</a></li>
<li><a href="https://www.kwiaty.pl/" target="_blank">Rozpoznaj kwiaty</a></li>
<li><a href="znajdz.php">Znajdź kwiaciarnię</a></li>
<ul>
<li>w Warszawie</li>
<li>w Malborku</li>
<li>w Poznaniu</li>
</ul>
</ol>
</div>
<div id="prawy">
<h2>Strona dla miłośników kwiatów</h2>
<img src="gerbera.jpeg" alt="gerbera">
<img src="gozdzik.jpeg" alt="goździk">
<img src="roza.jpeg" alt="róża">
</div>
<footer>
<p>Stronę opracował: <a href="https://ee-informatyk.pl/" target="_blank" style="color: #fff;text-decoration: none;">EE-Informatyk.pl</a></p>
</footer>
</body>
</html>
Plik znajdz.php
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Kwiaty</title>
<link rel="stylesheet" href="styl3.css">
</head>
<body>
<header>
<h1>Grupa Polskich Kwiaciarni</h1>
</header>
<div id="lewy">
<h2>Menu</h2>
<ol>
<li><a href="index.html">Strona główna</a></li>
<li><a href="https://www.kwiaty.pl/" target="_blank">Rozpoznaj kwiaty</a></li>
<li><a href="znajdz.php">Znajdź kwiaciarnię</a></li>
<ul>
<li>w Warszawie</li>
<li>w Malborku</li>
<li>w Poznaniu</li>
</ul>
</ol>
</div>
<div id="prawy">
<h2>Znajdź kwiaciarnię</h2>
<form action="znajdz.php" method="post">
<label for="miasto">Podaj nazwę miasta:</label>
<input type="text" name="miasto" id="miasto">
<button type="submit" name="check">SPRAWDŹ</button>
</form>
<?php
// Skrypt
if(isset($_POST["check"])) {
$miasto = $_POST["miasto"];
$conn = new mysqli("localhost","root","","kwiaciarnia");
$sql = "SELECT nazwa, ulica FROM kwiaciarnie WHERE miasto = '$miasto';";
$result = $conn->query($sql);
while($row = $result -> fetch_array()) {
echo "<h3>".$row[0].", ".$row[1]."</h3>";
}
$conn -> close();
}
?>
</div>
<footer>
<p>Stronę opracował: <a href="https://ee-informatyk.pl/" target="_blank" style="color: #fff;text-decoration: none;">EE-Informatyk.pl</a></p>
</footer>
</body>
</html>
Plik styl3.css
* {
font-family: Georgia;
}
header, footer {
background: #C75B39;
color: white;
padding: 10px;
text-align: center;
}
#lewy {
background: #FF8A65;
width: 25%;
height: 500px;
padding-top: 50px;
}
#prawy {
background: snow;
width: 75%;
height: 500px;
text-align: center;
padding-top: 50px;
}
#lewy,#prawy {
float: left;
}
footer {
clear: both;
}
img {
width: 25%;
margin: 10px;
box-shadow: 15px 15px 10px dimgray;
}
li {
padding: 5px;
}
::marker {
color: snow;
}
h3 {
margin: 50px 0;
}
Powiązana zawartość
Autorem arkusza jest CKE.GOV.PL