<?php //Skrypt wykonuje kopie zapasowa plikow na serwerze ftp. //Ustawiamy zmienne oraz laczymy sie z serwerem $host='127.0.0.1'; $login='login'; $haslo='haslo'; $ftp=@ftp_connect($host) or die("Nie udalo sie nawiazac polaczenia z serwerem!");//nawiazalismy polaczenie ewentualnie //wyrzucamy blad o nie nawiazaniu polaczenia //Logujemy sie do serwera //sprawdzamy zawartosc serwera w podanym katalogu $zawartosc=ftp_nlist($ftp, '//12'); //Teraz dodajemy pliki do archiwum $zip=new ZipArchive();//archiwum //Dodajemy kazdy plik z tablicy do archiwum za pomoca petli foreach if($zip->open("kopia.zip",ZipArchive::CREATE))//tworzymy plik zip {//if $zip->open foreach($zawartosc as $plik) { $zip->addFile($plik); } $zip->addFromString("info.txt", "Kopia zostala wykonana dnia $date"); }//end $zip->open
Polaczenie nawiazane, niestety nie dodaje plikow do archiwum i nic sie nie tworzy. Skrypt dobiega do petli foreach poniewaz wyswietla mi nazwy(wraz ze scieska) plikow. Na serwerze znajduje sie jeden katalog "12" i w nim sa wszystkie pliki.