pHyro
bla
Hiho,
du könntest per readdir() die Datein aus deinem Bilderverzeichnis auslesen und in einer while-Schleife dann oben genannten SQL-Code benutzen. Dann prüfst du ob nach der Abfrage mysql_num_rows() 0 ergibt. Falls Ja, löschst du das Bild per unlink(), falls Nein, lässt du es einfach da
ACHTUNG: Wenn sich noch andere Dateien in dem Ordner befinden und nicht in einem Beitrag verlinkt sind würden die auch gelöscht werden! Das könnte man verhindern indem man anstatt is_file() den MIME-Typ prüft.
Bei einigen Tausend Datein, wie du sagst, kann das schon ein Weilchen dauern
Lg
du könntest per readdir() die Datein aus deinem Bilderverzeichnis auslesen und in einer while-Schleife dann oben genannten SQL-Code benutzen. Dann prüfst du ob nach der Abfrage mysql_num_rows() 0 ergibt. Falls Ja, löschst du das Bild per unlink(), falls Nein, lässt du es einfach da
PHP:
mysql_connect("localhost", "name", "passwort"); // MySQL-Verbindung herstellen
mysql_select_db("datenbank");
$pfad = opendir("pics"); // Bild-Verzeichnis öffnen
chdir("pics"); // ins Bild-Verzeichnis wechseln
while($bild = readdir($pfad)) { // Datein auslesen
if(is_file($bild)) { // . und .. ausschließen
$query = mysql_query("SELECT * FROM tabelle WHERE text LIKE '%http://meineurl.de/pics/$bild%'"); // MySQL-Abfrage
if(mysql_num_rows($query) == 0) { // Bild im Beitrag vorhanden?
unlink($bild); // Wenn Nein, löschen
}
}
}
closedir($pfad);
mysql_close();
Bei einigen Tausend Datein, wie du sagst, kann das schon ein Weilchen dauern
Lg
Zuletzt bearbeitet: