Un amico mi ha fatto notare una cosa, abbastanza particolare... e rognosa a cui, non sono ancora riuscito a trovare una soluzione.
Il problema
Ho installato nel suo sito un piccolo script che permette da browser di caricare nel suo spazio web un immagine e di impostarla come logo. Il problema è che con Firefox funziona benissimo, infatti riesco a caricare sia Gif che Jpeg/Jpg... con I.E. no, si riescono a caricare solo file GIF.
Codice
Codice PHP:
<?php
include("config.inc.php");
// se è stato inviato il file...
if(isset($_POST['invia']))
{
// se ci sono stati problemi nell'upload del file
if(!isset($_FILES['file_inviato']) OR $_FILES['file_inviato']['error'] != UPLOAD_ERR_OK)
mostra_form("errore nell'invio del file. Riprova");
// connessione e selezione del database
mysql_connect($db_host, $db_user, $db_password)
or die('Connessione non riuscita: ' . mysql_error());
if(!mysql_select_db($db_name))
die('Selezione database fallita!');
// recupero alcune informazioni sul file inviato
$nome_file_temporaneo = $_FILES['file_inviato']['tmp_name'];
$nome_file_vero = $_FILES['file_inviato']['name'];
$tipo_file = $_FILES['file_inviato']['type'];
// leggo il contenuto del file
$dati_file = file_get_contents($nome_file_temporaneo);
if(($tipo_file == 'image/gif') or ($tipo_file == 'image/jpeg') or ($tipo_file == 'image/jpg')){
// preparo il contenuto del file per la query
$dati_file = addslashes($dati_file);
// query per inserire il file nel DB
$query = "UPDATE tabella_files SET
id_file = '1',
nome_file = '$nome_file_vero',
tipo_file = '$tipo_file',
dati_file = '$dati_file'";
mysql_query($query)
OR die('Query non valida: ' . mysql_error());
// mostro nuovamente il form ed un messaggio di successo
mostra_form("Memorizzazione del file <b>$nome_file_vero</b> nel database eseguita correttamente.");
} //chiudo controllo sul tipo di file inviato
else { echo "Tipo file non supportato"; }
}
else
{
mostra_form();
}
/**
* Mostra il form per l'upload del file
*
*/
function mostra_form($messaggio = '')
{
?><html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Carica file nel database</title>
</head>
<body>
<p align="center"><?php echo $messaggio?> <br> Seleziona un file da memorizzare nel database: </p>
<form name="form1" enctype="multipart/form-data" method="post" action="">
<p align="center">
<input type="file" name="file_inviato" size="20">
</p>
<p align="center">
<input type="submit" name="invia" value="Invia file">
</p>
</form>
</body>
</html>
<?php
exit();
}
?>
Qualcono sa dirmi da cosa puà dipendere?