PDA

View Full Version : form upload limite dimensione


kevindavidmitnick
18-06-2006, 00:34
In pratica ho questo file upload.php

<body bgcolor="black" text="white" link="blue" vlink="#FF9900" alink="red"><p align="center><font face="Verdana" size="2">

<?php
//Funzioni utili...
//Funzione Replace " " in "_" (evitiamo possibili errori)
function fSpace($string)
{
return str_replace(" ", "_", $string);
}

programmazione

//Funzione per ricavare l' estensione di un File
function fExt($string)
{
//Controllo il file
$trova_punto = explode(".", $string);
$estensione = $trova_punto[count($trova_punto) - 1];
$estensione = strtolower($estensione);

// Se non ci sono estensioni
if (isset($trova_punto[1]) == FALSE)
{
return '';
}
//Ritorno il valore dell' estensione
return $estensione;
}
//Fine funzioni. Il codice sopra riportato, contiene due funzioni, rispettivamente, la prima e' necessaria a sostituire lo spazio con un Underscore ("_"), questo serve a evitare che il server restiuisca eventuali errori durante l' upload di files nel caso in cui il nome presentasse degli spazi. La seconda, invece, e' utile a ricavare l' estensione del file.


//Effettuo l' upload dell' immagine...
$uploaddir = 'avatar/';
$uploadfile = fspace($_FILES['txt_file']['name']);
$upload = $uploaddir . $uploadfile;

//Controllo che sia stato specificato un file
if(!strlen($uploadfile) == 0)
{
//Controllo l' estensione del file
if((fExt($uploadfile) == 'gif') or (fExt($uploadfile) == 'GIF') or (fExt($uploadfile) == 'jpg') or (fExt($uploadfile) == 'JPG'))
{
//Creo la cartella
mkdir($uploaddir);

//Eseguo l' upload
if(move_uploaded_file($_FILES['txt_file']['tmp_name'], $upload))
{
//Upload eseguito con successo
echo "<font face='Verdana' size='2'>Upload di ". $uploadfile ." eseguito correttamente";
//echo "<p><img src='". $upload ."'>";

//modifica
include "./db/config.dat";

if(@$upload != "") {
$set_width = $avatar_width;
$set_height = $avatar_height;
//test if file exists
if (@fclose(@fopen("$upload", "r")))
{
list($width, $height, $type, $attr) = getimagesize("$upload");
if($width > $height)
{
$set_height = round(($avatar_width * $height) / $width);
}
else if($width < $height)
{
$set_width = round(($avatar_height * $width) / $height);
}
else if($width <= $avatar_width && $height <= $avatar_height)
{
$set_width = $width;
$set_height = $height;
}
}//end test
echo "<br>
<p align='center'>Ecco come apparirą il tuo Avatar:<br>
<br><br><img src='$upload' width=\"$set_width\" height=\"$set_height\" border=\"1\ style=\"border-width:1; border-color:white; border-style:solid;\"></p>
Copia questo indirizzo nella casella apposita del tuo profilo:<br>
<p align='center'><font color='red' size='4'>". $upload ."</font></p>

";
}
else
{
echo "</tr>";
}
//fine modifica
echo " <p><a href='mailto:mindfieldd@gmail.com?subject=problemi con avatar'>Clicca qui indicando il tipo di problema se l'upload fallisce o se hai altri problemi</a></p>";
echo " <p align='center'><a href='form.php'>Cambia Avatar</a></p> ";
}else{
//Upload fallito
echo "Upload fallito !";
echo " <p><a href='mailto:mindfieldd@gmail.com?subject=problemi con avatar'>Clicca qui indicando il tipo di problema se l'upload fallisce o se hai altri problemi</a></p>";
echo " <p align='center'><a href='form.php'>Riprova</a></p> ";

}
}else{
//Messaggio di errore
echo "File non valido";
echo " <p><a href='mailto:mindfieldd@gmail.com?subject=problemi con avatar'>Clicca qui indicando il tipo di problema se l'upload fallisce o se hai altri problemi</a></p>";
echo " <p align='center'><a href='form.php'>Riprova</a></p> ";
}
}else{
//Messaggio di errore
echo "Specificare un file !";
echo " <p><a href='mailto:mindfieldd@gmail.com?subject=problemi con avatar'>Clicca qui indicando il tipo di problema se l'upload fallisce o se hai altri problemi</a></p>";
echo " <p align='center'><a href='form.php'>Riprova</a></p> ";

}
//} //aggiunto
//} //aggiunto

//return $upload;




/*
include "./db/config.dat";

if(@$upload != "") {
$set_width = $avatar_width;
$set_height = $avatar_height;
//test if file exists
if (@fclose(@fopen("$upload", "r")))
{
list($width, $height, $type, $attr) = getimagesize("$upload");
if($width > $height)
{
$set_height = round(($avatar_width * $height) / $width);
}
else if($width < $height)
{
$set_width = round(($avatar_height * $width) / $height);
}
else if($width <= $avatar_width && $height <= $avatar_height)
{
$set_width = $width;
$set_height = $height;
}
}//end test
echo "<br><img src='$upload' width=\"$set_width\" height=\"$set_height\">
<br>";
}
else
{
echo "</tr>";
} */
?>
</p></font></body>


seguito chiaramente dal form



che devo modificare per far si che abbia il controllo della dimensione massima di un file? :D