Buone vacanze a tutti, oggi sono qui per chiedervi una mano in uno script per Upload Multiplo di immagini: sto cercando di rinominare tutte le immagini che vengono caricate ma mi appare questo errore: "Fatal error: Call to undefined method upload::mostraform() in /web/htdocs/www.towerchannel.it/home/image-host-test/index.php on line 13 ". Mi potete aiutare a risolverlo ed eventualmente dirmi se ho fatto errori nel codice? Grazie in anticipo 

PHP:
<?php
$dir_upload=(substr($dir_upload,-1) != "/" && $dir_upload != "") ? $dir_upload."/" : $dir_upload;
define("DIR_UPLOAD",$dir_upload);
define("CHMOD_DIR",$chmod_dir);
define("DEBUG",$debug);
define("SOVRASCRIVI_FILE",$sovrascrivi_file);
define("DIM_MASSIMA",$dim_massima*1024);
define("CHECK_TIPI",$check_tipi);
define("TIPI_PERMESSI",implode("|",$tipi_permessi));
class upload {
function upload(){
}
function caricafile(){
//CODICE PER L'UPLOAD CON VARI CONTROLLI
if (count($_FILES) > 0){
for($i=0;$i<$numero_file;$i++){
$numero_file= count($_FILES['file']['tmp_name']);
if($_FILES['file']['size'][$i] == 0){
echo "L'UPLOAD DEL FILE ".$_FILES['file']['name'][$i]." NON E' ANDATO A BUON FINE!
\n";
unset( $_FILES['file']['name'][$i]);
unset( $_FILES['file']['type'][$i]);
unset( $_FILES['file']['size'][$i]);
unset( $_FILES['file']['error'][$i]);
unset( $_FILES['file']['tmp_name'][$i]);
}
$numero_file=count( $_FILES['file']['tmp_name']);
echo "Hai caricato $numero_file file(s)";
echo "
\n";
foreach($_FILES['file']['name'] as $chiave=>$valore){
if (DEBUG == 1){
echo "Nome file: ".$_FILES['file']['name'][$chiave]."
\n";
echo "Tipo file: ".$_FILES['file']['type'][$chiave]."
\n";
echo "Dimensione: ".$_FILES['file']['size'][$chiave]." byte
\n";
echo "Nome temporaneo: ".$_FILES['file']['tmp_name'][$chiave]."
\n";
/* Estensione file */
$ext = end(explode(".", $_FILES['file']['name'][$chiave]));
$numcasuale = rand(1, 99999);
/* Nuovo Nome File */
${'new_name' . $chiave} = $numcasuale . time() . "." . $ext;
}
if (is_uploaded_file( $_FILES['file']['tmp_name'][$chiave])){
if ($_FILES['file']['size'][$chiave] <= DIM_MASSIMA){
if(CHECK_TIPI == 0 || (CHECK_TIPI == 1 && in_array( $_FILES['file']['type'][$chiave], explode("|",TIPI_PERMESSI)))){
if(!is_dir(DIR_UPLOAD) && DIR_UPLOAD != ""){
if( !@mkdir(DIR_UPLOAD,CHMOD_DIR))
die("ERRORE NELLA CREAZIONE DELLA DIRECTORY ".DIR_UPLOAD."");
}
if(!file_exists(DIR_UPLOAD.$_FILES['file']['name'][$chiave]) || SOVRASCRIVI_FILE == 1){
if (@move_uploaded_file( $_FILES['file']['tmp_name'][$chiave], DIR_UPLOAD . ${'new_name' . $chiave}))
echo "FILE {$_FILES['file']['name'][$chiave]} TRASFERITO! Nuovo nome:".${'new_name' . $chiave}."";
else
die("ERRORE NEL TRASFERIMENTO DEL FILE ".$_FILES['file']['name'][$chiave]." Nuovo nome:".${'new_name' . $chiave}."");
} else
echo ("IL FILE ".$_FILES['file']['name'][$chiave]." E' ESISTENTE! Nuovo nome:".${'new_name' . $chiave}."");
} else
echo ("IL TIPO DI FILE ".$_FILES['file']['type'][$chiave]." NON E' CONSENTITO! Nuovo nome:".${'new_name' . $chiave}."");
} else
echo ("LA DIMENSIONE DEL FILE ".$_FILES['file']['type'][$chiave]." NON E' CONSENTITA! Nuovo nome:".${'new_name' . $chiave}."");
} else
die("ERRORE NEL TRASFERIMENTO DEL FILE ".$_FILES['file']['name'][$chiave]." Nuovo nome:".${'new_name' . $chiave}."");
echo "<hr />\n";
}
}
}
function mostraform(){
//FORM PER EFFETTUARE L'UPLOAD
echo "<html>
<head>
<script type=\"text/javascript\" src=\"upload.js\"></script>
</head>
<body>
<form action=\"{$_SERVER['PHP_SELF']}\" method=\"POST\" name=\"modulo\" enctype=\"multipart/form-data\">
<div id=\"attachment\" style=\"display:none\">
<input id=\"file\" name=\"file\" type=\"file\" size=\"55\" />
<a href=\"#\" onclick=\"javascript:removeFile(this.parentNode.parentNode,this.parentNode);\"> Rimuovi</a>
</div>
<div id=\"attachments\">
<a id=\"addupload\" href=\"javascript:addUpload('file')\">Aggiungi file</a>
<input name=\"file[]\" type=\"file\" size=\"55\" />
<span id=\"attachmentmarker\"></span>
</div>
<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"".DIM_MASSIMA."\" />
<input type=\"submit\" value=\"invia\" />
</form>
</body>
</html>\n";
}
}
}
?>