PHP - Adventkalender

11 10 12 04 20 03 18 16 22 06 08 02 21 09 14 23 01 07 24 13 19 17 05 15

In dieser Demo ist jeder Monat aktiv, man braucht also nur den heutigen Tag (1-24) auszuwählen.


<?php

// Adventkalender
// Peter Ortner / Werner Zenk


// Monat
// Zum testen auf den aktuellen Monat stellen
$monat 12;

// Sprüche zu Weihnachten
$spruch[1] = 'Spruch 1 ...';
$spruch[2] = 'Spruch 2 ...';
$spruch[3] = 'Spruch 3 ...';
$spruch[4] = 'Spruch 4 ...';
$spruch[5] = 'Spruch 5 ...';
$spruch[6] = 'Spruch 6 ...';
$spruch[7] = 'Spruch 7 ...';
$spruch[8] = 'Spruch 8 ...';
$spruch[9] = 'Spruch 9 ...';
$spruch[10] = 'Spruch 10 ...';
$spruch[11] = 'Spruch 11 ...';
$spruch[12] = 'Spruch 12 ...';
$spruch[13] = 'Spruch 13 ...';
$spruch[14] = 'Spruch 14 ...';
$spruch[15] = 'Spruch 15 ...';
$spruch[16] = 'Spruch 16 ...';
$spruch[17] = 'Spruch 17 ...';
$spruch[18] = 'Spruch 18 ...';
$spruch[19] = 'Spruch 19 ...';
$spruch[20] = 'Spruch 20 ...';
$spruch[21] = 'Spruch 21 ...';
$spruch[22] = 'Spruch 22 ...';
$spruch[23] = 'Spruch 23 ...';
$spruch[24] = 'Spruch 24 ...';

// Farben
$tag_nein 'bg-rot';
$tag_ja 'bg-gruen';
?>
<!DOCTYPE html>
<html lang="de-at">
<head>
<meta charset="UTF-8">
<title>Adventkalender</title>
<meta name="viewport" content="width=device-width,initial-scale=1">

<style>
body {font:130% "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;color:#000;text-align:left;font-weight:300;}

.content {display:block;background:#eee;width:80%;margin:50px auto 0 auto;padding:50px;}
.ausgabe {margin-top:50px;}
.footer {text-align:center;margin-top:50px;}

a {text-decoration:none;}
.bg-rot {background:#800;color:#fff;margin:2px;padding:15px 25px;line-height:60px;text-align:right;}
.bg-gruen {background:#690;color:#fff;margin:2px;padding:15px 25px;line-height:60px;}
</style>

</head>
<body>

<section class="content">

<?php
$tage 
range(124);
shuffle($tage);
$weihnachtsTag false;

foreach (
$tage as $tag) {
 echo 
' <a href="?tuerchen=' sprintf("%02d"$tag) . '" class="';
 
 if (isset(
$_GET['tuerchen']) &&
  (
$_GET['tuerchen'] . '.' sprintf("%02d"$monat) . '.' date('Y')) == date("d.m.Y") &&
   
$_GET['tuerchen'] == $tag) {
  echo 
$tag_ja;
  
$weihnachtsTag true;
 }
 else {
  echo 
$tag_nein;
 }

 echo 
'">' sprintf("%02d"$tag) . ' </a>';
}

if (isset(
$_GET['tuerchen'])) {
 if (
$weihnachtsTag) {
  echo 
'<div class="ausgabe">Heute ist der ' . (date('d') . '.' sprintf("%02d"$monat) . '.' date('Y')) .
  
'<br>&bdquo;' $spruch[floor($_GET['tuerchen'])] . '&rdquo;</div>';
 }
 else {
  echo 
'<div class="ausgabe">Ujeee... Du hast den falschen Tag erwischt, da heute nicht der ' . ($_GET['tuerchen'] . '.' sprintf("%02d"$monat) . '.' date('Y')) . ' ist.</div>';
 }
}
?>

</section>

<footer class="footer">
<a href="./">zurück</a>
</footer>

</body>
</html>

Bausteine

Eine zufällige Auswahl von „Bausteinen” aus den Bereichen CSS, PHP, JavaScript und MySQL.

CSS - Tabellenzeilen einfärben

PHP - Bild und Bildinformation anzeigen

JavaScript - Zahlen aus zwei Eingabefeldern zusammenzählen

MySQL - Den nächsten und vorherigen Datensatz ermitteln