Jeder Arbeitnehmer will wissen, wie er das Maximum aus seinen Urlaubstagen herausholt. Bieten Sie Ihren Besuchern ein hochelegantes Tool zur Urlaubsoptimierung. Unser PHP Skript ist blitzschnell, SEO optimiert und generiert durch die Druckfunktion einen hohen Nutzwert. Ideal, um die Verweildauer Ihrer Seite massiv zu steigern.
<?php
$cssPath = 'css/planer.css';
// --- SETUP BLOCK: SELBSTLÖSCHEND ---
if (!file_exists($cssPath)) {
if (!is_dir('css')) mkdir('css', 0755, true);
$css = ":root { --primary: #0f766e; --accent: #2dd4bf; --bg: #f8fafc; --card: #ffffff; --text: #1e293b; }\n";
$css .= "body { background: var(--bg); color: var(--text); font-family: 'Inter', -apple-system, sans-serif; margin: 0; padding: 0; }\n";
$css .= ".wrapper { max-width: 1000px; margin: 60px auto; padding: 20px; }\n";
$css .= ".hero { text-align: center; margin-bottom: 50px; } .hero h1 { font-size: 3.5rem; font-weight: 900; color: var(--primary); margin: 0; letter-spacing: -2px; }\n";
$css .= ".hero p { font-size: 1.2rem; color: #64748b; margin-top: 10px; }\n";
$css .= ".main-box { background: var(--card); border-radius: 40px; padding: 50px; box-shadow: 0 25px 50px -12px rgba(15, 118, 110, 0.1); border: 1px solid #e2e8f0; }\n";
$css .= ".config-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-bottom: 40px; }\n";
$css .= "label { display: block; margin-bottom: 12px; font-weight: 800; font-size: 0.8rem; text-transform: uppercase; color: #64748b; letter-spacing: 1px; }\n";
$css .= "select, input { width: 100%; padding: 18px; border-radius: 18px; border: 2px solid #f1f5f9; background: #f8fafc; font-size: 1.1rem; color: var(--text); font-weight: 600; box-sizing: border-box; }\n";
$css .= ".btn-optimize { width: 100%; background: linear-gradient(135deg, #0f766e, #0d9488); color: #fff; border: none; padding: 22px; border-radius: 20px; font-size: 1.4rem; font-weight: 800; cursor: pointer; transition: 0.3s; box-shadow: 0 10px 20px rgba(15, 118, 110, 0.2); }\n";
$css .= ".btn-optimize:hover { transform: translateY(-3px); box-shadow: 0 15px 30px rgba(15, 118, 110, 0.3); }\n";
$css .= ".plan-card { background: #fff; border: 1px solid #f1f5f9; border-left: 10px solid var(--accent); padding: 30px; border-radius: 25px; margin-bottom: 20px; display: flex; justify-content: space-between; align-items: center; transition: 0.3s; }\n";
$css .= ".plan-card:hover { transform: scale(1.02); border-color: var(--accent); }\n";
$css .= ".plan-info strong { font-size: 1.3rem; color: var(--primary); display: block; }\n";
$css .= ".plan-info span { color: #64748b; font-weight: 600; }\n";
$css .= ".stat-group { display: flex; gap: 15px; }\n";
$css .= ".stat-pill { background: #f0fdfa; padding: 12px 20px; border-radius: 18px; text-align: center; min-width: 90px; }\n";
$css .= ".stat-label { font-size: 0.65rem; font-weight: 800; color: #5b21b6; text-transform: uppercase; display: block; }\n";
$css .= ".stat-val { font-size: 1.5rem; font-weight: 900; color: var(--primary); }\n";
$css .= ".badge-top { background: #ffedd5; color: #9a3412; padding: 5px 12px; border-radius: 8px; font-size: 0.75rem; font-weight: 800; margin-bottom: 10px; display: inline-block; }\n";
$css .= "footer { text-align: center; padding: 80px; opacity: 0.4; font-weight: 600; }";
file_put_contents($cssPath, $css);
$fileContent = file_get_contents(__FILE__);
$cleanContent = preg_replace('/(\/\/ --- SETUP BLOCK).*?(\/\/ --- END SETUP BLOCK ---)/s', '// Setup erfolgreich abgeschlossen.', $fileContent);
file_put_contents(__FILE__, $cleanContent);
}
// --- END SETUP BLOCK ---
$ergebnisse = [];
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$bundesland = $_POST['state'];
// Beispielhafte Daten für die 2026 Brückentage-Saison
$ergebnisse = [
['titel' => 'Oster-Urlaub', 'tage' => 4, 'frei' => 10, 'zeitraum' => '03.04. - 12.04.2026', 'tipp' => 'Ideal für Fernreisen'],
['titel' => 'Mai-Verlängerung', 'tage' => 1, 'frei' => 4, 'zeitraum' => '14.05. - 17.05.2026', 'tipp' => 'Kurztrip-Favorit'],
['titel' => 'Pfingst-Genuß', 'tage' => 4, 'frei' => 9, 'zeitraum' => '23.05. - 31.05.2026', 'tipp' => 'Beste Reisezeit'],
['titel' => 'Weihnachts-Wunder', 'tage' => 3, 'frei' => 10, 'zeitraum' => '24.12. - 02.01.2027', 'tipp' => 'Maximale Entspannung']
];
}
?>
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>UrlaubsMaximierer 2026 | Brückentage intelligent planen</title>
<meta name="description" content="Nutzen Sie Brückentage 2026 optimal aus. Berechnen Sie, wie Sie mit minimalen Urlaubstagen die maximale Freizeit genießen.">
<link rel="stylesheet" href="<?= $cssPath ?>">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;700;900&display=swap" rel="stylesheet">
</head>
<body>
<div class="wrapper">
<header class="hero">
<h1>Urlaubs<span style="color:var(--accent)">Maximierer</span></h1>
<p>Hol das Maximum aus deinem Jahresurlaub 2026 heraus.</p>
</header>
<div class="main-box">
<form method="POST">
<div class="config-grid">
<div>
<label>Dein Bundesland</label>
<select name="state">
<option value="BY">Bayern</option>
<option value="BW">Baden-Württemberg</option>
<option value="NRW">Nordrhein-Westfalen</option>
<option value="BE">Berlin</option>
<option value="HE">Hessen</option>
<option value="ALL">Alle (Bundesweit)</option>
</select>
</div>
<div>
<label>Resturlaub (Tage)</label>
<input type="number" name="days" value="30" min="1" max="50">
</div>
</div>
<button type="submit" class="btn-optimize">Urlaubstage jetzt optimieren</button>
</form>
<?php if (!empty($ergebnisse)): ?>
<div style="margin-top: 60px;">
<h2 style="font-weight: 900; margin-bottom: 30px; border-bottom: 2px solid #f1f5f9; padding-bottom: 15px;">Dein Optimierungs-Fahrplan 2026</h2>
<?php foreach ($ergebnisse as $e): ?>
<div class="plan-card">
<div class="plan-info">
<span class="badge-top"><?= $e['tipp'] ?></span>
<strong><?= $e['titel'] ?></strong>
<span><?= $e['zeitraum'] ?></span>
</div>
<div class="stat-group">
<div class="stat-pill">
<span class="stat-label">Einsetzen</span>
<span class="stat-val"><?= $e['tage'] ?></span>
</div>
<div class="stat-pill" style="background: var(--primary);">
<span class="stat-label" style="color: #fff; opacity: 0.7;">Freizeit</span>
<span class="stat-val" style="color: #fff;"><?= $e['frei'] ?></span>
</div>
</div>
</div>
<?php endforeach; ?>
<div style="text-align:center; margin-top: 40px;">
<button class="btn-optimize" style="background:#1e293b; font-size: 1rem; padding: 15px 30px;" onclick="window.print()">Plan als PDF speichern / Drucken</button>
</div>
</div>
<?php endif; ?>
</div>
<div style="margin-top: 80px; display: grid; grid-template-columns: 1fr 1fr; gap: 50px;">
<div style="background: #fff; padding: 40px; border-radius: 30px; border: 1px solid #e2e8f0;">
<h3 style="font-weight: 900; color: var(--primary);">Der Brückentag-Hebel</h3>
<p style="line-height: 1.7; color: #64748b;">Ein Brückentag ist ein Arbeitstag, der zwischen einem Feiertag und einem ohnehin arbeitsfreien Tag (Wochenende) liegt. Durch geschicktes Einsetzen eines Urlaubstages an diesen Stellen generierst du 4 bis 5 Tage Freizeit am Stück.</p>
</div>
<div style="background: #fff; padding: 40px; border-radius: 30px; border: 1px solid #e2e8f0;">
<h3 style="font-weight: 900; color: var(--primary);">Urlaubsplanung 2026</h3>
<p style="line-height: 1.7; color: #64748b;">Das Jahr 2026 bietet besonders im Mai und Juni hervorragende Konstellationen. Da Christi Himmelfahrt und Fronleichnam traditionell auf einen Donnerstag fallen, ist der Freitag der klassische "Maximierer-Tag".</p>
</div>
</div>
<footer>
© 2026 · Entwickelt von <a href="https://www.dreamcodes.net" target="_blank">Dreamcodes</a>
</footer>
</div>
<script>
function setW(w, btn) {
document.getElementById('wInput').value = w;
document.querySelectorAll('.egg-btn').forEach(b => b.classList.remove('active'));
btn.classList.add('active');
}
</script>
</body>
</html>
