
Hallo
diese folgende Skript zeigt die Fehlermeldung undefined offsett on line166
line 166 ist markiert(********166******). bitte kann mir jemand den Fehler sagen, bzw den Fehler verbessern.
Probiere jetzt seit Tagen, ich denke ich sitze am Schlauch.
Danke
<html>
<head>
<style type="text/css">
body{font-family:Times New Roman;}
table{background-color:#000000; color:#ffffff;}
tr{background-color:#404040; text-align:center;}
tr.wochentag{background-color:#808080;}
b.heute{color:yellow;}
b.feiertag{text-decoration:underline;}
td{width:30px;}
div.kalender{width:250px; height:300px; background-color:#808080; text-align:center; border-style:solid; border-width:1px; border-color:#000000;}
div.feiertag{width:250px; background-color:#a0a0a0; text-align:center; border-style:solid; border-width:1px; border-color:#000000; position:absolute; left:10px; top:316px;}
div.tipp{width:250px; background-color:#a0a0a0; text-align:center; border-style:solid; border-width:1px; border-color:#000000; position:absolute; left:10px; top:316px;}
a{color:#ffffff; font-weight:bold; text-decoration:none;}
a:hover{text-decoration:underline;}
input{border-style:solid; border-width:0px; text-align:center; background-color:#d0d0d0; font-weight:bold; width:100px;}
</style>
<script language="JavaScript">
function uhrzeit()
{
var uhr=new Date();
var min=uhr.getMinutes();
var sek=uhr.getSeconds();
if(sek<10)
sek="0"+sek;
if(min<10)
min="0"+min;
var std=uhr.getHours();
document.formu.uhr.value=std+":"+min+":"+sek;
window.setTimeout('uhrzeit()',100);
}
function show_ferien(tag)
{
if(document.getElementById("ferien"+tag))
document.getElementById("ferien"+tag).style.visibility='visible';
}
function hide_ferien(tag)
{
if(document.getElementById("ferien"+tag))
document.getElementById("ferien"+tag).style.visibility='hidden';
}
</script>
</head>
<body onLoad="uhrzeit()">
<?php
global $datum;
global $tag;
global $monat;
global $jahr;
global $feiertag;
global $PHP_SELF;
global $j;
if(!isset($monat) && !isset($jahr)) //wenn noch kein Monat und Jahr definiert
{
$monat=date("n");
$jahr=date("Y");
}
$tag=date("j");
$datum['monatsTage']=array(0,31,28,31,30,31,30,31,31,30,31,30,31);//gesamt Anzahl der Tage der einzelnen Monate
$datum['monatsNamen']=array("","Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"); //zur Ausgabe der Monatsnamen
$feiertag['Januar'][1]="Neujahr";
$feiertag['Mai'][1]="Maifeiertag";
$feiertag['Oktober'][3]="Tag der Deutschen Einheit";
$feiertag['Dezember'][24]="Heiligabend";
$feiertag['Dezember'][25]="1.Weihnachtstag";
$feiertag['Dezember'][26]="2.Weihnachtstag";
//berechnet Ostern
$osterTag=date( "j", easter_date($jahr) ); //gibt Ostersonntag Tag fuer das jahr $jahr aus
$osterMonat=date( "n", easter_date($jahr) ); //gibt Ostersonntag Monat fuer das jahr $jahr aus
$feiertag[$datum['monatsNamen'][$osterMonat]][$osterTag]="Ostersonntag";
$feiertag[$datum['monatsNamen'][$osterMonat]][$osterTag+1]="Ostermontag";
//berechnet Pfingsten
$pfingstTag=$osterTag+42;
$pfingstMonat=$osterMonat;
while($pfingstTag>$datum['monatsTage'][$pfingstMonat]) //wenn PfingstTag groesser als gesamt Tage des Monats
{
$pfingstTag=$pfingstTag-$datum['monatsTage'][$pfingstMonat];
$pfingstMonat++;
}
$pfingstTag+=7;
$feiertag[$datum['monatsNamen'][$pfingstMonat]][$pfingstTag]="Pfingstsonntag";
$feiertag[$datum['monatsNamen'][$pfingstMonat]][$pfingstTag+1]="Pfingstmontag";
//berechnet Christi Himmelfahrt
$christTag=$pfingstTag-10;
$christMonat=$pfingstMonat;
if($christTag<=0)
{
$christTag*=+1;
$christMonat--;
$christTag=$datum['monatsTage'][$christMonat]-$christTag;
$christTag-=4;
}
$feiertag[$datum['monatsNamen'][$christMonat]][$christTag]="Christi Himmelfahrt";
$monatsTage=$datum['monatsTage'][$monat];
echo "<div class=\"kalender\">";
echo "<form name=\"formu\" action=\"\">";
//Auswahlliste fuer den Monat
if($jahr>1975)
{
$nextYear=$jahr-1;
echo "<a href=\"$PHP_SELF?monat=$monat&jahr=$nextYear\">$nextYear</a>";
}
echo " | $jahr | ";
if($jahr<2035)
{
$nextYear=$jahr+1;
echo "<a href=\"$PHP_SELF?monat=$monat&jahr=$nextYear\">$nextYear</a>";
}
echo "<br><br>";
echo "<select name=\"monatAuswahl\" onChange=\"window.location.replace('$PHP_SELF?monat='+document.formu.monatAuswahl.value+'&jahr=$jahr')\">";
for($i=1; $i<=12;$i++)
if($monat==$i)
echo "<option value=\"$i\" selected>".$datum['monatsNamen'][$i];
else
echo "<option value=\"$i\">".$datum['monatsNamen'][$i];
echo "</select><br><br>";
//Tage werden erzeugt
echo "<b>$tag . ".$datum['monatsNamen'][$monat]." . $jahr </b><br><br>";
echo "<div class=\"tipp\">Mit der Maus über Feiertag gehen!</div>";
echo "<table>";
echo"<tr class=\"wochentag\"><th>Mo</th><th>Di</th><th>Mi</th><th>Do</th><th>Fr</th><th>Sa</th><th>So</th></tr>";
for($j=1; $j<=$monatsTage;$j++)
{
if($j<10)
$day="0$j";
else
$day=$j;
$weekday=date( "w", mktime(0,0,0,$monat,$j,$jahr) );
if($weekday==0)
$weekday=7;
if($j==1 && $weekday>1)
{
for($i=1;$i<$weekday;$i++)
echo "<td></td>";
}
if($tag==$j)
{
$day="<b class=\"heute\">$day</b>";
}
if($feiertag[$datum['monatsNamen'][$monat]][$j]!="") // wenn Ferientag dann ***********166*******
{
$day="<b class=\"feiertag\">$day</b>";
echo "<div id=\"ferien$j\" class=\"feiertag\" style=\"visibility:hidden;\"><b>".$feiertag[$datum['monatsNamen'][$monat]][$j]."</b></div>";
}
echo "<td><div onmouseover=\"show_ferien($j)\" onmouseout=\"hide_ferien($j)\">$day</div></td> ";
if($weekday==7)
echo "</tr><tr>";
}
if($weekday!=7)
{
for($i=$weekday;$i<7;$i++)
echo "<td></td>";
echo "</tr>";
}
echo "</table>";
echo "<input type=\"text\" name=\"uhr\" value=\"00:00:00\" readonly>";
echo "</form>";
echo "</div>";
?>
</body>
</html>