ho un problema con l'upload di + immagini in contemporanea. non riesco a farle caricare xò il ciclo mi sembra corretto. mi dice che alla lina 4 del upload_elenco_foto.inc.php c'è
Fatal error: Unsupported operand types
nn so cm uscirci, le ho provate tutte
Codice PHP:
$percorso_foto = "$_SERVER[DOCUMENT_ROOT]immagini/img"; //cartella foto delle immagini che carico
foreach($_FILES["upfile"]["name"] as $idfoto=>$upfile)
{
$nfoto = $idfoto+1;
if($_FILES["upfile"]["name"]==!"") // c'è la fotografia
{
include_once("upload_elenco_foto.inc.php");
$e = "UPDATE prova SET foto_". $nfoto ."='$fotoallegata' WHERE id='$inserimento'";
mysql_query($e,$connessione);
}
a questo punto upload_elenco_foto.inc.php è fatto così
Codice PHP:
$grandezza_file = $_FILES["upfile"]["size"];
$estensione_file = $_FILES["upfile"]["type"];
$grandezza = ($grandezza_file/1024);
if(($grandezza_file > $grandezza_max_foto) || (!in_array($_FILES["upfile"]["type"],$estensioniconsentite_foto)))
{
if(!in_array($_FILES["upfile"]["type"],$estensioniconsentite_foto))
{
echo"[*]L'immagine numero $nfoto non può essere caricata perché di un tipo non permesso. Sono ammesse solamente fotografie di tipo <span class=\"grassetto\">$stampo_estensioniconsentitefoto</span>.";
} // tipo non consentito
if($grandezza_file > $grandezza_max_foto)
{
echo"[*]L'immagine numero $nfoto non può essere caricata perché troppo grande. La dimensione massima consentita è $stampo_dimensionefoto Kb e il file caricato pesa ".round($grandezza,2)." Kb.";
} //dimensione
}
else
{
if(in_array($_FILES["upfile"]["type"],$estensioniconsentite_foto_jpg))
{
$ext = "jpg";
}
if(in_array($_FILES["upfile"]["type"],$estensioniconsentite_foto_gif))
{
$ext = "gif";
}
$nomefile = Random();
$upfile = "" .$nomefile .".".$ext."";
is_uploaded_file($_FILES["upfile"]["tmp_name"]);
move_uploaded_file($_FILES["upfile"]["tmp_name"], "$percorso_foto/fullsize/$upfile"); //salvo la foto caricata nel percorso
copy("$percorso_foto/fullsize/$upfile","$percorso_foto/thumbnails/$upfile");
copy("$percorso_foto/fullsize/$upfile","$percorso_foto/halfsize/$upfile");
if($ext=="gif")
{ $fullsize=imagecreatefromgif("$percorso_foto/fullsize/$upfile"); // prendo l'immagine da dove l'ho salvata
}
if($ext=="jpg")
{ $fullsize=imagecreatefromjpeg("$percorso_foto/fullsize/$upfile"); // prendo l'immagine da dove l'ho salvata
}
$fullsize_height=imagesy($fullsize);
$fullsize_width=imagesx($fullsize);
//miniatura
$thumb_width=150; //gli dico la larghezza
$thumb_height=floor($fullsize_height/($fullsize_width/$thumb_width)); // se voglio tenere le proporzioni
$thumb=imagecreatetruecolor($thumb_width,$thumb_height);
imagecopyresampled($thumb,$fullsize,0,0,0,0,$thumb_width,$thumb_height,$fullsize_width,$fullsize_height);
//mezza misura
$hlf_width=300; // gli dico la larghezza
$hlf_height=floor($fullsize_height/($fullsize_width/$hlf_width)); // se voglio tenere le proporzioni
$hlf=imagecreatetruecolor($hlf_width,$hlf_height);
imagecopyresampled($hlf,$fullsize,0,0,0,0,$hlf_width,$hlf_height,$fullsize_width,$fullsize_height);
if($ext=="gif")
{ imagegif($thumb,"$percorso_foto/thumbnails/$upfile");
imagejpeg($hlf,"$percorso_foto/halfsize/$upfile"); }
if($ext=="jpg")
{ imagejpeg($thumb,"$percorso_foto/thumbnails/$upfile");
imagejpeg($hlf,"$percorso_foto/halfsize/$upfile"); }
imagedestroy($fullsize);
imagedestroy($thumb);
imagedestroy($hlf);
$fotoallegata = ereg_replace("".$_SERVER['DOCUMENT_ROOT']."","","$percorso_foto/halfsize/$upfile");
echo"[*]L'immagine numero $nfoto è stata correttamente caricata.";
}