Ülesanne 2.
Andmebaasita

Andmebaasiga

Stiili aluse võtsin siit: https://www.w3schools.com/howto/howto_css_fixed_sidebar.asp
Muutis seda, võttes osa näidisülesande koodist ja lisasin endalt selle, mida vajasin.
Kujundus:
body {
text-align: center;
background: #ffffff;
font-family: Arial, Helvetica, sans-serif;
}
/* menuu */
.nav {
font-size: 20px;
background: grey;
padding: 10px;
}
.nav ul {
padding: 0;
margin: 0;
}
.nav ul li {
display: inline;
}
.nav ul li a {
display: inline-block;
color: #f2f2f2;
padding: 10px;
text-decoration: none;
}
.nav ul li a:hover {
color: #565656;
}
/* anekdoot */
.anekdot-div {
background-color: #f9f9f9;
border: 2px solid #cccccc;
border-radius: 10px;
margin: 20px;
text-align: center;
}
.anekdot-div h2 {
color: #555555;
font-size: 22px;
margin-bottom: 15px;
}
.anekdot-div p {
font-size: 18px;
line-height: 1.3;
color: #333333;
}
/* nuppid */
.lisa, form input[type="submit"]{
font-size: 16px;
display: inline-block;
width: auto;
padding: 10px 20px;
margin: 10px;
background-color: #434443;
color: white;
text-decoration: none;
border: none;
border-radius: 5px;
cursor: pointer;
}
/* lisamine */
form {
width: 50%;
margin: 20px auto;
padding: 20px;
background-color: #f9f9f9;
border: 2px solid #ccc;
border-radius: 10px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
form table {
width: 100%;
}
form table td {
padding: 10px;
}
form table td label {
text-align: right;
display: block;
font-weight: bold;
}
form input[type="text"], form textarea {
width: 100%;
padding: 8px;
border: 1px solid #ccc;
border-radius: 5px;
box-sizing: border-box;
}
/* jalus */
.nav2 {
font-size: 14px;
background: grey;
margin: 0 5px;
padding: 5px 0;
}
.nav2 p {
text-align: center;
color: black;
margin: 0;
padding: 0;
}
.nav2 p a {
display: inline-block;
color: white;
padding: 5px;
text-decoration: none;
}
.nav2 p a:hover {
color: blue;
}
Andmebaasita:
Pealeht:
<!doctype html>
<html lang="et">
<head>
<meta name="viewport" content="width=device-width; initial-scale=1.0;
maximum-scale=1.0;">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Tunniplaan</title>
<link href="kujundus.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="header">
<div class="nav">
<ul>
<li><a href="anekdoodid/anekdoot_1.php">Baskini anekdoot</a></li>
<li><a href="anekdoodid/anekdoot_2.php">Meie naljaraamat</a></li>
<li><a href="anekdoodid/anekdoot_3.php">Delfi naljad 1</a></li>
<li><a href="anekdoodid/anekdoot_4.php">Maalehe anekdoot</a></li>
<li><a href="anekdoodid/anekdoot_5.php">Delfi naljad 2</a></li>
</ul>
</div>
</div>
<h2>Vali anekdoot!</h2>
<div class="nav2">
<?php require("anekdoodid/jalus.php"); ?>
</div>
</body>
</html>
Navigatsiooniga naljalehtede komponent
<!doctype html>
<html lang="et">
<head>
<meta name="viewport" content="width=device-width; initial-scale=1.0;
maximum-scale=1.0;">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Anekdooti leht</title>
<link href="../kujundus.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="header">
<div class="nav">
<ul>
<li><a href="anekdoot_1.php">Baskini anekdoot</a></li>
<li><a href="anekdoot_2.php">Meie naljaraamat</a></li>
<li><a href="anekdoot_3.php">Delfi naljad 1</a></li>
<li><a href="anekdoot_4.php">Maalehe anekdoot</a></li>
<li><a href="anekdoot_5.php">Delfi naljad 2</a></li>
</ul>
</div>
</div>
Anekdoodi elementide mall
<?php require("p2is.php"); ?>
<div class="anekdot-div">
<h2>Baskini anekdoot</h2>
<p> "Kas ma olen teid kusagil näinud?" - küsib kohtunik süüaluselt.</p>
<p> "Seda küll, härra kohtunik." </p>
<p> Ma andsin teie tütrele muusikatunde!"</p>
<p> "Eluaegne vanglakaristus!" </p>
</div
<?php require("jalus.php"); ?>
Andmebaasiga
Kohandasin koodi andmebaasiga töötamiseks, et laadida navigeerimise elemente ja lisada uusi anekdoote.
Pealeht:
<?php
require ('configs/conf.php');
//require ('configs/conf2zone.php');
global $yhendus;
//tabeli andmete lisamine
if (isset($_REQUEST["nimetus"], $_REQUEST["sisu"]) && !empty($_REQUEST["nimetus"]) && !empty($_REQUEST["sisu"])) {
global $yhendus;
$aeg = date("Y-m-d H:i:s");
$paring=$yhendus->prepare("INSERT INTO anekdoodid(nimetus, sisu, kuupaev)
VALUES (?, ?, ?)");
$paring->bind_param("sss", $_REQUEST["nimetus"], $_REQUEST["sisu"], $aeg);
$paring->execute();
}
?>
<!doctype html>
<html lang="et">
<head>
<meta name="viewport" content="width=device-width; initial-scale=1.0;
maximum-scale=1.0;">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Anekdoodi leht</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Anekdoodid</h1>
<div class="nav">
<ul>
<?php
$paring=$yhendus->prepare("SELECT id, nimetus, sisu, kuupaev FROM anekdoodid");
$paring->bind_result($id, $nimetus, $sisu, $kuupaev);
$paring->execute();
while ($paring->fetch()) {
echo "<li><a href='?anekdoot_valik=$id'>" . htmlspecialchars($nimetus) . "</a></li>";
}
?>
</ul>
</div>
<div class="anekdot-div">
<?php
if(isset($_REQUEST["anekdoot_valik"])){
$paring = $yhendus->prepare("SELECT id, nimetus, sisu, kuupaev FROM anekdoodid WHERE id = ?");
$paring->bind_result($id, $nimetus, $sisu, $kuupaev);
$paring->bind_param("i", $_REQUEST["anekdoot_valik"]);
$paring->execute();
if ($paring->fetch()) {
echo "<h2>" . htmlspecialchars($nimetus) . "</h2>";
echo "<p>" . nl2br(htmlspecialchars($sisu)) . "</p>";
echo "<small>Lisatud: " . htmlspecialchars($kuupaev) . "</small>";
}
}
if (!isset($_REQUEST["lisamine"])&& !isset($_REQUEST["anekdoot_valik"])){
echo "<h2>Vali anekdoot!</h2>";
}
?>
</div>
<?php
if (!isset($_REQUEST["lisamine"])){
echo "<a href='?lisamine=jah' class='lisa'>Lisa uus</a>";
}
?>
<?php
if (isset($_REQUEST["lisamine"])){
?>
<h3>Anekdoodi lisamine</h3>
<form action="?" method="post">
<table>
<tr>
<td><label for="nimetus">Nimetus:</label></td>
<td><input type="text" id="nimetus" name="nimetus" required></td>
</tr>
<tr>
<td><label for="sisu">Sisu:</label></td>
<td><textarea type="text" id="sisu" name="sisu" rows="5" cols="20" required></textarea></td>
</tr>
</table>
<input type="submit" value="Lisa">
</form>
<?php
}
?>
</body>
<footer>
<div class="nav2">
<?php require("jalus.php"); ?>
</div>
</footer>
</html>