function PruefeAbstand($zeiles, $Abstand, $NurAbstand) { $heute = HoleBankDatum(false); // Erstmal Periode vom Server holen $periode[monat] = $zeiles["Periode"]; $periode = KonvertiereDatum($periode); // Letzte Zahlungsperiode des Servers holen $Datum[1] = HoleSQLDatum($zeiles, "LetztePeriode"); // 1te Rechnung $Datum[1][jahr] += $periode[jahr]; // Jahre $Datum[1][monat] += $periode[monat]; // Monate $Datum[1][tag] += $periode[tag]; // Tage $Datum[1] = KonvertiereDatum($Datum[1]); // 1te Mahnung $Datum[2] = $Datum[1]; $Datum[2][tag] += $zeiles["Frist"]; $Datum[2] = KonvertiereDatum($Datum[2]); // 2te Mahnung $Datum[3] = $Datum[2]; $Datum[3][tag] += 10; $Datum[3] = KonvertiereDatum($Datum[3]); // Array erstellen for ($i = 1; $i < 4; $i++) { if ($back = PruefeObAktuell($Datum[$i], $Abstand, $NurAbstand)) { $ret[$i] = true; } else { $ret[$i] = false; } } // Falls eine beliebige Rechnung aktuell sein und dies auch der Fall ist, // wird der index 4 auf true gesetzt if ($ret[1] || $ret[2] || $ret[3]) { $ret[4] = true; } return $ret; }
if ($_GET["action"] == 1) { if (!$_GET["counter"]) { die("<center>Fehler, falscher Parameter</center>"); } $counter = $_GET["counter"]; $sql = "SELECT * FROM servers WHERE Counter='" . $counter . "'"; $result = mysql_query($sql); $zeile = mysql_fetch_array($result); // Das Feld LetztePeriode um eine Periode raufsetzen $DatumLetztePeriode = explode("-", $zeile["LetztePeriode"]); $DatumLetztePeriode[jahr] = $DatumLetztePeriode[0]; $DatumLetztePeriode[monat] = $DatumLetztePeriode[1]; $DatumLetztePeriode[tag] = $DatumLetztePeriode[2]; $DatumNeuePeriode = $DatumLetztePeriode; $DatumNeuePeriode[tag] += $zeile["Periode"] * 30; $DatumNeuePeriode = KonvertiereDatum($DatumNeuePeriode); // Jetzt die neue Periode in LetzePeriode eintragen $DatumNeuePeriode_sql = $DatumNeuePeriode[jahr] . "-" . $DatumNeuePeriode[monat] . "-" . $DatumNeuePeriode[tag]; $sql = "UPDATE servers SET LetztePeriode='" . $DatumNeuePeriode_sql . "' WHERE Counter='" . $counter . "'"; $result = mysql_query($sql); } // 2. Deaktivieren des Servers if ($_GET["action"] == 2) { if (!$_GET["counter"]) { die("<center>Fehler, falscher Parameter</center>"); } $counter = $_GET["counter"]; // Server deaktivieren $sql = "UPDATE servers SET bActive='0' WHERE Counter='" . $counter . "'"; $result = mysql_query($sql); }
$DatumLetztePeriode[monat] += $periode[monat]; // Monate $DatumLetztePeriode[tag] += $periode[tag]; // Tage $DatumLetztePeriode = KonvertiereDatum($DatumLetztePeriode); // Daten anzeigen und Rückgabewert speichern, ob die 1te Rechnung aktuell (Wenn 1te Rechnung aktuell, ist die ganze Zeile aktuell!) $bAktuell = ZeigeDaten($zeiles, $DatumLetztePeriode, 1); // 2) Datum für die 1te Mahnung anzeigen $DatumLetztePeriode[tag] += $zeiles["Frist"]; // Zahlungsdatum für 1te Mahnung $DatumLetztePeriode = KonvertiereDatum($DatumLetztePeriode); ZeigeDaten($zeiles, $DatumLetztePeriode, 2); // 3) Datum für die 2te Mahnung anzeigen $DatumLetztePeriode[tag] += 10; // Zahlungsfrist für 2te Mahnung ist immer 10 Tage nach erster Mahnung $DatumLetztePeriode = KonvertiereDatum($DatumLetztePeriode); ZeigeDaten($zeiles, $DatumLetztePeriode, 3); // HTML // Button für Notiz echo "<input type ='hidden' name='counter' value='" . $zeiles["Counter"] . "'>"; echo "<td><input type ='submit' value='OK'></td>"; echo "</form>"; // Button für Rechnungsbstätigung (Nur anzeigen, wenn die Zeile aktuell ist) if ($bAktuell) { echo "<td><a href='savemark.php?counter=" . $zeiles["Counter"] . "&action=1'><img src='pics/bezahlt.gif' border='0' title='Als bezahlt markieren'></a></td>"; echo "</form>"; } else { echo "<td><img src='pics/bigspacer.gif'></td>"; } echo "</td><tr>"; }