06.08.2013, 19:57
Hallo,
Ich habe ein Problem und zwar habe ich nach dem Beispiel eines Tutorials ein Event Script gebastelt.
Nun wenn ich es einlade zeigt er mir permanent im Error log
Undifinied Variable heute in Zeile 130. Soweit ich das aber sehe wird ihr doch ein Wert gegeben.
Was mache ich falsch?
Ich habe ein Problem und zwar habe ich nach dem Beispiel eines Tutorials ein Event Script gebastelt.
Nun wenn ich es einlade zeigt er mir permanent im Error log
Undifinied Variable heute in Zeile 130. Soweit ich das aber sehe wird ihr doch ein Wert gegeben.
Was mache ich falsch?
PHP-Code:
<?php // kalender.php
include('/////'); // DB-Verbindung einbinden
function naechsterMonat(){ // Naechster Monat bestimmen
$calendar = explode(',',$_GET['go']);
$cali['monat'] = $calendar['0'];
$cali['jahr'] = $calendar['1'];
if ($cali['monat'] == '12') {
$nextCal = '1,' . ($cali['jahr'] + 1);
}
else {
$nextCal = ($cali['monat'] + 1) . ',' . $cali['jahr'];
}
return $nextCal;
}
function vorherigerMonat(){ // Monat davor bestimmen
$calendar = explode(',',$_GET['go']);
$cali['monat'] = $calendar['0'];
$cali['jahr'] = $calendar['1'];
if ($cali['monat'] == '1') {
$lastCal = '12,' . ($cali['jahr'] - 1);
}
else {
$lastCal = ($cali['monat'] - 1) . ',' . $cali['jahr'];
}
return $lastCal;
}
function show_calender(){
if (isset($_GET['go'])) {
$calendar = explode(',', $_GET['go']);
$monat = $calendar['0'];
$jahr = $calendar['1'];
if ($_GET['go'] == date('n') . ',' . date('Y')) {
$heute = date('d');
}
}else{
$monat = date('n'); // ermitteln des Jahres
$jahr = date('Y'); // ermitteln des Monats
$heute = date('d'); // ermitteln des aktuellen Tages
$_GET['go'] = $monat . ',' . $jahr;
}
$first = date("w", mktime(0, 0, 0, $monat, 1, $jahr)); // ermitteln des Wochentages für den ersten Tages des Monats
$last = date("t", mktime(0 ,0 , 0, $monat, 1, $jahr)); // ermitteln des letzten Tages des Monats
//Monate und Wochentage
$monate = Array("", "Januar", "Februar", "März","April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
$wochentage = Array("So", "Mo", "Di", "Mi", "Do", "Fr", "Sa", "So");
if($first == 0){
$first = 7; // Korrektur für den Sonntag
}
echo "<table border=\"0\">\n";
// Monat zurueck blaettern
echo "<caption><a href=\"javascript:get_Content('kalender','?go=".vorherigerMonat()."');\" class=\"back\">«</a>\n ";
// aktuelles Jahr und Monat ausgeben
echo $monate[$monat]." ".$jahr;
// Monat vor blaettern
echo " <a href=\"javascript:get_Content('kalender','?go=".naechsterMonat()."');\" class=\"vor\">»</a>\n";
echo "</caption>\n";
// Wochen Tage ausgeben
echo "<tr>\n";
echo "<th abbr=\"Montag\" title=\"Montag\">Mo</th>\n";
echo "<th abbr=\"Dienstag\" title=\"Dienstag\">Di</th>\n";
echo "<th abbr=\"Mittwoch\" title=\"Mittwoch\">Mi</th>\n";
echo "<th abbr=\"Donnerstag\" title=\"Donnerstag\">Do</th>\n";
echo "<th abbr=\"Freitag\" title=\"Freitag\">Fr</th>\n";
echo "<th abbr=\"Samstag\" title=\"Samstag\">Sa</th>\n";
echo "<th abbr=\"Sonntag\" title=\"Sonntag\">So</th>\n";
echo "</tr>\n<tr>\n";
// Leere Zellen ausgeben, bis zum ersten Tag des Monats
for ($j=1; $j < $first; $j++){
echo "<td>\n ";
}
if(strlen($monat) == 1){ // Null vorran stellen fuer Monat 1-9
$sql_m = "0".$monat;
}else{
$sql_m = $monat;
}
// DB-Abfrage => Events des aktuellen Monats
$abfrage = mysql_query("SELECT id, event, DATE_FORMAT(date, '%d.%m.%Y') AS datum FROM showyourcarde_events WHERE date BETWEEN '".$jahr."-".$sql_m."-1' AND '".$jahr."-".$sql_m."-31'");
$total = mysql_num_rows($abfrage); // Anzahl Events
if($total >= 1){ // Pruefen ob events vorhanden sind
while($row = mysql_fetch_object($abfrage)){
$events["$row->datum"] = "$row->event"; // Array mit Eventdaten fuettern
}
}// close events vorhanden
for ($i=1; $i <= $last; $i++){ // Tage ausgeben
$x = $wochentage[date("w", mktime(0 , 0, 0, $monat, $i, $jahr))]; // ermitteln des Wochentages
if($total >= 1){ // Pruefen ob Events vorhanden sind
if(strlen($i) == 1){ // Null vorran stellen fuer TAG 1-9
$sql_i = "0".$i;
}else{
$sql_i = $i;
}
$event_date = $sql_i.".".$sql_m.".".$jahr; // aktuelles Datum in Schleife bestimmen
if(array_key_exists($event_date, $events)){ // Pruefen ob event bei $i vorhanden
$show_event = "<a href=\"#\" class=\"tool\">".$i."<span>".$events["$event_date"]."</span></a>\n";
if ($i == $heute){ // Aktueller Tag kennzeichnen
echo "<td class=\"today\">".$show_event."</td>\n";
}else{
echo "<td>".$show_event."</td>\n";
}
}else{
if ($i == $heute){ // Aktueller Tag kennzeichnen
echo "<td class=\"today\">".$i."</td>\n";
}else{
echo "<td>".$i."</td>\n";
}
}// close event vorhanden
}else{ // Wenn keine Events sind
if ($i == $heute){ // Aktueller Tag kennzeichnen
echo "<td class=\"today\">".$i."</td>\n";
}else{
echo "<td>".$i."</td>\n";
}
} // close check events
if($x == "So"){ // Am Sonntag endet die jeweilige Zeile
echo "</tr>\n<tr>\n ";
}
} //close Tage ausgeben
echo "</tr>\n";
echo "</table>\n";
} // close function show_calender
?>