PHP 7
Kalender.php Guest on 20th November 2020 05:28:00 AM
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html>
  3. <head>
  4.  
  5.         <title>c3kalender</title>
  6.         <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  7.         <meta name="description" content="" />
  8.         <meta name="keywords" content="" />
  9.  
  10. <style type="text/css">
  11. <!--
  12. body {
  13.         background:white;
  14.         color:black;
  15.         font-family:'Trebuchet MS',Helvetica,Arial,Geneva,sans-serif;
  16.         font-size:0.8em;
  17. }
  18.  
  19. /* kalender styles */
  20. .cal_monat { color:black; }
  21. .cal_woche { background-color:yellow; }
  22. .cal_so { color:#CCC; }
  23. .cal_klickbar { color:red; }
  24. .cal_auswahl { font-weight:bold; }
  25. .cal_over { background-color:white; }
  26. //-->
  27. </style>
  28.  
  29. </head>
  30. <body lang="" xml:lang="">
  31.  
  32.  
  33. <?
  34.  
  35. if (!$datum) {                                  // $datum: YYYY-MM-DD
  36.         $timestamp = time();
  37. } else {
  38.         $datum_ex = explode('-', $datum);
  39.         $timestamp = mktime(0,0,0,$datum_ex[1],$datum_ex[2], $datum_ex[0]);
  40. }
  41.  
  42. $auswahltag = strftime('%Y-%m-%d', $timestamp);
  43. $markiertetage = Array('2003-05-15', '2003-06-02', '2003-07-07', '2003-08-08', '2003-09-23');
  44.  
  45. kalender($timestamp);
  46.  
  47.  
  48. //////////////////////////////
  49.  
  50.  
  51. function kalender($timestamp) {         //timestamp = beliebiger zeitpunkt im gew├╝nschten monat
  52.         ?>
  53.         <div class="kalender" style="text-align:center;-moz-box-sizing:border-box;width:140px;border:1px dashed #999;font-style:normal;color:#999">
  54.         <?
  55.                 $monate = Array("J&auml;nner", 'Februar', 'M&auml;rz', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember');
  56.                 $monat = strftime('%m', $timestamp) - 1;
  57.                 echo '<strong class="cal_monat">', $monate[$monat], strftime(' %Y', $timestamp), '</strong>';
  58.         ?>
  59.                 <table width="140" style="margin-top:3px;" cellpadding="0" cellspacing="0">
  60.                 <tr id="cal_wochentage">
  61.                         <td width="20">Mo</td><td width="20">Di</td>
  62.                         <td width="20">Mi</td><td width="20">Do</td>
  63.                         <td width="20">Fr</td><td width="20">Sa</td>
  64.                         <td width="20">So</td>
  65.                 </tr>
  66.                 <tr class="cal_woche">
  67.  
  68.         <?
  69.                 $vergangeneminuten = strftime('%M', $timestamp);
  70.                 $vergangenestunden = strftime('%H', $timestamp);
  71.                 $vergangenetage = strftime('%d', $timestamp);
  72.                 $ersterdesmonats = $timestamp - $vergangeneminuten * 60 - $vergangenestunden * 60 * 60  - $vergangenetage * 60 * 60 * 24;
  73.  
  74.                 $wochentagdes1 = strftime('%u', $ersterdesmonats); // 0-6, montag=0
  75.  
  76.                 for($i=0;$i<$wochentagdes1;$i++) {
  77.                         echo '<td>&nbsp;</td>', "\n";
  78.                 }
  79.  
  80.                 $tagedesmonats = date("t", ($ersterdesmonats + 24*60*60));
  81.  
  82.                 $currtime = $ersterdesmonats;
  83.                 for($i=0;$i<$tagedesmonats;$i++) {
  84.                         $currtime = $currtime + 24 * 60 * 60;
  85.  
  86.                         echo '<td';
  87.                                 $markiertetage = $GLOBALS['markiertetage'];
  88.                                 $auswahltag = $GLOBALS['auswahltag'];
  89.                                 $markiertetageidx = strftime('%Y-%m-%d', $currtime);
  90.                                 if (in_array($markiertetageidx, $markiertetage)) {
  91.                                         echo ' class="cal_klickbar';
  92.                                         if (substr(strftime('%A', $currtime), 0, 2) == 'Su') { echo ' so'; }
  93.                                         echo '" onclick="window.location=\'kalender.php?datum=', strftime('%Y-%m-%d', $currtime), '\'"';
  94.                                 } else {
  95.                                         if (substr(strftime('%A', $currtime), 0, 2) == 'Su') { echo ' class="cal_so"'; }
  96.                                         echo ' style="cursor:default"';
  97.                                 }
  98.                         echo '>';
  99.                         if (in_array($markiertetageidx, $markiertetage)) {
  100.                                 echo '<div onmouseover="this.className=\'cal_over\'" onmouseout="this.className=\'\'">';
  101.                         }
  102.                                 if ($markiertetageidx == $auswahltag) { echo '<strong class="cal_auswahl">'; }
  103.                                 echo strftime('%e', $currtime);
  104.                                 if ($markiertetageidx == $auswahltag) { echo '</strong>'; }
  105.                         if (in_array($markiertetageidx, $markiertetage)) { echo '</div>'; }
  106.                         echo '</td>';
  107.                         if (substr(strftime('%A', $currtime), 0, 2) == 'Su') { echo '</tr>', "\n", '<tr class="cal_woche">'; }
  108.  
  109.                 }
  110.  
  111.                 $wochentagdesletzten = strftime('%u', $currtime);
  112.                 for($i=$wochentagdesletzten;$i<7;$i++) {
  113.                         if ($i == 6) {  //sonntag
  114.                                 echo '<td class="cal_so">&nbsp;</td>', "\n";
  115.                         } else {
  116.                                 echo '<td>&nbsp;</td>', "\n";
  117.                         }
  118.                 }
  119.  
  120.         ?>
  121.        
  122.                 </tr></table>
  123.         </div>
  124.  
  125.         <br />
  126.  
  127. <?
  128. }
  129. ?>
  130.  
  131. </body>
  132. </html>

Paste is for source code and general debugging text.

Login or Register to edit, delete and keep track of your pastes and more.

Recent Pastes

Raw Paste

Login or Register to edit or fork this paste. It's free.