Ciao a tutti sto cercando di fare un form di caricamento delle immagini sul server....In teoria dovrebbe funzionare tutto ma in pratica mi crea un file della dimensione giusta denominato correttamente ma che non puo essere interpretato come immagine...se tento di aprirlo con qualsiasi cosa crasha il programma (tipicamente si chiude il programma home di SUSE).
POSTO IL CODICE HTML:
<input type="hidden" name="MAX_FILE_SIZE" value="4000000" />
<input type="file" name="files" size="40" />
<input type="submit" name="submit" value="Invia Immagine">
chiaramente il tutto in un <form> che fa quello che deve fare
POSTO IL CODICE PHP
if($_POST['submit']=="Invia Immagine"){
$result = false;
$files = '';
$size = 0;
$type = '';
$name = '';
$max_size = 4000000;
$i=0;
$stringa="files".$i;
while($_FILES[$stringa]['tmp_name']==""){
$i=$i+1;
$stringa="files".$i;
}
$result = @is_uploaded_file($_FILES[$stringa]['tmp_name']);
if (!$result){
echo "ERRORE FILE NON CARICATO";
}else{
$size = $_FILES[$stringa]['size'];
if ($size > $max_size){
echo "ERRORE DIMENSIONE DEL FILE TROPPO GRANDE >4Mb";
}
$type = $_FILES[$stringa]['type'];
$name = $_FILES[$stringa]['name'];
$files = @file_get_contents($_FILES[$stringa]['tmp_name']);
$files = addslashes ($files);
$names=$mosConfig_absolute_path."/components/com_gsnprogetti/pictures/".$name;
$file_image=fopen($names,"w");
fwrite($file_image,$files);
fclose($file_image);
}}}
(con tutte le parentesi del caso etc...)

Rispondi quotando