IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Upload] problème upload de deux fichiers


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2007
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 104
    Points : 45
    Points
    45
    Par défaut [Upload] problème upload de deux fichiers
    Bonjour


    via un formulaire je voudrais uploader deux fichiers de formats différents(pdf, et gif ou jpeg). Je voudrais limiter la taille des deux fichiers mais avec une taille différente et faire un controle lors de l'upload des deux fichiers sur le serveur. Par exemple pour l'image 400ko et pour le pdf 3MO. Mais cela ne marche pas, et je ne comprends pas. Il upload le pdf que si il est inferieur a 1 MO alors que je lui indique une taille max a 4MO. De plus je voudrais verifier a la fois la taille et l'extension de chaque fichier.

    voici le code de mon formulaire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    <!-- On limite le fichier à 400ko-->
    <input type="hidden" name="MAX_FILE_SIZE" value="40000000" />
     
     <table align="center" >
    	<tr>
    	  <td width="248"  class="titre_formulaire"><div align="left">Titulo del Cori Corito : </div></td>
    	  <td width="304" ><div align="left">
    	    <input class="textes1" name="titre" type="text" id="titre" />
    	    </div></td></tr>
        <tr>
          <td height="28" class="titre_formulaire">Imagen del Cori Corito (en gif, jpeg): </td>
          <td><input type="file" name="fichier" /></td>
        </tr>
        <tr><td height="28" class="titre_formulaire"> <div align="left">Documento del Cori Corito (en PDF) : </div></td>
      <td><div align="left">
        <input name="fichier2" type="file" id="fichier2" />
      </div></td></tr>
      <tr>
        <td height="21" class="titre_formulaire">&nbsp;</td>
        <td>&nbsp;</td>
      </tr>
        <tr><td></td><td></td></tr>
    	<tr> 
          <td>&nbsp;</td>
    <?
    $maDate = date("Y,m,d");
    ?>
    	  <input type="hidden" name="date_pub" value="<? echo $maDate; ?>"/>
    	  <td><div align="left">
    	    <input type="submit" name="upload" value="Insertar el Cori Corito" />
    	    </div></td>
        </tr>
      </table>
    et voici le fichier de traitement qui upload sur le serveur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    if( $upload!='' )
    {
    $dest = 'images/cori/';
    $urlRelative = 'images/cori/';
    $fichier= $_FILES['fichier']['name'];
    $fichier2= $_FILES['fichier2']['name'];
    $taille_maxi =400000;
    $taille_maxi2 = 40000000;
    $fichier_temp = $_FILES['fichier']['tmp_name'];
    $fichier_temp2 = $_FILES['fichier2']['tmp_name'];  
    $taille = filesize($fichier_temp);
    $taille2 = filesize($fichier_temp2);
    $extensions = array('.png', '.gif', '.jpg', '.jpeg', '.pdf', '.PDF');
    $extension = strrchr($_FILES['fichier']['name'], '.');
    $extension2 = strrchr($_FILES['fichier2']['name'], '.'); 
    //Début des vérifications de sécurité...
    // insert into image(id,titre) values('','le titre');
     
     
     
    	$titre=$_REQUEST["titre"];
    	$date_pub=$_REQUEST["date_pub"];
     
    	$sql="INSERT into cori (id, titre, date_pub) VALUES ('','$titre','$date_pub')";
     
     
      //exécution de la requête SQL:
      $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
     
     
    // $id = mysql_insert_id()
     
    $id = mysql_insert_id();
    // move_upload_file ( $temp , 'images/upload/'. $id  . $extension
     
    	if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
    	{
         $erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
    	}
    	if(!in_array($extension2, $extensions)) //Si l'extension n'est pas dans le tableau
    	{
         $erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
    	}
    	if($taille>$taille_maxi)
    	{
         $erreur = 'Le fichier est trop gros...';
    	}
    	if($taille2>$taille_maxi2)
    	{
         $erreur = 'Le fichier est trop gros...';
    	}
    	if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
    	{
         //On formate le nom du fichier ici...
         $fichier = strtr($fichier, 
              'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
              'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
         $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
    	 $fichier2 = strtr($fichier2, 
              'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
              'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
         $fichier2 = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier2);
         if (move_uploaded_file ($fichier_temp, $dest.'/'.$id.$extension)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
         {
    	 if (move_uploaded_file ($fichier_temp2, $dest.'/'.$id.$extension2)){
    	 	  echo '<p class="textes2">';
              echo "El Cori Corito ";
    		  echo '<b>'.$titre.'</b>';
    		  echo " esta insertado.";
    		  echo '</p>';
         }
    	 }
         else //Sinon (la fonction renvoie FALSE).
         {
              echo 'Fracaso del upload !';
         }
        }
    	else
    	{
         echo $erreur;
    	}
      $sql = "UPDATE cori SET url_image = '".$urlRelative.$id.$extension."', url_doc = '".$urlRelative.$id.$extension2."' WHERE id= ". $id ;
      $sql2= "UPDATE last_update SET date_pub = '$date_pub' where id='1'";
     
      //exécution de la requête SQL:
      $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
    	$requete2 = mysql_query($sql2, $cnx) or die( mysql_error() ) ;
    }
    merci de votre aide

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 254
    Points : 304
    Points
    304
    Par défaut
    Réponse un peu bateau :Mettre des echos dans le fichier de traitement qui upload sur le serveur te permettra de savoir ce qu'il fait...

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Points : 1 357
    Points
    1 357

Discussions similaires

  1. [Upload] Problème Upload de fichiers
    Par Perchut dans le forum Langage
    Réponses: 2
    Dernier message: 16/03/2007, 15h45
  2. [Upload] Problème de droit de fichier
    Par judas54 dans le forum Langage
    Réponses: 9
    Dernier message: 20/02/2007, 16h13
  3. [Upload] Problème Upload Fichiers via html
    Par Typhon dans le forum Langage
    Réponses: 3
    Dernier message: 11/02/2007, 11h52
  4. Réponses: 10
    Dernier message: 12/06/2006, 16h45
  5. [Upload] Problème upload de gros fichiers avec Firefox
    Par the rootsm@n dans le forum Langage
    Réponses: 12
    Dernier message: 19/02/2006, 20h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo