Ja ne comprends pas pourquoi cela ne marche pas

gedfinos -  
jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   -
voici le programme formu2.php
<form action = "cible_envoi.php" method= "POST" enctype = "multipart/form_data">
<p>
formulaire d'envoi de fichier<br />
<input type = "file" name ="monfichier"/><br />
<input type = "submit" value="envoyer le fichier"/>
</p>
</form>

et maintenant voici le programme cible_envoi.php
<?php



if (isset ($_FILES['monfichier']) AND $_FILES['monfichier']['error'] == 0)
{
if($_FILES['monfichier']['size'] <= 100000000)
{
$infosfichier = pathinfo($_FILES['monfichier']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array ('jpeg','jpg','gif','png');
if(in_array($extension_upload, $extensions_autorisees))
{
move_uploaded_file($_FILES['monfichier']['tmp_name'], ' uploads/ ' . basename($_FILES['monfichier']['name']));
echo "l envoi a bien ete effectue!";
}
}
}
?>


EDIT : Ajout des balises de code (jordane)

merci d'avance
cordialement

1 réponse

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
     
    Bonjour,

    Un souci dans ton chemin je pense (des espaces en trop...)

    Essaye ça :
    <?php
    
    //activation des erreurs php
    error_reporting(E_ALL);
    ini_set('display_errors', TRUE);
    ini_set('display_startup_errors', TRUE);
    
    //fonction de gestion d'erreur
    function echoErrorAndExit($error){
      echo "Error : ".$error;
      exit(0);
    }
    
    //récupération PRORPE des variables AVANT de les utiliser
    $File = !empty($_FILES['monfichier']) ? $_FILES['monfichier']: NULL;
    
    //autres variables
    $extensions_autorisees = array ('jpeg','jpg','gif','png');
    $rep_destination = 'uploads/' ;
    
    if($File){
      $name = $File['name'];
      $type = $File['type'];
      $size = $File['size'];
      $tmp_name = $File['tmp_name'];
      
      $infosfichier = pathinfo($name);
      $extension = $infosfichier['extension'];
      //vérifications
      if($size > 100000000 ){ echoErrorAndExit("Taille non autorisée :" .$size);}
      if(!in_array($extension, $extensions_autorisees)){ echoErrorAndExit("Type de fichier non autorisé " .$extension);}
      if(!is_dir($rep_destination)){ echoErrorAndExit("Erreur : Répertoire ".$rep_destination . " introuvable");}
      
      //si aucune erreur...
      if(move_uploaded_file($tmp_name, $rep_destination . $name);
        echo "l envoi a bien ete effectue!";
      }else{
        echoErrorAndExit("Erreur de l'upload du fichier ".$tmp_name . " vers " .$rep_destination . $name);
      }
    }else{
      echoErrorAndExit("Aucun Fichier uploadé !");
    }
    

    0