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 :

Echec de l'upload


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 95
    Points : 66
    Points
    66
    Par défaut Echec de l'upload
    Bonjour j'essaie d'uploader un fichier vers un serveur en php depuis mon site mais la fonction move_uploaded_file renvoie toujours true et mes fichiers ne sont pas ajoutés sur le serveur.

    Voici le formulaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <form method="POST" action="modules/testmodule/classes/upload.php" enctype="multipart/form-data">
                <input type="hidden" name="MAX_FILE_SIZE" value="100000">
                Fichier : <input type="file" name="avatar"><br><br>
                <input type="submit" name="envoyer" value="Envoyer le fichier" style="margin-left:70px">
            </form>
    et le code PHP :

    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
    <?php
     
    	$dossier = 'modules/testmodule/ressources/';
    	$fichier = basename($_FILES['avatar']['name']);
    	$taille_maxi = 100000;
    	$taille = filesize($_FILES['avatar']['tmp_name']);
    	$extensions = array('.png', '.gif', '.jpg', '.jpeg','.avi','.pdf','.mpg','.html');
    	$extension = strrchr($_FILES['avatar']['name'], '.'); 
    	//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 uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
    	}
    	if($taille>$taille_maxi)
    	{
    		 $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);
    		 if(move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
    		 {
    			  echo 'Upload effectué avec succès !';
    		 }
     
    		 else //Sinon (la fonction renvoie FALSE)
     
    		 {
    			  echo 'Echec de l\'upload !';
    		 }
    	}
     
    	else
    	{
    		 echo $erreur;
    	}
     
    ?>
    Voyez-vous une erreur ?

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Attention si le fichier dépasse la taille maximale dans le formulaire, tu ne recois pas le fichier :

    Tu peux compléter ton test comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	if($taille>$taille_maxi || $_FILES['avatar']['error'] == 2)
    	{
    		 $erreur = 'Le fichier est trop gros...';
    	}
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 95
    Points : 66
    Points
    66
    Par défaut
    Merci mais l'erreur ne vient pas de là. Le fichier n'est pas trop gros et ça n'a rien changé en rajoutant ce que tu as mis. Je reçois le message "Echec de l'upload !"

    ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
    		 {
    			  echo 'Upload effectué avec succès !';
    		 }
    		 else //Sinon (la fonction renvoie FALSE)
    		 {
    			  echo 'Echec de l\'upload !';
    		 }

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    fait un pour controler quand même.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 95
    Points : 66
    Points
    66
    Par défaut
    J'obtiens ça

    Array ( [avatar] => Array ( [name] => afpa.gif [type] => image/gif [tmp_name] => /tmp/phpIVLNlI [error] => 0 [size] => 5729 ) ) Echec de l'upload !

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tout a l'air bon de ce côté.

    Ajoute un
    au début du script.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 95
    Points : 66
    Points
    66
    Par défaut
    C'est censé faire quoi ? Parce que là ça n'a rien changé.

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ca sert a afficher toutes les erreurs ; j'esperais voir venir une erreur de droits sur un chemin par exemple.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 95
    Points : 66
    Points
    66
    Par défaut
    Ca aurait aidé en effet parce que là quel que soit le fichier, son type, son poids etc, la fonction me renvoie toujours false et le fichier n'est jamais uploadé.
    J'ai essayé 7 ou 8 fichiers différents.

  10. #10
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    essaie avec
    pour voir.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 95
    Points : 66
    Points
    66
    Par défaut
    Upload effectué avec succès !
    Ca a fonctionné apparemment.
    Par contre 1 truc que je comprends pas, dans $dossier je suis pas censé mettre le chemin vers le dossier ou je veux stocké mon fichier sur le serveur ?
    Il est arrivé ou la du coup ?

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 95
    Points : 66
    Points
    66
    Par défaut
    Je pense avoir trouvé d'ou ça vient, j'ai mis le CHMOD du répertoire "ressources" dans lequel je veux uploadé mes fichiers à 755 mais il repasse tout seul à 770. J'arrive pas à l'enregistrer à 755.

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 95
    Points : 66
    Points
    66
    Par défaut
    Ca ne vient pas de là en fait donc si quelqu'un pouvait m'aider svp

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 95
    Points : 66
    Points
    66
    Par défaut
    Résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Echec de l'upload
    Par yotman dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 27/05/2013, 11h03
  2. [MySQL] echec de l'upload d'un fichier
    Par belakhdarbts10 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 15/01/2013, 18h44
  3. La chasse aux bugs (jeu d'Echecs)
    Par Sub0 dans le forum Développement 2D, 3D et Jeux
    Réponses: 117
    Dernier message: 06/11/2008, 09h46
  4. [CR][VB.NET] Echec de connexion
    Par Shuret dans le forum SDK
    Réponses: 5
    Dernier message: 15/09/2004, 10h46
  5. url d'une page asp ou upload avec get
    Par taupin dans le forum ASP
    Réponses: 18
    Dernier message: 22/08/2003, 14h25

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