PHP - Adventkalender

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

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” (Snippets) aus den Bereichen CSS, PHP, JavaScript und MySQL.

CSS - Mit import mehrere CSS-Dateien zusammenfassen

PHP - Zufallsfarbe ausgeben

JavaScript - 1 x Klick Button

MySQL - Datensatz Wert um 10% veringern