Salve a tutti, ho un problema con questa procedura, vorrei fare il resize delle immagini per facilitare le persone che gestiranno il sito ed evitargli di farsi il resize da soli con photoshop.
Solo che mi da un errore del genere: Warning: imagejpeg() [function.imagejpeg]: Unable to open '../public/eventi/' for writing: Is a directory in
i permessi per quella cartella sono 777 ???
ecco il codice, scusate se è incasinato ma sto imparando solo da qualche settimana e sono un casinaro di natura:
Codice PHP:
if ($immagine == ""){
$immagine = "" ;
} else {
do {
if (is_uploaded_file($_FILES['immagine']['tmp_name'])) {
// Controllo che il file non superi i 18 KB
// if ($_FILES['immagine']['size'] > 258432) {
// $msg = "
Il file non deve superare i 250 KB!!</p>";
// break;
// }
// Ottengo le informazioni sull'immagine
list($width, $height, $type, $attr) = getimagesize($_FILES['immagine']['tmp_name']);
// Controllo che le dimensioni (in pixel) non superino 350x450
// if (($width > 380) || ($height > 450)) {
// $msg = "
Dimensioni non corrette!!</p>";
// break;
// }
// Controllo che il file sia in uno dei formati GIF, JPG o PNG
if (($type!=1) && ($type!=2) && ($type!=3)) {
$msg = "
Formato non corretto!!</p>";
break;
}
// Verifico che sul sul server non esista già un file con lo stesso nome
if (file_exists('../public/eventi/'.$_FILES['immagine']['name'])) {
$msg = "
File già esistente sul server. Rinominarlo e riprovare.</p>";
break;
}
//$directory="../public/eventi/";
//$path_to_img=$_FILES['immagine']['tmp_name'];
$final_width=200;
$final_height=ceil((200*$height)/$width);
$thumb=imagecreatetruecolor($final_width,$final_height);
$source=imagecreatefromjpeg($_FILES['immagine']['name']);
echo "$thumb - $width - $height
$source
";
imagecopyresized($thumb,$source,0,0,0,0,$final_width,$final_height,$width, $height);
imagejpeg($thumb,('../public/eventi/'),90);
//echo "$final_width
$final_height
$src_img";
// Sposto il file nella cartella da me desiderata
//imagejpeg($dst_img,$directory,90);
//imagecopyresized($thumb, $source, 0, 0, 0, 0, 40, 30, $width, $height);
// if (!move_uploaded_file($_FILES['imgevent']['tmp_name'], '../public/eventi/'.$_FILES['immagine']['name'])) {
// $msg = "
Errore nel caricamento dell'immagine!!</p>";
// break;
//}
//move_uploaded_file($dst_img, '../public/eventi/'.$_FILES['immagine']['name']);
}
} while (false);
echo $msg;
}
Grazie a tutti dell'aiuto