Ciao!
Vorrei uplodare e trasferire un immagine dentro una cartella sul server, controllando prima che dimensioni, formato e nome siano corrette.
Non riesco però a far funzionare il controllo relativo al formato file, in quanto mi dice sempre che il formato non è mai jpg/png(anche se ovviamente le immagini che vado a caricare sono jpg). Questo il codice:
<?php
$file_temp=($_FILES['userfile']['tmp_name']);
do {
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
if ($_FILES['userfile']['size']>200000) {
$msg="<p>Il file non deve superare i 400Kb";
break;}
list($type)=getimagesize($_FILES['userfile']['tmp_name']);
if (($type!=2) || ($type!=3)) {
$msg="formato file diverso da .JPG or .PNG";
break;}
if (file_exists('foto/'.$_FILES['userfile']['name'])) {
$msg="nome foto già esistente";
break;}
}
} while(false);
echo $msg;
$upload_dir = $_SERVER["DOCUMENT_ROOT"] . "/foto";
if (move_uploaded_file ($_FILES['userfile']['tmp_name'], $upload_dir)){
echo"file trasferito con successo";
}
?>
Grazie!
Vorrei uplodare e trasferire un immagine dentro una cartella sul server, controllando prima che dimensioni, formato e nome siano corrette.
Non riesco però a far funzionare il controllo relativo al formato file, in quanto mi dice sempre che il formato non è mai jpg/png(anche se ovviamente le immagini che vado a caricare sono jpg). Questo il codice:
<?php
$file_temp=($_FILES['userfile']['tmp_name']);
do {
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
if ($_FILES['userfile']['size']>200000) {
$msg="<p>Il file non deve superare i 400Kb";
break;}
list($type)=getimagesize($_FILES['userfile']['tmp_name']);
if (($type!=2) || ($type!=3)) {
$msg="formato file diverso da .JPG or .PNG";
break;}
if (file_exists('foto/'.$_FILES['userfile']['name'])) {
$msg="nome foto già esistente";
break;}
}
} while(false);
echo $msg;
$upload_dir = $_SERVER["DOCUMENT_ROOT"] . "/foto";
if (move_uploaded_file ($_FILES['userfile']['tmp_name'], $upload_dir)){
echo"file trasferito con successo";
}
?>
Grazie!