So, der Code wird immer grösser
Kannst ihn mal testen. Das mit dem Automatischen vergleichen 2er Timstamp geht irgendwie nicht. Anscheinend ist das Datum zu hoch. Habe es jetzt manuel gemacht. Vieleicht geht es auch noch etwas einfacher.
Kannst ihn mal testen. Das mit dem Automatischen vergleichen 2er Timstamp geht irgendwie nicht. Anscheinend ist das Datum zu hoch. Habe es jetzt manuel gemacht. Vieleicht geht es auch noch etwas einfacher.
PHP:
<?php
$rechnungs_datum = "8.2003"; // <--- Wert von "zeitraumvon"
$rechnung_bis = "12.2100"; // <--- Wert von "zeitraumbis"
$rechnungs_interval = "6"; // Bedeutet, das alle 3 Monate eine Rechnung fällig wird. Also wert vom Feld "mvhj" (scheiss name ;) )
$rechnungs_datum = explode(".",$rechnungs_datum);
$rechnung_bis = explode(".",$rechnung_bis);
if($rechnungs_datum[1] < date("Y")) { // Testet, ob das Aktuelle Yahr grösser ist als don von "zeitraumvon"
$monate_vergangen = 12 - $rechnungs_datum[0] + date("n"); // Errechnet, wie viele Monate vergangen sind
}
else {
$monate_vergangen = date("n") - $rechnungs_datum[0] ; // Errechnet auch wie viele Monate vergangen sind ;)
}
if(date("m") + $rechnungs_interval > 12) { // Wenn der Monat, indem die nächste Rechnung fällig wird grösser als 12 ist (also ins nächste Jahr hineingeht) dann...
$jahr = date("y") + 1;
$monat = date("m") + $rechnungs_interval - 12;
}
else {
$jahr = date("y");
$monat = date("m") + $rechnungs_interval;
}
$ende = 0;
if($year > $rechnung_bis[1]) { // Wenn das Jahr indem die nächste Rechnung fällig ist grösser ist als das Jahr, indem die Rechnung nicht mehr bezahlt werden muss.
echo "Rechnung muss nicht mehr Bezahlt werden.<br>";
$ende = 1
}
if ($year == $rechnung_bis[1] && $monat >= $rechnung_bis[0]) { // Wenn die beiden Jahre gleichgross sind, dann muss man den Monat vergleichen.
echo "Rechnung muss nicht mehr Bezahlt werden.<br>";
$ende = 1;
}
if($ende == 0) // Wenn die Rechnung nicht mehr bezahlt werden muss, führe das alles Weiter unten nicht mehr aus.
if($monate_vergangen%$rechnungs_interval) {
$rechung_faellig_in = $rechnungs_interval - ($monate_vergangen%$rechnungs_interval);
echo "Rechnung fällig in " . $rechung_faellig_in . " Monat.";
}
else
if (date("n") == $rechnungs_datum[0] && date("Y") == $rechnungs_datum[1] )
echo "Rechnung fällig in " . $rechnungs_interval . " Monaten";
else
echo "Rechnung fällig";
?>
Zuletzt bearbeitet: