Salve a tutti, sono relativamente nuovo del forum, anche se vi seguo da parecchio.
Mi diverto con la programmazione per il web in attesa di poterne fare un lavoro, e sperimento su sperimento incappo a volte in dubbi esistenziali, eccone uno.
Ho la necessità di aprire una nuova finestra all'invio del mio form (multipart/form-data) per cui uso target="_blank", target="_new" oppure associo il target al mio bottone o input con formtarget. Con i dati di testo non ho alcun problema mentre con le immagini ho un problema strano, ossia il php riceve un file con la sua estensione ma non con una grandezza, ossia vuoto.
Questo è il php che elabora l'immagine:
A schermo ottengo questo:
Tipo di file: image/jpeg
Larghezza file:
Altezza file:
Warning: fread(): Length parameter must be greater than 0 in ...
Errore
impossibile leggere il file immagine
Se provo il codice offline con Mamp funziona, online no e chiaramente se il form lo invio alla stessa pagina il tutto funziona correttamente. Non ho idea del perché succeda questo e se ci sia una soluzione.
Mi farebbe piacere ogni idea o soluzioni alternative.
Grazie mille.
Mi diverto con la programmazione per il web in attesa di poterne fare un lavoro, e sperimento su sperimento incappo a volte in dubbi esistenziali, eccone uno.
Ho la necessità di aprire una nuova finestra all'invio del mio form (multipart/form-data) per cui uso target="_blank", target="_new" oppure associo il target al mio bottone o input con formtarget. Con i dati di testo non ho alcun problema mentre con le immagini ho un problema strano, ossia il php riceve un file con la sua estensione ma non con una grandezza, ossia vuoto.
Questo è il php che elabora l'immagine:
PHP:
if (preg_match('/jpeg/i', $_FILES['userFile']['type'])){
$estensione = 'jpeg';}
else if (preg_match('/png/i', $_FILES['userFile']['type'])){
$estensione = 'png';}
else if (preg_match('/gif/i', $_FILES['userFile']['type'])){
$estensione = 'gif';}
else die ('<h1>Errore!!!</h1><br/><h3>Estensione ('.$type.') non supportata</h3>');
list($width, $height) = getimagesize ($_FILES['userFile']['tmp_name']);
echo 'Tipo di file: '.$_FILES['userFile']['type'].'<br>';
echo 'Larghezza file: '.$width.'<br>';
echo 'Altezza file: '.$height.'<br>';
$handle = fopen ($_FILES['userFile']['tmp_name'], 'r+') or die ('<h1>Errore</h1><br/><h3>impossibile aprire il file immagine prodotto</h3>');
$image = fread ($handle, filesize($_FILES['userFile']['tmp_name'])) or die('<h1>Errore</h1><br/><h3>impossibile leggere il file immagine</h3>');
fclose ($handle);
A schermo ottengo questo:
Tipo di file: image/jpeg
Larghezza file:
Altezza file:
Warning: fread(): Length parameter must be greater than 0 in ...
Errore
impossibile leggere il file immagine
Se provo il codice offline con Mamp funziona, online no e chiaramente se il form lo invio alla stessa pagina il tutto funziona correttamente. Non ho idea del perché succeda questo e se ci sia una soluzione.
Mi farebbe piacere ogni idea o soluzioni alternative.
Grazie mille.
Ultima modifica di un moderatore: