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 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154
| <?php
function Initialize($gauche,$haut,$largeur,$hauteur,$bord_col,$txt_col,$bg_col)
{
$tailletxt=$hauteur-10;
echo '<div id="pourcentage" style="position:absolute;top:'.$haut;
echo ';left:'.$gauche;
echo ';width:'.$largeur.'px';
echo ';height:'.$hauteur.'px;border:1px solid '.$bord_col.';font-family:Tahoma;font-weight:bold';
echo ';font-size:'.$tailletxt.'px;color:'.$txt_col.';z-index:1;text-align:center;">0%</div>';
echo '<div id="progrbar" style="position:absolute;top:'.($haut+1); //+1
echo ';left:'.($gauche+1); //+1
echo ';width:0px';
echo ';height:'.$hauteur.'px';
echo ';background-color:'.$bg_col.';z-index:0;"></div>';
}
function ProgressBar($indice)
{
echo "\n<script>";
echo "document.getElementById(\"pourcentage\").innerHTML='".$indice."%';";
echo "document.getElementById('progrbar').style.width=".($indice*2).";\n";
echo "</script>";
flush();
}
include('connection/connection.php');
include('presentation/header.php');
//Initialize(x,y,largeur,hauteur,'couleur bordure','couleur du pourcentage','couleur de la barre de progression');
Initialize(50,60,200,30,'000000','FFCC00','006699'); // initialisation de la barre de progression
if (isset($_POST['Enregistrer']))
{
if(isset($_FILES['parcourir']))
{
$dossier = 'upload_tmp/';
$fichier = basename($_FILES['parcourir']['name']);
$ancien_nom_fichier = basename($_FILES['parcourir']['name']);
$chemin_et_ancien_nom_fichier = 'fichier_titre/'.$ancien_nom_fichier;
$date_jour = date("Ymd");
$repertoire_destination = 'fichier_titre/';
$nombre_aleatoire = mt_rand();
$nouveau_nom_fichier = 'PASS_'.$date_jour.'-'.$nombre_aleatoire.'.old';
$taille_maxi = 2000000;
$taille = filesize($_FILES['parcourir']['tmp_name']);
$extensions = array('.csv');
$extension = strrchr($fichier, '.');
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Vous devez télécharger un fichier de type CSV !';
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier a une taille trop importante !';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur...
{
//On calcule la somme du fichier
$md5 = md5_file($_FILES['parcourir']['tmp_name']);
//On lit les md5 en base pour comparaison
$req1 = mssql_query("SELECT md5 FROM download WHERE md5 = '".$md5."' GROUP BY md5");
while($result = mssql_fetch_array($req1))
{
$md5_base = $result['md5'];
}
// Si le fichier existe
if($md5_base)
{
$erreur2 = 'Le fichier a déjà été télécharger !';
}
else //S'il n'existe pas on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
//On déplace le fichier d'origine pour l'archiver côté serveur
$deplace = rename($chemin_et_ancien_nom_fichier,$repertoire_destination.$nouveau_nom_fichier);
//On déplace le fichier pour le traiter
if(move_uploaded_file($_FILES['parcourir']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
if ($fichier = fopen($dossier . $fichier, 'r'))
{
for ($i=0;$i<=100;$i++)
{
ProgressBar($i); // réaffichage de la barre avec le nouvel indice
//***********************
// ici on mets notre code
while (($donnee = fgetcsv($fichier,1000, ";")) !== FALSE)
{
$Ref = $donnee[0]; // Pas obligé de mettre dans des variables, mais plus clair pour le débug
$OLS = $donnee[1];
$Date_fab=$donnee[2];
$Numlivr = $donnee[3];
$Date_livr=$donnee[4];
$CDT = $donnee[5];
$Boite = $donnee[6];
$Num_serie = $donnee[7];
$SAM = $donnee[8];
$Process = $donnee[9];
$Encarteur = $donnee[10];
$Module = $donnee[11];
$Wafer = $donnee[12];
$nom_avant = $ancien_nom_fichier;
$nom_apres = $nouveau_nom_fichier;
$somme_md5 = $md5;
$result = "INSERT INTO DOWNLOAD
(Ref
,OLS
,Date_fab
,Numlivr
,Date_livr
,CDT
,Boite
,Num_serie
,SAM
,Process
,Encarteur
,Module
,Wafer
,date_heure_download
,nom_avant
,nom_apres
,md5
)
VALUES
('".$Ref."','".$OLS."','".$Date_fab."','".$Numlivr."','".$Date_livr."','".$CDT."','".$Boite."','".$Num_serie."','".$SAM."','".$Process."','".$Encarteur."','".$Module."','".$Wafer."',GETDATE(),'".$nom_avant."','".$nom_apres."','".$somme_md5."')";
$lancer = mssql_query($result);
}
}
$message = 'Téléchargement de '.$nom_avant.' effectué avec succès !';
}
}
else
{
$echec = 'Echec du téléchargement !';
}
}
}
else
{
$erreur;
}
}
}
?> |
Partager