GetDBResult
Hallo miteinander
ich hab ne Frage:
was hat es mit dem Befehl GetDBResult auf sich? Ich kann im Internet und in PHP-Büchern nichts darüber finden.
Zum besseren Verständnis: Ich hab ein Script, das aus einer Datenbank einträge löschen soll, die älter als drei monate sind. Das Script sieht folgendermassen aus:
------schnipp--------
#!/usr/bin/php
<? include("../functions.inc.php3");
echo "1.: Lösche abgelaufene Termineinträge...
";
$x=GetDBResult("DELETE FROM veranstaltungen_termine WHERE Datum<'".date("Y")."-".(date("m")-3)."-".(date("j")-1)."';");
echo "2.: Lösche Veranstaltungen ohne Termine...
";
$x=GetDBResult("SELECT VeranstaltungID FROM veranstaltungen ORDER BY VeranstaltungID;");
while ($vID=mysql_fetch_row($x)) {
$y=GetDBResult("SELECT TerminID FROM veranstaltungen_termine WHERE VeranstaltungID=".$vID[0].";");
if (mysql_num_rows($y)==0) $y=GetDBResult("DELETE FROM veranstaltungen WHERE VeranstaltungID=".$vID[0].";");
}
echo "3.: Lösche unabgeschlossene Veranstaltungen...
";M
$x=GetDBResult("DELETE FROM veranstaltungen WHERE _Progress=1;");
echo "4.: Lösche Ansprechpartner ohne Veranstaltungen...
";
$x=GetDBResult("SELECT AdresseID FROM veranstaltungen_adressen ORDER BY AdresseID;");
while ($vID=mysql_fetch_row($x)) {
$y=GetDBResult("SELECT VeranstaltungID FROM veranstaltungen WHERE AdEintragVon=".$vID[0]." OR AdRueckfragen=".$vID[0].";");
if (mysql_num_rows($y)==0) $y=GetDBResult("DELETE FROM veranstaltungen_adressen WHERE AdresseID=".$vID[0].";");
}
echo "5.: Lösche Termine ohne Veranstaltungen...
";
$x=GetDBResult("SELECT TerminID, VeranstaltungID FROM veranstaltungen_termine ORDER BY TerminID;");
while ($vID=mysql_fetch_row($x)) {
$y=GetDBResult("SELECT VeranstaltungID FROM veranstaltungen WHERE VeranstaltungID=".$vID[1].";");
if (mysql_num_rows($y)==0) $y=GetDBResult("DELETE FROM veranstaltungen_termine WHERE TerminID=".$vID[0].";");
}
echo "6.: Überprüfe Bilder...
";
$d=dir("../userfiles");
while($entry=$d->read()) {
$y=GetDBResult("SELECT VeranstaltungID FROM veranstaltungen WHERE Imagefile='".$entry."';");
if (mysql_num_rows($y)==0&&$entry!="."&&$entry!="..") $x=unlink("/home/vh/hochfranken.de/www/veranstaltungen/userfiles/".$entry);
}
$d->close();
echo "Erfolgreich abgeschlossen!
";
?>
--------schnapp---------
Das Script arbeitet allerdings nicht sauber, d. h. es löscht auch 'manchmal' die gesamte datenbank.
Dieses Script stammt nicht aus meiner Feder, sondern von meinem Vorgänger. Ich soll allerdings herausfinden, wie dieses teil arbeitet.
Könnt Ihr mir in irgendeiner Form weiterhelfen und Tipps geben??
Ich wäre euch sehr dankbar.
CU
|