This commit is contained in:
3p01
2026-01-28 09:15:35 +01:00
parent eb5c4f6652
commit 9e94e67fb4
14 changed files with 630 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 344 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 385 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 360 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 363 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 315 KiB

View File

@@ -0,0 +1,4 @@
SELECT * FROM opony ORDER BY cena LIMIT 10;
SELECT producent, model, sezon, cena FROM opony WHERE nr_kat = 9;
SELECT id_zam, ilosc, model, cena FROM zamowienie JOIN opony USING(nr_kat) ORDER BY RAND() LIMIT 1;
UPDATE opony SET cena = cena * 0.75 WHERE sezon = 'letnia';

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

View File

@@ -0,0 +1,494 @@
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: `oponeum`
--
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `klient`
--
CREATE TABLE `klient` (
`id` int(11) NOT NULL,
`imie` varchar(30) COLLATE utf8_polish_ci NOT NULL,
`nazwisko` varchar(30) COLLATE utf8_polish_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
--
-- Zrzut danych tabeli `klient`
--
INSERT INTO `klient` (`id`, `imie`, `nazwisko`) VALUES
(1, 'Jan', 'Kowalski'),
(2, 'Leon', 'Kowalski'),
(3, 'Janina', 'Kowalska'),
(4, 'Tomsz', 'Kowalski'),
(5, 'Anna', 'Kowalska'),
(6, 'Jan', 'Nowak'),
(7, 'Elżbieta', 'Kościow'),
(8, 'Marcin', 'Sobierajski'),
(9, 'Karolina', 'Antkowa');
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `opony`
--
CREATE TABLE `opony` (
`nr_kat` int(11) NOT NULL,
`producent` varchar(50) COLLATE utf8_polish_ci NOT NULL,
`model` varchar(30) COLLATE utf8_polish_ci NOT NULL,
`sezon` varchar(20) COLLATE utf8_polish_ci NOT NULL DEFAULT 'letnia',
`cena` decimal(10,2) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
--
-- Zrzut danych tabeli `opony`
--
INSERT INTO `opony` (`nr_kat`, `producent`, `model`, `sezon`, `cena`) VALUES
(1, 'uLFA', 'AL100', 'letnia', '290.50'),
(2, 'uLFA', 'AL105', 'letnia', '105.50'),
(3, 'uLFA', 'AL105', 'letnia', '210.50'),
(4, 'uLFA', 'AL125', 'letnia', '110.50'),
(5, 'uLFA', 'AL123', 'zimowa', '215.00'),
(6, 'uLFA', 'AL205', 'zimowa', '212.50'),
(7, 'uLFA', 'AL122', 'uniwersalna', '110.50'),
(8, 'uLFA', 'AL305', 'zimowa', '110.00'),
(9, 'uLFA', 'AL135', 'zimowa', '101.50'),
(10, 'uLFA', 'AL103', 'zimowa', '220.50'),
(11, 'uLFA', 'AL435', 'letnia', '212.00'),
(12, 'uLFA', 'AL235', 'letnia', '210.50'),
(13, 'uLFA', 'AL332', 'letnia', '214.00'),
(14, 'uLFA', 'AL111', 'letnia', '220.50'),
(15, 'eLFA', 'EL105', 'letnia', '210.50'),
(16, 'eLFA', 'EL105', 'letnia', '199.00'),
(17, 'eLFA', 'EL125', 'uniwersalna', '110.50'),
(18, 'eLFA', 'EL123', 'uniwersalna', '215.00'),
(19, 'eLFA', 'EL205', 'letnia', '292.50'),
(20, 'eLFA', 'EL122', 'zimowa', '190.50'),
(21, 'eLFA', 'EL305', 'zimowa', '110.00'),
(22, 'LFA', 'LF135', 'letnia', '150.50'),
(23, 'LFA', 'LF103', 'letnia', '220.50'),
(24, 'ALF', 'AF435', 'letnia', '212.00'),
(25, 'ALF', 'AF235', 'letnia', '310.50'),
(26, 'ALF', 'AF332', 'letnia', '214.00'),
(27, 'LFA', 'LL111', 'letnia', '220.50');
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `zamowienie`
--
CREATE TABLE `zamowienie` (
`id_zam` int(11) NOT NULL,
`id` int(11) NOT NULL,
`nr_kat` int(11) NOT NULL,
`ilosc` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
--
-- Zrzut danych tabeli `zamowienie`
--
INSERT INTO `zamowienie` (`id_zam`, `id`, `nr_kat`, `ilosc`) VALUES
(1, 7, 1, 4),
(2, 8, 10, 2),
(3, 6, 18, 3),
(4, 2, 6, 4),
(5, 5, 3, 3),
(6, 1, 24, 4),
(7, 1, 1, 4),
(8, 8, 14, 3),
(9, 9, 14, 1),
(10, 4, 25, 2),
(11, 2, 1, 3),
(12, 4, 11, 1),
(13, 6, 23, 4),
(14, 8, 2, 1),
(15, 6, 23, 4),
(16, 3, 25, 2),
(17, 7, 2, 4),
(18, 7, 17, 1),
(19, 3, 24, 2),
(20, 1, 14, 2),
(21, 6, 25, 1),
(22, 6, 3, 3),
(23, 4, 21, 2),
(24, 2, 14, 1),
(25, 6, 5, 2),
(26, 6, 8, 4),
(27, 2, 27, 1),
(28, 2, 4, 1),
(29, 3, 18, 1),
(30, 8, 22, 1),
(31, 1, 2, 3),
(32, 2, 25, 4),
(33, 7, 9, 3),
(34, 1, 24, 1),
(35, 2, 13, 2),
(36, 5, 19, 2),
(37, 1, 3, 4),
(38, 6, 9, 3),
(39, 7, 9, 4),
(40, 2, 20, 4),
(41, 6, 16, 1),
(42, 6, 22, 4),
(43, 1, 7, 2),
(44, 4, 22, 2),
(45, 7, 6, 3),
(46, 4, 18, 3),
(47, 9, 20, 4),
(48, 2, 17, 4),
(49, 1, 24, 2),
(50, 9, 13, 2),
(51, 7, 20, 3),
(52, 5, 7, 1),
(53, 4, 2, 1),
(54, 4, 13, 3),
(55, 7, 7, 4),
(56, 4, 21, 3),
(57, 7, 4, 3),
(58, 4, 10, 1),
(59, 1, 11, 2),
(60, 1, 24, 3),
(61, 2, 4, 2),
(62, 4, 2, 2),
(63, 5, 27, 1),
(64, 5, 18, 2),
(65, 1, 9, 3),
(66, 5, 17, 2),
(67, 6, 6, 3),
(68, 5, 4, 1),
(69, 7, 27, 1),
(70, 3, 16, 2),
(71, 8, 23, 2),
(72, 5, 15, 1),
(73, 8, 6, 1),
(74, 9, 10, 4),
(75, 9, 4, 4),
(76, 9, 18, 4),
(77, 3, 24, 2),
(78, 8, 11, 1),
(79, 6, 7, 3),
(80, 2, 4, 4),
(81, 3, 27, 3),
(82, 3, 13, 1),
(83, 6, 11, 3),
(84, 2, 15, 2),
(85, 2, 16, 3),
(86, 2, 8, 3),
(87, 5, 19, 3),
(88, 9, 14, 1),
(89, 3, 12, 3),
(90, 3, 18, 2),
(91, 7, 1, 1),
(92, 7, 3, 4),
(93, 7, 13, 4),
(94, 5, 26, 1),
(95, 7, 10, 4),
(96, 1, 25, 3),
(97, 5, 15, 2),
(98, 9, 25, 2),
(99, 3, 27, 1),
(100, 4, 6, 2),
(101, 3, 1, 3),
(102, 3, 13, 2),
(103, 5, 9, 3),
(104, 5, 3, 1),
(105, 9, 16, 4),
(106, 6, 16, 2),
(107, 9, 7, 1),
(108, 7, 11, 1),
(109, 9, 9, 1),
(110, 6, 11, 2),
(111, 2, 27, 4),
(112, 2, 22, 4),
(113, 3, 26, 1),
(114, 1, 12, 2),
(115, 2, 9, 2),
(116, 8, 8, 2),
(117, 5, 14, 1),
(118, 3, 15, 3),
(119, 6, 9, 4),
(120, 4, 24, 2),
(121, 9, 13, 1),
(122, 8, 19, 3),
(123, 2, 3, 4),
(124, 2, 10, 1),
(125, 3, 13, 3),
(126, 9, 10, 2),
(127, 7, 9, 1),
(128, 9, 15, 1),
(129, 3, 21, 2),
(130, 9, 4, 2),
(131, 6, 13, 1),
(132, 7, 25, 4),
(133, 7, 2, 1),
(134, 1, 18, 3),
(135, 9, 2, 4),
(136, 2, 8, 4),
(137, 3, 8, 3),
(138, 1, 15, 2),
(139, 3, 22, 4),
(140, 5, 13, 3),
(141, 6, 24, 1),
(142, 3, 2, 2),
(143, 6, 15, 4),
(144, 4, 16, 1),
(145, 9, 6, 4),
(146, 3, 10, 1),
(147, 8, 4, 1),
(148, 2, 15, 4),
(149, 4, 10, 1),
(150, 6, 4, 2),
(151, 6, 16, 2),
(152, 2, 13, 1),
(153, 3, 15, 2),
(154, 6, 12, 4),
(155, 3, 12, 2),
(156, 7, 24, 4),
(157, 8, 2, 3),
(158, 7, 20, 1),
(159, 1, 13, 3),
(160, 3, 3, 3),
(161, 3, 5, 2),
(162, 3, 12, 1),
(163, 4, 19, 1),
(164, 4, 4, 1),
(165, 9, 17, 3),
(166, 2, 17, 4),
(167, 4, 8, 2),
(168, 1, 16, 3),
(169, 5, 3, 3),
(170, 2, 18, 1),
(171, 4, 1, 2),
(172, 3, 4, 1),
(173, 3, 15, 1),
(174, 7, 10, 1),
(175, 8, 5, 2),
(176, 7, 19, 4),
(177, 2, 27, 4),
(178, 6, 24, 1),
(179, 8, 13, 3),
(180, 3, 18, 2),
(181, 8, 25, 3),
(182, 2, 15, 1),
(183, 3, 27, 1),
(184, 3, 6, 3),
(185, 2, 6, 3),
(186, 2, 11, 1),
(187, 4, 7, 2),
(188, 4, 5, 1),
(189, 6, 27, 3),
(190, 9, 13, 1),
(191, 1, 8, 4),
(192, 5, 4, 3),
(193, 2, 22, 2),
(194, 6, 16, 2),
(195, 2, 12, 1),
(196, 4, 14, 3),
(197, 3, 5, 3),
(198, 4, 11, 3),
(199, 7, 12, 1),
(200, 9, 1, 4),
(201, 9, 22, 4),
(202, 1, 24, 3),
(203, 4, 2, 3),
(204, 9, 18, 2),
(205, 4, 3, 1),
(206, 9, 13, 2),
(207, 7, 1, 3),
(208, 9, 19, 1),
(209, 6, 11, 4),
(210, 2, 23, 3),
(211, 8, 3, 3),
(212, 9, 24, 2),
(213, 1, 6, 4),
(214, 7, 9, 2),
(215, 2, 25, 4),
(216, 7, 18, 3),
(217, 9, 14, 2),
(218, 4, 17, 2),
(219, 5, 15, 3),
(220, 4, 23, 1),
(221, 3, 15, 1),
(222, 5, 7, 1),
(223, 3, 16, 3),
(224, 2, 6, 1),
(225, 8, 9, 3),
(226, 5, 27, 1),
(227, 3, 27, 1),
(228, 9, 24, 4),
(229, 2, 12, 3),
(230, 6, 15, 1),
(231, 7, 10, 4),
(232, 6, 6, 4),
(233, 4, 25, 2),
(234, 2, 26, 4),
(235, 5, 2, 1),
(236, 7, 14, 4),
(237, 2, 6, 1),
(238, 1, 16, 3),
(239, 1, 6, 3),
(240, 1, 10, 1),
(241, 2, 6, 1),
(242, 7, 25, 3),
(243, 2, 24, 2),
(244, 7, 19, 4),
(245, 9, 22, 2),
(246, 4, 26, 1),
(247, 2, 9, 4),
(248, 7, 22, 1),
(249, 1, 1, 3),
(250, 1, 18, 1),
(251, 9, 6, 4),
(252, 9, 1, 4),
(253, 4, 16, 3),
(254, 4, 23, 3),
(255, 6, 13, 3),
(256, 9, 23, 4),
(257, 9, 21, 3),
(258, 7, 10, 4),
(259, 7, 10, 4),
(260, 3, 22, 1),
(261, 6, 26, 3),
(262, 1, 8, 1),
(263, 3, 16, 1),
(264, 4, 3, 3),
(265, 3, 17, 4),
(266, 2, 25, 2),
(267, 1, 17, 1),
(268, 7, 12, 2),
(269, 7, 7, 4),
(270, 2, 25, 2),
(271, 4, 22, 1),
(272, 7, 10, 4),
(273, 1, 10, 4),
(274, 2, 17, 1),
(275, 6, 2, 4),
(276, 5, 13, 1),
(277, 6, 4, 1),
(278, 6, 7, 4),
(279, 1, 24, 1),
(280, 5, 18, 2),
(281, 4, 18, 3),
(282, 3, 6, 1),
(283, 5, 5, 1),
(284, 7, 4, 1),
(285, 9, 6, 4),
(286, 5, 19, 1),
(287, 7, 22, 4),
(288, 1, 25, 2),
(289, 1, 4, 2),
(290, 1, 24, 2),
(291, 2, 2, 3),
(292, 6, 19, 4),
(293, 4, 6, 2),
(294, 3, 25, 3),
(295, 2, 27, 2),
(296, 1, 4, 1),
(297, 9, 19, 3),
(298, 6, 3, 4),
(299, 9, 10, 4),
(300, 6, 14, 3),
(301, 6, 11, 3),
(302, 1, 15, 3),
(303, 5, 13, 2),
(304, 4, 20, 2),
(305, 2, 5, 4),
(306, 8, 18, 1),
(307, 8, 23, 2),
(308, 5, 5, 3),
(309, 8, 8, 1),
(310, 7, 26, 1),
(311, 3, 23, 2),
(312, 1, 13, 2),
(313, 3, 19, 2),
(314, 7, 2, 4),
(315, 7, 6, 4),
(316, 9, 25, 4),
(317, 9, 24, 3),
(318, 2, 19, 2),
(319, 1, 22, 1),
(320, 7, 25, 2),
(321, 6, 6, 2),
(322, 8, 9, 3),
(323, 5, 25, 3),
(324, 8, 16, 3),
(325, 6, 5, 3);
--
-- Indeksy dla zrzutów tabel
--
--
-- Indeksy dla tabeli `klient`
--
ALTER TABLE `klient`
ADD PRIMARY KEY (`id`);
--
-- Indeksy dla tabeli `opony`
--
ALTER TABLE `opony`
ADD PRIMARY KEY (`nr_kat`);
--
-- Indeksy dla tabeli `zamowienie`
--
ALTER TABLE `zamowienie`
ADD PRIMARY KEY (`id_zam`),
ADD KEY `id` (`id`,`nr_kat`),
ADD KEY `nr_kat` (`nr_kat`);
--
-- AUTO_INCREMENT dla zrzuconych tabel
--
--
-- AUTO_INCREMENT dla tabeli `klient`
--
ALTER TABLE `klient`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=10;
--
-- AUTO_INCREMENT dla tabeli `opony`
--
ALTER TABLE `opony`
MODIFY `nr_kat` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=28;
--
-- AUTO_INCREMENT dla tabeli `zamowienie`
--
ALTER TABLE `zamowienie`
MODIFY `id_zam` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=326;
--
-- Ograniczenia dla zrzutów tabel
--
--
-- Ograniczenia dla tabeli `zamowienie`
--
ALTER TABLE `zamowienie`
ADD CONSTRAINT `zamowienie_ibfk_1` FOREIGN KEY (`id`) REFERENCES `klient` (`id`),
ADD CONSTRAINT `zamowienie_ibfk_2` FOREIGN KEY (`nr_kat`) REFERENCES `opony` (`nr_kat`);
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 */;

View File

@@ -0,0 +1,74 @@
<?php
$db = mysqli_connect('localhost', 'root', '', 'opony');
header("Refresh: 10");
?>
<!doctype html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>OPONY</title>
<link rel="stylesheet" href="styl.css">
</head>
<body>
<div id="main">
<div id="side-block">
<?php
$sql1 = "SELECT * FROM opony ORDER BY cena LIMIT 10;";
$result1 = mysqli_query($db, $sql1);
while ($row = mysqli_fetch_assoc($result1)) {
echo "<div class='opona'>";
if ($row['sezon'] == 'letnia') {
echo "<img src='lato.png' alt='letnia'>";
} elseif ($row['sezon'] == 'zimowa') {
echo "<img src='zima.png' alt='zimowa'>";
} elseif ($row['sezon'] == 'uniwersalna') {
echo "<img src='uniwer.png' alt='uniwersalna'>";
}
echo "<h4>Opona: {$row['producent']} {$row['model']}</h4>";
echo "<h3>Cena: {$row['cena']}</h3>";
echo "</div>";
}
?>
<p><a href="https://opona.pl">więcej ofert</a></p>
</div>
<div id="sections">
<section id="section-1">
<img src="opona.png" alt="Opona">
<h2>Opona dnia</h2>
<?php
$sql2 = "SELECT producent, model, sezon, cena FROM opony WHERE nr_kat = 9;";
$result2 = mysqli_query($db, $sql2);
while ($row = mysqli_fetch_assoc($result2)) {
echo "<h2>{$row['producent']} model {$row['model']}</h2>";
echo "<h2>Sezon: {$row['sezon']}</h2>";
echo "<h2>Tylko {$row['cena']} zł!</h2>";
}
?>
</section>
<section id="section-2">
<h2>Najnowsze zamówienie</h2>
<?php
$sql3 = "SELECT id_zam, ilosc, model, cena FROM zamowienie JOIN opony USING(nr_kat) ORDER BY RAND() LIMIT 1;";
$result3 = mysqli_query($db, $sql3);
while ($row = mysqli_fetch_assoc($result3)) {
$wartosc = $row['ilosc'] * $row['cena'];
echo "<h2>{$row['id_zam']}{$row['ilosc']} sztuki modelu {$row['model']}</h2>";
echo "<h2>Wartość zamówienia {$wartosc} zł</h2>";
}
?>
</section>
</div>
</div>
<footer><p>Stronę wykonał: Jakub Grzegorczyk 3p</p></footer>
</body>
</html>
<?php
mysqli_close($db);
?>

View File

@@ -0,0 +1,58 @@
* {
font-family: "Trebuchet MS", sans-serif;
box-sizing: border-box;
#margin: 0;
#padding: 0;
}
#main {
display: flex;
}
#sections {
display: flex;
flex-direction: column;
width: 60%;
}
#side-block {
background: #C5CAE9;
width: 40%;
height: 600px;
overflow: auto;
}
section {
width: 100%;
height: 300px;
}
#section-1 {
background: #9FA8DA;
}
#section-2 {
background: #7986CB;
}
footer {
background: #283593;
color: white;
padding: 20px;
}
.opona {
background: #9FA8DA;
margin: 40px;
border: 2px dotted #283593;
border-radius: 30px;
}
img {
padding: 20px;
float: left;
}
h2 {
text-align: center;
margin: 0;
padding: 15px;
}
h3 {
background: #7986CB;
color: white;
font-size: 140%;
}
#section > h3 {
display: inline;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB