Ciao a tutti,
ho un problema con la modifica delle immagini.
Ho una pagina di inserimento degli annunci con informazioni testuali, con una miniatura immagine e un max di sei immagini.
Per il salvataggio delle immagini non uso un database, salvo tutto direttamente sul disco in due cartelle "galleria" "miniatura".
Per ogni annuncio prelevo l'id e creo due cartelle con il nome dell'id stesso all'interno di "galleria" e "miniatura".
Per la modifica del testo non ci sono problemi mentre per quella delle immagini ho pensato di fare così :
Prelevo l'id dell'annuncio, se esiste la cartella la cancello. Subito dopo creo nuovamente la cartella e applico nuovamente lo script per il ridimensionamento e salvataggio dell'immagine.
questo procedimento non da nessun errore. Modifica l'annuncio testuale, cancella la cartella se esiste e ne crea una nuova. L'unico inconveniente ed il più importante è che non mi salva le immagini nella cartella.
Di seguito allego il mio script
//Script di connessione
<?php
// Prelevo l'id dell'immagine
$id=$_POST['id'];
// Script di inserimento testuale
$categoria=$_POST['categoria'];
$casa_automobilistica=$_POST['casa_automobilistica'];
$modello=$_POST['modello'];
$prezzo_listino=$_POST['prezzo_listino'];
$prezzo_concessionaria=$_POST['prezzo_concessionaria'];
$alimentazione=$_POST['alimentazione'];
$immatricolazione=$_POST['immatricolazione'];
$colore=$_POST['colore'];
$porte=$_POST['porte'];
$km=$_POST['km'];
$cilindrata=$_POST['cilindrata'];
$descrizione=$_POST['descrizione'];
$query = "UPDATE autoveicoli SET
categoria = '$categoria',
casa_automobilistica = '$casa_automobilistica',
modello = '$modello',
prezzo_listino = $prezzo_listino,
prezzo_concessionaria = $prezzo_concessionaria,
alimentazione = '$alimentazione',
immatricolazione = '$immatricolazione',
colore = '$colore',
porte = '$porte',
km = '$km',
cilindrata = '$cilindrata',
descrizione = '$descrizione'
WHERE id_autoveicoli = $id";
//Prelevo il percorso
$minia = "galleria" . "/" . "$id";
// Cancello la cartella
function rrmdir($dir) {
if (is_dir($dir)) {
$objects = scandir($dir);
foreach ($objects as $object) {
if ($object != "." && $object != "..") {
if (filetype($dir."/".$object) == "dir") rrmdir($dir."/".$object); else unlink($dir."/".$object);
}
}
reset($objects);
rmdir($dir);
}
}
if(is_dir($minia))
{
rrmdir($minia);
}
//Creo la cartella
mkdir("galleria" . "/" . "$id");
//Modifico ed inserisco le immagini
for($i=0;$i<6;$i++)
{
if(isset($_FILES['foto'.$i]))
{
$num=$i+1;
$file=$_FILES['foto'.$i];
$nome= $file['name'];
$path= "grandi" . "/" . "$nome";
//echo $nome;
$vett=explode("/",$file['type']);
$tipo=$vett[0];
if($tipo!="image"){}
else
{
move_uploaded_file($file['tmp_name'],$path) or die("errore upload, controllare percorso");
print"immagine $num caricata con successo;
";
$dim = 800;
list($width, $height, $type, $attr) = getimagesize($path);
// Creo la versione 150*n dell'immagine (thumbnail)
$numero = ($dim/$width);
$thumb = imagecreatetruecolor($width*$numero, $height*$numero);
$source = imagecreatefromjpeg($path);
imagecopyresampled($thumb, $source, 0, 0, 0, 0, $width*$numero, $height*$numero, $width, $height);
// Salvo l'immagine ridimensionata
imagejpeg($thumb, $minia . "/" .$nome, 65); // 65 è la qualità dell'immagine, da 0 a 100
if(file_exists($minia . "/" .$nome)) {
echo "
Immagine ridimensionata e salvata
";
} else {
echo "
ATTENZIONE!! MINIATURA NON CREATA!!!
";
}
}//fine caricamento
}
}
//PER LE MINIATURE APPLICO LO STESSO PROCEDIMENTO
?>
Qualcuno sa dirmi gentilemte dove sbaglio?