@maxdays=(31,28,31,30,31,30,31,31,30,31,30,31);
# das Feld enthält die maximale Anzahl von Tagen in den einzelnen Monaten (Schaltjahr ist
# noch nicht berücksichtigt, weil bisher kein Bedarf besteht)
#im Folgenden steht "a" für Anfang und "e" für Ende:
$atag=$_get{atag};$amonat=$_get{amonat};$ajahr=$_get{ajahr};
$etag=$_get{etag};$emonat=$_get{emonat};$ejahr=$_get{ejahr};
#Anfangs-Datum
#wenn kein Tag eingegeben, nimm den 1.:
$atag=1 if ($atag eq "");
#wenn kein Monat eingegeben, nimm Januar:
$amonat=1 if ($amonat eq "");
#wenn kein jahr eingegeben, nimm 2001:
$ajahr=2001 if ($ajahr eq "");
#Ende-Datum
#wenn kein Jahr eingegeben, nimm das aktuelle:
$ejahr=datum(jetzt,"Jahr") if ($ejahr eq "");
#wenn kein Monat eingegeben, nimm Dezember:
$emonat=12 if ($emonat eq "");
#Wenn kein Tag eingegeben, nimm den letzten Tag des Monats:
$etag=$maxdays[$emonat-1] if ($etag eq "");
#zu einem Datum-String zusammensetzen:
$adatum=$atag.".".$amonat.".".$ajahr;
$edatum=$etag.".".$emonat.".".$ejahr;
Sollte diese Belegung zu einem Datumsbereich führen, den der Nutzer nicht gewollt hat, dann hat er halt Pech gehabt und muss seine Datumsangaben genauer machen.if (datum($edatum,"Jahr.Monat0.Tag0") lt datum($adatum,"Jahr.Monat0.Tag0"))
{
$tempdatum=$edatum;
$edatum=$adatum;
$adatum=$tempdate;
}