Kapitel 3 Lektion 9 gesplittet
16
Kapitel_3/Lektion_10/fotogalerie/foto.php
Executable file
@ -0,0 +1,16 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Fotogalerie - Foto 1.jpg</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Foto 1.jpg</h1>
|
||||
<p>
|
||||
<img src="fotos/1.jpg" alt="1.jpg">
|
||||
</p>
|
||||
<p>
|
||||
<a href="index.php">Zurück</a>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
BIN
Kapitel_3/Lektion_10/fotogalerie/fotos/1.jpg
Executable file
After Width: | Height: | Size: 118 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/fotos/2.jpg
Executable file
After Width: | Height: | Size: 128 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/fotos/3.jpg
Executable file
After Width: | Height: | Size: 99 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/fotos/4.jpg
Executable file
After Width: | Height: | Size: 108 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/fotos/5.jpg
Executable file
After Width: | Height: | Size: 95 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/fotos/6.jpg
Executable file
After Width: | Height: | Size: 96 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/fotos/7.jpg
Executable file
After Width: | Height: | Size: 96 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/fotos/8.jpg
Executable file
After Width: | Height: | Size: 97 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/fotos/9.jpg
Executable file
After Width: | Height: | Size: 135 KiB |
105
Kapitel_3/Lektion_10/fotogalerie/index.php
Executable file
@ -0,0 +1,105 @@
|
||||
<?php
|
||||
|
||||
$fotos = [
|
||||
[
|
||||
'dateiname' => '1.jpg',
|
||||
'tags' => 'Industrie'
|
||||
],
|
||||
[
|
||||
'dateiname' => '2.jpg',
|
||||
'tags' => 'Gebäude'
|
||||
],
|
||||
[
|
||||
'dateiname' => '3.jpg',
|
||||
'tags' => 'Gebäude, Natur'
|
||||
],
|
||||
[
|
||||
'dateiname' => '4.jpg',
|
||||
'tags' => 'Industrie'
|
||||
],
|
||||
[
|
||||
'dateiname' => '5.jpg',
|
||||
'tags' => 'Natur'
|
||||
],
|
||||
[
|
||||
'dateiname' => '6.jpg',
|
||||
'tags' => 'Gebäude, Natur'
|
||||
],
|
||||
[
|
||||
'dateiname' => '7.jpg',
|
||||
'tags' => 'Natur'
|
||||
],
|
||||
[
|
||||
'dateiname' => '8.jpg',
|
||||
'tags' => 'Gebäude'
|
||||
],
|
||||
[
|
||||
'dateiname' => '9.jpg',
|
||||
'tags' => 'Industrie'
|
||||
]
|
||||
];
|
||||
|
||||
function filter($liste, $suchbegriff)
|
||||
{
|
||||
$ergebnis = [];
|
||||
foreach ($liste as $listenEintrag) {
|
||||
if (false !== stripos($listenEintrag['tags'], $suchbegriff)) {
|
||||
$ergebnis[] = $listenEintrag;
|
||||
}
|
||||
}
|
||||
|
||||
return $ergebnis;
|
||||
}
|
||||
|
||||
if (count($_POST) > 0) {
|
||||
$suchbegriff = $_POST['suchbegriff'];
|
||||
$fotosGefiltert = filter($fotos, $suchbegriff);
|
||||
} else {
|
||||
$suchbegriff = '';
|
||||
$fotosGefiltert = $fotos;
|
||||
}
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Fotogalerie</title>
|
||||
<style>
|
||||
.miniatur {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.miniatur img {
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.clearfix {
|
||||
clear: both;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Fotogalerie</h1>
|
||||
<p><?= count($fotosGefiltert); ?> von <?= count($fotos); ?> Fotos</p>
|
||||
<?php foreach ($fotosGefiltert as $foto) : ?>
|
||||
<div>
|
||||
<div class="miniatur" style="float: left;">
|
||||
<a href="fotos/<?= htmlspecialchars($foto['dateiname']); ?>">
|
||||
<img src="miniaturen/<?= htmlspecialchars($foto['dateiname']); ?>" alt="<?= htmlspecialchars($foto['dateiname']); ?>">
|
||||
</a>
|
||||
</div>
|
||||
Dateiname: <?= htmlspecialchars($foto['dateiname']); ?><br>
|
||||
Tags: <?= htmlspecialchars($foto['tags']); ?>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
<div>
|
||||
<form action="index.php" method="post">
|
||||
<label for="suchbegriff">Suchbegriff:</label>
|
||||
<input type="text" id="suchbegriff" name="suchbegriff" value="<?= htmlspecialchars($suchbegriff); ?>"/>
|
||||
<button type="submit">Anwenden</button>
|
||||
</form>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
BIN
Kapitel_3/Lektion_10/fotogalerie/miniaturen/1.jpg
Executable file
After Width: | Height: | Size: 11 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/miniaturen/2.jpg
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/miniaturen/3.jpg
Executable file
After Width: | Height: | Size: 11 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/miniaturen/4.jpg
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/miniaturen/5.jpg
Executable file
After Width: | Height: | Size: 11 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/miniaturen/6.jpg
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/miniaturen/7.jpg
Executable file
After Width: | Height: | Size: 11 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/miniaturen/8.jpg
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie/miniaturen/9.jpg
Executable file
After Width: | Height: | Size: 18 KiB |
21
Kapitel_3/Lektion_10/fotogalerie_loesung/foto.php
Executable file
@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
$dateiname = $_GET['dateiname'];
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Fotogalerie - Foto <?= htmlspecialchars($dateiname); ?></title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Foto <?= htmlspecialchars($dateiname); ?></h1>
|
||||
<p>
|
||||
<img src="fotos/<?= htmlspecialchars($dateiname); ?>" alt="<?= htmlspecialchars($dateiname); ?>">
|
||||
</p>
|
||||
<p>
|
||||
<a href="index.php">Zurück</a>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/fotos/1.jpg
Executable file
After Width: | Height: | Size: 118 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/fotos/2.jpg
Executable file
After Width: | Height: | Size: 128 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/fotos/3.jpg
Executable file
After Width: | Height: | Size: 99 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/fotos/4.jpg
Executable file
After Width: | Height: | Size: 108 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/fotos/5.jpg
Executable file
After Width: | Height: | Size: 95 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/fotos/6.jpg
Executable file
After Width: | Height: | Size: 96 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/fotos/7.jpg
Executable file
After Width: | Height: | Size: 96 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/fotos/8.jpg
Executable file
After Width: | Height: | Size: 97 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/fotos/9.jpg
Executable file
After Width: | Height: | Size: 135 KiB |
105
Kapitel_3/Lektion_10/fotogalerie_loesung/index.php
Executable file
@ -0,0 +1,105 @@
|
||||
<?php
|
||||
|
||||
$fotos = [
|
||||
[
|
||||
'dateiname' => '1.jpg',
|
||||
'tags' => 'Industrie'
|
||||
],
|
||||
[
|
||||
'dateiname' => '2.jpg',
|
||||
'tags' => 'Gebäude'
|
||||
],
|
||||
[
|
||||
'dateiname' => '3.jpg',
|
||||
'tags' => 'Gebäude, Natur'
|
||||
],
|
||||
[
|
||||
'dateiname' => '4.jpg',
|
||||
'tags' => 'Industrie'
|
||||
],
|
||||
[
|
||||
'dateiname' => '5.jpg',
|
||||
'tags' => 'Natur'
|
||||
],
|
||||
[
|
||||
'dateiname' => '6.jpg',
|
||||
'tags' => 'Gebäude, Natur'
|
||||
],
|
||||
[
|
||||
'dateiname' => '7.jpg',
|
||||
'tags' => 'Natur'
|
||||
],
|
||||
[
|
||||
'dateiname' => '8.jpg',
|
||||
'tags' => 'Gebäude'
|
||||
],
|
||||
[
|
||||
'dateiname' => '9.jpg',
|
||||
'tags' => 'Industrie'
|
||||
]
|
||||
];
|
||||
|
||||
function filter($liste, $suchbegriff)
|
||||
{
|
||||
$ergebnis = [];
|
||||
foreach ($liste as $listenEintrag) {
|
||||
if (false !== stripos($listenEintrag['tags'], $suchbegriff)) {
|
||||
$ergebnis[] = $listenEintrag;
|
||||
}
|
||||
}
|
||||
|
||||
return $ergebnis;
|
||||
}
|
||||
|
||||
if (count($_POST) > 0) {
|
||||
$suchbegriff = $_POST['suchbegriff'];
|
||||
$fotosGefiltert = filter($fotos, $suchbegriff);
|
||||
} else {
|
||||
$suchbegriff = '';
|
||||
$fotosGefiltert = $fotos;
|
||||
}
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Fotogalerie</title>
|
||||
<style>
|
||||
.miniatur {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.miniatur img {
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.clearfix {
|
||||
clear: both;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Fotogalerie</h1>
|
||||
<p><?= count($fotosGefiltert); ?> von <?= count($fotos); ?> Fotos</p>
|
||||
<?php foreach ($fotosGefiltert as $foto) : ?>
|
||||
<div>
|
||||
<div class="miniatur" style="float: left;">
|
||||
<a href="foto.php?dateiname=<?= htmlspecialchars($foto['dateiname']); ?>">
|
||||
<img src="miniaturen/<?= htmlspecialchars($foto['dateiname']); ?>" alt="<?= htmlspecialchars($foto['dateiname']); ?>">
|
||||
</a>
|
||||
</div>
|
||||
Dateiname: <?= htmlspecialchars($foto['dateiname']); ?><br>
|
||||
Tags: <?= htmlspecialchars($foto['tags']); ?>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
<div>
|
||||
<form action="index.php" method="post">
|
||||
<label for="suchbegriff">Suchbegriff:</label>
|
||||
<input type="text" id="suchbegriff" name="suchbegriff" value="<?= htmlspecialchars($suchbegriff); ?>"/>
|
||||
<button type="submit">Anwenden</button>
|
||||
</form>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/miniaturen/1.jpg
Executable file
After Width: | Height: | Size: 11 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/miniaturen/2.jpg
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/miniaturen/3.jpg
Executable file
After Width: | Height: | Size: 11 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/miniaturen/4.jpg
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/miniaturen/5.jpg
Executable file
After Width: | Height: | Size: 11 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/miniaturen/6.jpg
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/miniaturen/7.jpg
Executable file
After Width: | Height: | Size: 11 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/miniaturen/8.jpg
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
Kapitel_3/Lektion_10/fotogalerie_loesung/miniaturen/9.jpg
Executable file
After Width: | Height: | Size: 18 KiB |
@ -1,18 +1,13 @@
|
||||
<?php
|
||||
|
||||
$dateiname = $_GET['dateiname'];
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Fotogalerie - Foto <?= htmlspecialchars($dateiname); ?></title>
|
||||
<title>Fotogalerie - Foto 1.jpg</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Foto <?= htmlspecialchars($dateiname); ?></h1>
|
||||
<h1>Foto 1.jpg</h1>
|
||||
<p>
|
||||
<img src="fotos/<?= htmlspecialchars($dateiname); ?>" alt="<?= htmlspecialchars($dateiname); ?>">
|
||||
<img src="fotos/1.jpg" alt="1.jpg">
|
||||
</p>
|
||||
<p>
|
||||
<a href="index.php">Zurück</a>
|
||||
|
@ -85,7 +85,7 @@ if (count($_POST) > 0) {
|
||||
<?php foreach ($fotosGefiltert as $foto) : ?>
|
||||
<div>
|
||||
<div class="miniatur" style="float: left;">
|
||||
<a href="foto.php?dateiname=<?= htmlspecialchars($foto['dateiname']); ?>">
|
||||
<a href="fotos/<?= htmlspecialchars($foto['dateiname']); ?>">
|
||||
<img src="miniaturen/<?= htmlspecialchars($foto['dateiname']); ?>" alt="<?= htmlspecialchars($foto['dateiname']); ?>">
|
||||
</a>
|
||||
</div>
|
||||
|