FTP Programm schreiben um Dateien zu löschen vom Server

son gohan

Erfahrenes Mitglied
Hallo Forum,

ich habe auf meinem Webserver eine menge Dateien.

Ab und zu muss ich ca. 300 Dateien löschen. Die Dateien haben aber alle unterschiedliche Namen und wenn ich die jeweils einzeln anklicken muss um die mit meinem FTP Programm zu löschen, dann dauert das meist sehr lange.

Deshalb würde ich mir gerne ein kleines FTP Programm mit PHP schreiben, wo ich eine Liste an Dateinamen übergeben kann, damit die dann gelöscht werden.

Weis jemand von euch ob sowas möglich ist und wenn ja wie?
 
Ein entschlossener Schritt...
Gefällt mir.

Ich kann dir ein paar Hinweise geben.
Zuerst würde ich mir unter http://www.selfphp.net/selfphp/funktionsuebersicht/verzeichnis_funktionen.html
einmal die Verzeichnis Funktionen von PHP ansehen.
Damit kannst du schonmal sämtliche Verzeichnisse ansehen.
Dann benötigst du Datei Funktionen die du hier findest http://www.selfphp.net/selfphp/funktionsuebersicht/dateisystem_funktionen.html.
Grundlegene Funktionen findest du hier http://www.selfphp.net/selfphp/funktionsuebersicht/.

Sieh halt, das du eine art Schleife erstellst, welche sämtliche Directories durchgeht und auch direkt in einer Variablen ablegt. Dann erstellst du ein Script, welches die Verzeichnisse auf Inhalte überprüft, auch anhand einer Schleife.
Das Resultst solltest du in Form eines Formulars wiedergeben, mit Checkboxen vor Dateien und Verzeichnissen.

So als kleiner Denkanschubser...

Du kannst natürlich auch einmal folgendes machen,
du gehst auf http://www.php-free.de/Datei-Management/ um grundlegene Scripts zu DateiManagements zu erhalten. Hier http://www.php-free.de/Datei-Management/Datei-Download/ findest du schon fertige Scripts die dir eigentlich am besten helfen müssten.
Allerdings ist dann nicht alles selber gemacht, wenn du damit leben kannst.
 
Hallo,

eine ganze Menge toller Tipps hast du mir da gegeben, vielen Dank.

Das muss ich mir mal alles ansehen.

Da ich aber bis jetzt noch nie was mit FTP und PHP gemacht habe und schon viele neue Probleme auf mich zukommen sehe, wäre ich auch bereit jemand so ein fertiges Script ab zu kaufen, wenn einer will kann er mir ne PN schicken.
 
Vielleicht hilft dir ja auch die FTP-Klasse von Dennis Wronka weiter.

Somit bist du auch nicht auf eine installierte Erweiterung auf dem Server angewiesen.

greetz
daddz
 
Kann dir nu empfehlen es selber zu machen. ;) Musste mich auch dahinter setzen und kann nur sagen, dass es seine Vorteile hat sich da rein zu arbeiten. Denn damit wirst du in Zukunft keine Probleme mehr haben, wenn safe_mode = on auftaucht. ;)

Und vom Prinzip her ist es doch ganz einfach. Baust dir einfach einen Parser, was wirklich schnell geht. Wenn du eine Liste hättest, wo in jeder Zeile ein Dateiname steht, liest du die Liste einfach anhand file() aus, sodass jede Datei als ein Element eines Arrays fungieren würde. Dann zählst die Einträge des Arrays und lässt dementsprechend eine Schlefe durchlaufen. Für jeden Durchlauf löscht eine Datei. So könnte es kurzgefasst aussehen:

PHP:
$datein=file("pfad_zur_liste.txt");

$ftp_id=ftp_connect("ftp.domain.de");
$ftp_login=ftp_login($ftp_id, "username", "passwort");

for ($i = 0 ; $i < count($datein) ; $i++)
{
     if (fpt_delete($ftp_id, $datein[$i]))
     {
          $deleted[]=$datein[$i];
     }
     else
     {
          $undeleted[]=$datein[$i];
     }
}

echo "<b>Folgende Datein wurden gel&ouml;scht:</b><br>";
echo implode("<br>", $deleted);

echo "<b>Folgende Datein wurden nicht gel&ouml;scht:</b><br>";
echo implode("<br>", $undeleted);

ftp_close();
 
Zurück