-
upload immagine
Ciao, ho un problema con il caricamento di un'immagine ovvero, la carica correttamente ma se io nel form lascio vuoto il campo immagine cerca di caricarla ugualmente e mi da errore, questo è il codice:
Codice PHP:
if (isset($_FILES['miofile1']))
{
$dir='../../public';
$filename=$id.'immagine1'.$_FILES['miofile1']['name'];
$tipi_consentiti=array('image/gif','image/x-png','image/pjpeg','image/jpeg');
if(!in_array($_FILES['miofile1']['type'],$tipi_consentiti))
{
die('tipo di immagine non consentito 1');
}
if(is_uploaded_file($_FILES["miofile1"]["tmp_name"]))
{
move_uploaded_file($_FILES["miofile1"]["tmp_name"],$dir.'/'.$filename) or die('errore');
$sql='UPDATE occasione SET occ_immagine1="'.$filename.'" WHERE occ_id='.$id;
mysql_query($sql);
//****************DIMENSIOO IL FILE
$nomeimage=$filename;
list($width,$height,$type,$attr)=getimagesize($dir.'/'.$filename);
if($width>$height){$x=$width/250;}
else{$x=$height/250;}
$new_width=$width/$x;
$new_height=$height/$x;
$compression=90;
$destimg=imagecreatetruecolor($new_width,$new_height);
$srcimg=ImageCreateFromJPEG($dir.'/'.$filename);
ImageCopyResized($destimg,$srcimg,0,0,0,0,$new_width,$new_height,ImageSX($srcimg),ImageSY($srcimg));
ImageJPEG($destimg,$dir.'/small'.$filename);
}
}
Come ho già detto funziona tutto, se nel form non carico niente mi stampa l'errore ''tipo di immagine non consentito 1'' eppure avendo if (isset($_FILES['miofile1'])) non dovrebbe nemmeno entrare in quella parte di codice...chi può aiutarmi?grazie
-
Postami anche il form per favore
-
Codice PHP:
if(isset($_FILES['miofile1']) && is_uploaded_file($_FILES['miofile1']['tmp_name'])){
// tutte le operazioni che vuoi
// + il codice per effettuare l'up
}
spero che ti sia utile
-
Codice HTML:
<form name="info" id="info" action="?azione=salva" method="post" enctype="multipart/form-data">
......
<label for="immagine1">Immagine principale</label>
<input type="file" id="miofile1" name="miofile1" />
<label for="immagine2">Immagine 2</label><br />
<input type="file" id="miofile2" name="miofile2" />
<label for="immagine3">Immagine 3</label><br />
<input type="file" id="miofile3" name="miofile3"/>
.....
<input type="submit" />';
</form>
ovviamente del codice che ho postato prima ce ne son altri due uguali per miofile2 e miofile3, se carico tutti va senza problemi. se ne lascio uno dei tre vuotomi carica solo i due che ho riempito come è giusto che sia ma su quelllo vuoto mi da quell'errore, il problema che essendo vuoto non dovrebbe nemmmeno arrivarci a dare quell'errore..
-
ce l'ho fatta ho risolto
if (!empty($_FILES['miofile3']['name']))
così funziona! :) grazie ciao!