1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
| #!c:/Perl/bin/perl -w
use CGI ;
#--------------------------------------------------------#
#------------------ Get the excel file -----------------#
#--------------------------------------------------------#
# Constantes
$NumFile = 1;
$Monupload = "";
# Répertoire d'arrivée des fichiers
$basedir = "htdocs";
# Autorisation des types de fichiers
$everythings = "no";
# Extension acceptée
$accepte = ".xls";
# Page de redirect
$namefile = "send_ok.html";
# Nombre de boucle
$Nbboucle = 3;
while ($NumFile != $Nbboucle)
{
# Récupération des données
$File[$NumFile] = $req->param("FILE" . $NumFile);
my $filenotgood = "";
if ($File[$NumFile] ne "")
{
my $FileName = $File[$NumFile];
$FileName =~ s!^.*(\\|\/)!!;
# Vérification de la validité de l'extension
@thatisgood=split(/\+/, $accepte);
# Vérification du fichier si toutes les extensions ne sont pas acceptés.
if ($everythings ne "yes")
{
for($moni=0;scalar(@thatisgood) > $moni;$moni++)
{
if ((index(lc($FileName), $thatisgood[$moni]) != -1) || ($filenotgood eq "no"))
{
$filenotgood = "no";
if (index(lc($FileName), $thatisgood[$moni]) != -1)
{
$FileSave = "upload.xls"; # 7
}
}
else
{
$filenotgood = "yes";
}
}
}
# Récupération du fichier
if ($filenotgood ne "yes")
{
open (OUTFILE, ">$basedir/$FileSave");
while (my $bytesread = read($File[$NumFile], my $buf, 1024))
{
print OUTFILE $buf;
}
close (OUTFILE);
}
}
$NumFile++;
}
print "Content-type: text/html\n\n";
print "<HTML><HEAD><META HTTP-EQUIV=\"REFRESH\" CONTENT=\"0; URL=" . $namefile . "\"></HEAD><BODY></BODY></HTML>";
exit; |