Impossible télécharger une image

delavega470 Messages postés 316 Statut Membre -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -


if (is_uploaded_file($_FILES['image']['tmp_name'])) {
   echo "File ". $_FILES['image']['name'] ." téléchargé avec succès.\n";
   echo "Affichage du contenu\n";
   readfile($_FILES['image']['tmp_name']);
} else {
   echo "Attaque possible par téléchargement de fichier : ";
   echo "Nom du fichier : '". $_FILES['image']['tmp_name'] . "'.";
} 

salut à tous j'ai fais un test avec ce code et on me met attaque possible par téléchargement
comment je peux résoudre ce problème et enregistrer la photo

6 réponses

  1. Felice_ Messages postés 271 Statut Membre 11
     
    Bonjour delavega470,

    Ton fichier de formulaire est bien juste, peux-ton le voir ?
    0
  2. delavega470 Messages postés 316 Statut Membre 48
     
    
    
    <form action="#" method="post" name="formulaire" class="formulaire" class="frm" id="frm">
                     <table border="0" padding:12px;>
                       <tr> <td>Nom:</td>
                           <td>
                           <input name="nom_marq_modi"type="text" value="'.$data3['nom_marq'] .'" size="20”/>
                           </td>
                       </tr>
                        <tr> <td><br></td>
                           <td></td>
                       </tr>
                       </tr>
                      <tr> <td>Image:</td>
                           <td>
                           <input type="file" name="image">
                           </td>
    
                       </tr>
      
                       </table>
                       </br>
                             <div align="right"> 
                            <button type="submit" name="okm" class="btn btn-success">Modifier</button></div>
                            </form>
    
    
    0
    1. Felice_ Messages postés 271 Statut Membre 11
       
      Re-bonjour,

      Tu fais une erreur courante avec les fichiers, il faut changer l'attribut « enctype » :
      <form action="#" method="post" name="formulaire" class="formulaire" class="frm" id="frm" enctype="multipart/form-data">
      0
    2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      où en es-tu avec cette question?
      0
  3. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    peux-tu ajouter
    print_r($_files);
    après
    echo "Attaque possible par téléchargement de fichier : ";
    , et partager ce que cela affiche?
    je te suggère de nous donner le maximum d'informations, cela nous aidera à t'aider. tu ne nous as donné qu'une partie de ton code, et qu'une partie de ce qu'affiche le programme.
    0
  4. delavega470 Messages postés 316 Statut Membre 48
     
    OK voici ce que je veux faire c'est de modifier la photo
    
    
    <form action="#" method="post" name="formulaire" class="formulaire" class="frm" id="frm">
                     <table border="0" padding:12px;>
                       <tr> <td>Nom:</td>
                           <td>
                           <input name="nom_marq_modi"type="text" value="'.$data3['nom_marq'] .'" size="20”/>
                           </td>
                       </tr>
                        <tr> <td><br></td>
                           <td></td>
                       </tr>
                       </tr>
                      <tr> <td>Image:</td>
                           <td>
                           <input type="file" name="image">
                           </td>
    
                       </tr>
      
                       </table>
                       </br>
                             <div align="right"> 
                            <button type="submit" name="okm" class="btn btn-success">Modifier</button></div>
                            </form>
    
    
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. delavega470 Messages postés 316 Statut Membre 48
     
    Désolé voici le code
                      
                     if (isset($_GET['pag']) AND ($_GET['pag']='editeMarq.php')) {
                        include('folder_bd/file_bd.php');
                       $code=$_GET['id_marq'];
                      $req3='SELECT nom_marq from marque where id_marq="'.$code.'" ';
    
                      $reponse = $bd->query($req3);
                       while ($data3=$reponse->fetch()) {
                     
                       echo '  <div class="col-lg-4">
                        <div class="panel panel-default">
                            <div class="panel-heading"><img src="img/marque.ico" height="20" widht="20">
                                Modification 
                            </div>
                            <!-- /.panel-heading -->
                            <div class="panel-body">
                                <div class="list-group">
                   <form action="#" method="post" name="formulaire" class="formulaire" class="frm" id="frm">
                     <table border="0" padding:12px;>
                       <tr> <td>Nom:</td>
                           <td>
                           <input name="nom_marq_modi"type="text" value="'.$data3['nom_marq'] .'" size="20" />
                           </td>
                       </tr>
                        <tr> <td><br></td>
                           <td></td>
                       </tr>
                       </tr>
                      <tr> <td>Image:</td>
                           <td>
                           <input type="file" name="image_modi">
                           </td>
    
                       </tr>
      
                       </table>
                       </br>
                             <div align="right"> 
                            <button type="submit" name="okm" class="btn btn-success">Modifier</button></div>
                            </form> ';   }
    
    
                   
                               
                       if(isset($_POST['okm']))
                          {
                               
                              
                               if (!empty($_POST['nom_marq_modi']) AND !empty($_FILES)) {
        
      
      $file_name = $_FILES["image_modi"]["name"];
      $file_extension = strrchr($file_name,".");
      $file_tmp_name = $_FILES['image_modi']['tmp_name'];
      $files_dest = 'marque/image/'.$file_name;
      $extension_autorisees = array('.jpeg','.JPEG','.png','.PNG','.gif','.GIF','.jpg','.JPG');
      $statu = 1;
      $nom_marq =$_POST['nom_marq_modi'];
      //test si l'extension fait partie des extensions autorisées
       if(in_array($file_extension,$extension_autorisees))
       { 
         if($_FILES["image_modi"]["size"] < 5000000)
         {
          //envoi de l'image
    
        if (move_uploaded_file($file_tmp_name,$files_dest) AND $_FILES["image_modi"]["error"]==0) {
                include('folder_bd/file_bd.php');
          $req ='UPDATE marque set 
                                    nom_marq ="'.$nom_marq.'",img_marq="'.$file_name.'",statu_marq="'.$statu.'",
                                    
                                    WHERE id_marq="'.$code.'" ';
                                   
             $data = $bd->query($req);
    
        
          echo "<font color='green'>Marque Modifiée</font>";
    
          } 
           else
           {
    
          echo "<font color='red'>Une erreur est survenue lors de l'envoi de l'image</font>";
           }
          
        }  else {
           echo "<font color='red'> Taille de l'image doit être inférieur à 5Mo </font>";
          
          
                }
              } 
    
              else {
                    echo "<font color='red'>seul les images en format jpeg,jpg,gif et png sont autorisés ! </font>";
                }
        
    
       } else {
         echo " <font color='red'>veuillez remplir les champs  vides !</font>";
       }
    }  
        
                                
    
      }
                  
                     ?>
    
    
    
    0
  7. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    1) peux-tu donner les noms de chacun des fichiers php, chaque fois que tu partages un contenu?
    2) le code que tu as montré en #6 n'est pas complet, et ne contient pas le code partiel montré au début de la discussion
    3) peux-tu ajouter
    print_r($_files);
    après
    echo "Attaque possible par téléchargement de fichier : ";
    , et partager ce que cela affiche?
    0