La base de données des scripts PHP - ASP & PERL
Programmation Web Hebergement

PHP ASP PERL

Gratuit Mutualisé Dédié
Rechercher


 
membres
S'inscrire

Mail : 
Passe : 
oublié ?
 
services
Développement
E.JavaScript
Domaines
Referencement
Creer un forum
 
comscripts
Scripts PHP
Scripts ASP
Scripts PERL
Sources PHP
Sources ASP
Sources PERL
Les Ateliers
 
ressources
Les Livres
Forums
Liens
Faire un lien
Refrapide
 
partenaires
Hebergeur Image
CréEr Son Site
1 Max 2 Gains
Easy-Script.Com
Annu Marseille
Pc Land
Abc Webmasters
Bons Plans Du N
Web Creation
Business Intern
Votre site ?

Vérifier la disponibilité d'un nom de domaine


Class d'upload class.upload  
 Informations rapides
Catégorie : PHP Auteur : Deepblue
Sous-Catégorie : Fichiers Ajouté le : 05-03-2006
Langage : PHP  CSID : S297
Visites de la page : 12222    

 Informations détaillées
Description :

Class d'upload très simple d'utilisation :
Dans un premier temps, vous avez la class et ensuite un exemple d'utilisation :)

Portion de code

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
<?php
// CLASS -----------------------------------------------------------------------
--------------------
// PAGE NOMMEE : class.upload.php

/* CLASS D'UPLOAD -------------
# CREEE PAR SIMON VIEILLE
# simon_AT_geneweb.fr
# www.geneweb.fr
-----------------------------------*/


class Upload
{
 
 var $dossier// dossier ou les fichiers vont etr uplodé
 var $max_size// taille max des fichiers (en octets)
 var $type// type de fichiers autorisés
 var $page// page cible du formulaire
 var $nb_file// nombre de fichiers a uploder
 
 function Upload($nom_page, $_dossier, $_type, $_max_size, $_nb_file)
 {

  $this->type  = $_type;
  $this->dossier  = $_dossier;
  $this->max_size = $_max_size;
  $this->page  = $nom_page;
  $this->nb_file = $_nb_file;
 }
 
 function uploading()
 { 
  // On test si le dossier d'upload existe 
  $open = @opendir($this->dossier);
  // Si non, on le crée
    if(!$open) mkdir($this->dossier);

  $repertoireFichiers = $this->dossier;
  $extAutorisees = $this->type;
  
  // on compte le nombre du fichier envoyé par le formulaire
  $nb_file_envoyes = count($_FILES);
 
  $x = 1;
  while($x <= $nb_file_envoyes)
  {
   // si le formulaire a Ã©té posté
   if(!empty($_FILES["file".$x]["name"])) 
   {
    // Les informations concernant le fichier
    
    $nomFichier = $_FILES["file".$x]["name"]
    
    // SI le fichier existe, on lui rajoute le timestamp devant son nom   
    if(file_exists($this->dossier."/".$nomFichier)) $fichier = time()."-".$nomFi
chier;
    else $fichier = $nomFichier;
    
    $temporaryName = $_FILES["file".$x]["tmp_name"];
    $tailleFichier = $_FILES["file".$x]["size"];
    $typeFichier = $_FILES["file".$x]["type"];
    $maxSize = $this->max_size;
    
    // On trouve son extension
    $ext = explode(".", $nomFichier);
    $extension = $ext[count($ext)-1];
       
    // Si l'extension et que la taille du fichier son bons
       if (in_array($extension, $this->type) && $tailleFichier <= $maxSize && $t
ailleFichier != 0)
    {
     $upload = move_uploaded_file($temporaryName, $this->dossier."/".$fichier) o
die ("Erreur lors de l'envoie ".$nomFichier."<br />");
     if($upload) print $nomFichier." envoyé<br />";
    }
    
    // Si il y a une erreur  
    else 
    {
     if ($tailleFichier > $maxSize)
     print "La taille de".$nomFichier." est trop importante<br />";
     elseif (!in_array($extension, $extAutorisees))
     print $nomFichier." n'est pas un fichier autorisé !<br />";
     else
     print "Il y a une erreur, recommencez<br />";
    }                 
       }
  $x++;
  }
   // Si le formulaire n'a pas Ã©té posté
   if(!isset($_POST["file"])) 
   {
     print '<form action="'.$this->page.'" name="upload" method="post" enctype="
multipart/form-data">'."\n";

      print ' <div>'."\n"
       print '  <input type="hidden" name="file"  />'."\n";     
      $u = 1;
      while($u <= $this->nb_file)
      {
       print '  <input type="file" name="file'.$u.'"  /><br />'."\n";
       $u++;
      }    
       print '  <input type="submit" name="envoyer" value="envoyer" />'."\n";
      print ' </div>'."\n";  
     print '</form>'."\n";
   }
   
 }
}



// EXEMPLE D'UTILISATION -------------------------------------------------------
---------------------
// DANS LA PAGE QUI PROPSERA LE FORMULAIRES ET DANS LA PAGE CIBLE DU FORMULAIRE

include("class.upload.php");

// on fait un tableaux des extensiosn autotisées
$type_autorise = array("jpg", "JPG", "gif", "GIF", "bmp", "BMP","png", "PNG", "p
ps", "PPS", "pdf", "PDF", "jpeg", "JPEG", "swf", "SWF");

// Le nom de la page cible du formulaire
$nom_page = "class.upload.php";
// Nom du dossier ou vont etre uploadé les fichiers
$dossier = "file";
// taille max des fichiers (en octets : 1ko = 1024 octets)
$taille = 500000;
// nombre de fichiers a uploder
$nb_file = 5;

$up = new Upload($nom_page, $dossier, $type_autorise, $taille, $nb_file);
$up->uploading();
?>  



 Les Commentaires

Soyez le premier à rédiger un commentaire sur ce code source !

Ajouter  

 Informations & Services  

Je désire recevoir ce code source par email.
Je désire recevoir la Newsletter de ComScripts.

Newsletter
133 199 abonnés

Autre Sources
 Fichiers
- Liste des fi.
- Copier un do.
- Uploader un .
- Lire le cont.
- Contenu d'un.

Tips
 Fichiers
ASP (3)
PERL (2)

Flash MX 2004


  Le bon plan du moment  

Gen. en 0.10779sec. Retour à la page d'accueil
Copyright © 2005 - Visialis - RCS Nanterre 478 885 122 - Tous droits réservés - Nous contacter haut de page

Valid XHTML 1.0! Valid CSS!