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 :

Problème de renommage de fichier avant envoi (upload) [PHP 5.6]


Sujet :

Langage PHP

  1. #1
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 679
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 679
    Points : 954
    Points
    954
    Par défaut Problème de renommage de fichier avant envoi (upload)
    Bonsoir a tous
    Dans l'exmple php ci dessous je tente de renomer un fichier avant son upload. l'upload marche correctement mais j'ai un message d'erreur de php !
    voici l'exemple :

    Code PHP : 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
     
    <?php
    /* definition du dossier de destination*/
    $dossier = "ledossier/";
     
    /*exraction du nom du fichier*/
    $fichier = basename($_FILES['fichier']['name']);
     
    /*definition de la taille maximal du fichier*/
    $taille_maxi = 1000000;
     
    /* extraction de la taille du fichier*/
    $taille = filesize($_FILES['fichier']['tmp_name']);
     
    /* extension des fichiers permis pour le upload*/
    $extensions = array('.png', '.gif', '.jpg', '.jpeg','.doc', '.docx');
     
    /* extraction de l'extention du fichier*/
    $extension = strrchr($_FILES['fichier']['name'], '.');
     
    /*montage du nouveau nom du ficher*/ 
    $nouveaunom="tele".date("dmYH_i").$extension;
     
     
    //Début des vérifications de sécurité...
    if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
    {
         $erreur = 'Erreur Vérifier l extention du fichier';
    }
    if($taille>$taille_maxi)
    {
         $erreur = 'Ereur Vérifier la taille du fichier';
    }
    if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
    {
     
          setlocale(LC_ALL, 'fr_FR.UTF-8');
          $fichier = iconv('UTF-8', 'ASCII//TRANSLIT', $fichier);
          $fichier = preg_replace('/[^.a-z0-9]+/iu', '_', $fichier);
     
         /*renommage du fichier*/
         rename('ledossier/'.$fichier , $nouveaunom);
     
         if(move_uploaded_file($_FILES['fichier']['tmp_name'], $dossier.$nouveaunom))
         {
                     echo 'Upload effectué avec succès !';
         }
         else //Sinon (la fonction renvoie FALSE).
         {
              echo 'Echec de l\'upload !';
         }
    }
    else
    {
         echo $erreur;
    }
    ?>

    J'ai le téléchargement qui se fait correctement avec l'affichage du message : Upload effectué avec succès !
    et voici le warning qui apparait juste après :
    ( ! ) Warning: rename(ledossier/Tulips.jpg,tele1103201621_27.jpg): in D:\wamp64\www\upload.php on line 38
    Je cherche depuis mais merci de m'aider a y voir plus claire !

  2. #2
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Salut,

    et avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rename('ledossier/'.$fichier , 'ledossier/'.$nouveaunom);
    Pourquoi tu fais un rename suivi d'un move_uploaded_file qui renomme aussi le fichier ?

  3. #3
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 679
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 679
    Points : 954
    Points
    954
    Par défaut
    Bonjour

    Je vais essayer votre code.
    En faite je veux renommer le fichier avant le move_uploaded_file pour créer une correspondance avec l’utilisateur qui a uploader le fichier.
    je ne savait pas que move_uploaded_file renommais aussi le fichier

    Merci

  4. #4
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 679
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 679
    Points : 954
    Points
    954
    Par défaut
    je viens de tester le code :
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    rename('ledossier/'.$fichier , 'ledossier/'.$nouveaunom);
    mais j'ai toujours le Warning !
    Warning: rename(ledossier/Penguins.jpg,ledossier/tele1203201612_13.jpg): in D:\wamp64\www\jeux_upload.php on line 38
    je pense que je vais voir du coté de move_uploaded_file

  5. #5
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 679
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 679
    Points : 954
    Points
    954
    Par défaut
    ok vous aviez entièrement raison pour move_uploaded_file le rename était superflu.

    merci

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2015
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2015
    Messages : 69
    Points : 36
    Points
    36
    Par défaut
    C'est resolu ?

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

Discussions similaires

  1. Chiffrer un fichier avant un upload
    Par DotNET74 dans le forum Windows Phone
    Réponses: 0
    Dernier message: 17/06/2014, 19h23
  2. Réponses: 6
    Dernier message: 26/02/2013, 10h48
  3. Renommer un fichier avant envoi par Mail
    Par mumuludo dans le forum VBA Access
    Réponses: 2
    Dernier message: 02/01/2008, 17h01
  4. [Ergonomie] Valider des fichiers avant l'upload
    Par lr dans le forum Webdesign & Ergonomie
    Réponses: 6
    Dernier message: 01/12/2006, 11h47
  5. tester l'extension d'un fichier avant d'uploader
    Par PrinceMaster77 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 25/02/2005, 15h12

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