class.upload.php is a powerful and mature PHP class to manage uploaded files, and manipulate images in many ways. The script is available under a GPL license.
I am wanting to run a folder where the class contains several files sent via the form.
The uploaded file is a. Zip file containing multiple photos. Jpg inside.
I can do with that. Zip is sent, deleted and unpacked in the destination.
I'm just not able to put the unzipped files in the class.
See my code:
$diretorio = '/home/ceanorg/public_html/fotos/galeria/teste/';
//$files = array();
// Diretório atual
$d = dir('/home/ceanorg/public_html/fotos/galeria/teste/');
// Percorre todos os arquivos
while(false !== ($file = $d->read())){
// Se o arquivo não é este arquivo, e não começa com "." ou "~", então guarde-o para exibição futura.
if(($file{0} != '.') && ($file{0} != '~') ) {
// Guarda o nome do arquivo e dados completos de uma chamada à stat()
$files[$file] = stat($file);
}
}
// Fecha o diretório
$d->close();
//$files = array('/home/ceanorg/public_html/fotos/galeria/teste/006.jpg', '/home/ceanorg/public_html/fotos/galeria/teste/007.jpg', '/home/ceanorg/public_html/fotos/galeria/teste/008.jpg');
$files[$file] = array();
foreach ($files as $k => $l) {
foreach ($l as $i => $v) {
if (!array_key_exists($i, $files))
$files[$i] = array();
$files[$i][$k] = $v;
}
}
foreach ($files as $file) {
// we instanciate the class for each element of $file
$handle = new Upload($file);
// then we check if the file has been uploaded properly
// in its *temporary* location in the server (often, it is /tmp)
if ($handle->uploaded) {
// now, we start the upload 'process'. That is, to copy the uploaded file
// from its temporary location to the wanted location
// It could be something like $handle->Process('/home/www/my_uploads/');
$handle->image_resize = true;
$handle->image_ratio_y = true;
$handle->image_x = 100;
$handle->Process($diretorio);
// we check if everything went OK
if ($handle->processed) {
// everything was fine !
echo ' file uploaded with success';
echo ' ' . round(filesize($handle->file_dst_pathname)/256)/4 . 'KB';
echo ' link to the file just uploaded: ' . $handle->file_dst_name . '';
} else {
// one error occured
echo ' file not uploaded to the wanted location';
echo ' Error: ' . $handle->error . '';
}
} else {
// if we're here, the upload file failed for some reasons
// i.e. the server didn't receive the file
echo ' file not uploaded on the server';
echo ' Error: ' . $handle->error . '';
}
}
I am wanting to run a folder where the class contains several files sent via the form.
The uploaded file is a. Zip file containing multiple photos. Jpg inside.
I can do with that. Zip is sent, deleted and unpacked in the destination.
I'm just not able to put the unzipped files in the class.
See my code: