Ciao a tutti,
Utilizzo EasyPHP 1.8 con PHP 4.3 sto realizzando un mini gestionale da tenere in locale...
ho una pagina php che dovrebbe crearmi uno zip di tutti i file presenti in una determinata cartella.
il codice è questo:
Codice PHP:
//Conto quanti file sono presenti della cartella
function contafile($dir) {
$conta=0;
if ($handle=opendir($dir)) {
while (false !== ($file = readdir($handle))) {
if($file!=".." && $file!=".") $conta++ ;
}
return $conta;
}
}
//salvo in una variabile tutti i file presenti nella cartella
function dir_list($directory = FALSE)
{
$dirs= array();
$files = array();
if ($handle = opendir("./" . $directory))
{
while ($file = readdir($handle))
{
if (is_dir("./{$directory}/{$file}"))
{
if ($file != "." & $file != "..") $dirs[] = $file;
}
else
{
if ($file != "." & $file != "..") $files[] = $file;
}
}
}
closedir($handle);
reset($dirs);
sort($dirs);
reset($dirs);
reset($files);
sort($files);
reset($files);
$count = contafile("pdf_fatture/2009/");
$f=1;
$elenco = "";
while(list($key, $value) = each($files))
{
if ($f!=$count) {
$elenco.= "{$value},";
}
else {
$elenco.= "{$value}";
}
$f++;
}
return $elenco;
}
$elenco = dir_list("/pdf_fatture/2009/");
$backupFile="elenco_mese.zip";
//Se esiste già, lo cancello
if (file_exists($backupFile)) @unlink($backupFile);
//Includo la libreria e genero l'oggetto zip
require_once('pclzip-2-6/pclzip.lib.php');
$archive = new PclZip($backupFile);
//Una lista di nomi di files da comprimere
$listOfFilesToCompress=$elenco;
echo $listOfFilesToCompress;
//Aggiungo i files all'archivio
$v_list = $archive->add($listOfFilesToCompress);
if ($v_list == 0) {
die("Error : ".$archive->errorInfo(true));
}
A video mi stampa questo errore:
PCLZIP_ERR_MISSING_FILE (-4) : File '1_aaa.pdf' does not exists
il file c'e' esiste. Mi da questo errore anche se al posto di $elenco, scrivo io a mano il nome del file, sinceramente non so a cosa possa essere dovuto!!!!!!!!!!!!!
Idee??
Grazie mille in anticipo a tutti!!!!