Codice PHP:
//Verifica i dati della form
$AreaFoto = trim($_POST['AreaFoto']);
$Alt = trim($_POST['Alt']);
//Inserisce la nuova foto
$query = "INSERT INTO Foto (Alt,Area) VALUES ('$Alt', '$AreaFoto')";
$result = mysql_query($query, $db);
$ultimo_id = mysql_insert_id($db);
//Carica la foto
if(!isset($_FILES)) $_FILES = $HTTP_POST_FILES;
if(!isset($_SERVER)) $_SERVER = $HTTP_SERVER_VARS;
$Foto_name = $_FILES["Foto"]["name"];
$upload_dir = "imgaree";
//Vede l'estensione
$ext = array_pop(explode('.',$Foto_name));
//Assegna un nuovo nome utilizzando l'id
$new_name = $ultimo_id.".".$ext;
$file_name = ($new_name) ? $new_name : $_FILES["Foto"]["name"];
//Controlla l'estensione
if ($ext=="jpg" OR $ext=="gif" OR $ext=="bmp" OR $ext=="png" OR $ext=="JPG" OR $ext=="GIF" OR $ext=="BMP" OR $ext=="PNG") {
//Controlla la possibilità di caricare l'immagine
if(trim($_FILES["Foto"]["name"])!="") {
if(@is_uploaded_file($_FILES["Foto"]["tmp_name"])) {
@move_uploaded_file($_FILES["Foto"]["tmp_name"], "$upload_dir/$file_name")
or die("");
}
//Agiorna la tabella
if ($ext!="") {
$query = "UPDATE Foto SET Foto='$new_name' WHERE ID = '$ultimo_id'";
$result = mysql_query($query, $db);
}
}
}
Di solito questo codice va liscio, ora su un hosting Aruba Linux non ne vuole sapere di uplodare, la cartella ha i permessi 777. Qualcuno ha soluzioni?