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] Nom de fichier avec nom accentué


Sujet :

Langage PHP

  1. #1
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Points : 332
    Points
    332
    Par défaut [Upload] Nom de fichier avec nom accentué
    Bonjour,

    Je rencontre un problème avec la fonction move_uploaded_file de PHP. Celle ci refuse d'uploader un fichier contenant des caractères accentués.

    J'ai l'impression de prendre un petit risque en posant cette question tant le sujet me paraît bateau.

    J'ai cherché sur le forum et dans la FAQ sans succès. Quelqu'un a t'il déja eu le problème ?

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 92
    Points : 77
    Points
    77
    Par défaut
    Bonsoir, MacReiben

    Lorsque vous téléchargez votre fichier sur le serveur, il faut renommer le fichier.

    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
     
    /* Récupérer le nom du fichier orginal et son nom dans le dossier tmp */
    $original_name = $_FILES['my_file']['name'];
    $tmp_name = $_FILES['my_file']['tmp_name'];
     
    /* Récupérer son nom d'extension */
    $last_dot = strrpos($original_name, '.');
    if($last_dot === FALSE)
    	$file_extension = '';
    else
    	$file_extension = strtolower(substr($original_name, $last_dot + 1, strlen($original_name) - $last_dot));
     
    /* Le nouveau nom du fichier */
    $new_filename = date('YmdHis');
    /* Le suffixe du nom de fichier. 
     * Si 2 utilisateurs upload leurs fichiers en même temps, 
     * 1 de ces 2 fichiers risque d'être écrasé. */
    $file_number = 0;
     
    /* Vérifier si ce fichier existe, si oui, on incrémente le suffixe. */
    while(file_exists('/upload/'.$new_filename.$file_number.'.'.$file_extension))
    	$file_number ++;
     
    /* Upload le fichier */
    $new_filename = $new_filename.$file_number;
    move_uploaded_file($tmp_name, '/upload/'.$new_filename.'.'.$file_extension);
     
    /* Enlever le droit d'exécution du fichier */
    chmod('/upload/'.$new_filename.'.'.$file_extension, '664');
    C'est le code que j'ai utilisé dans mon projet, ça peut vous aider, peut-être ...

    Bon courage

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

Discussions similaires

  1. [Upload] Nom de fichier avec un/des caractères accentués ?
    Par Christophe Charron dans le forum Langage
    Réponses: 11
    Dernier message: 09/06/2006, 21h46
  2. Excel : lien hypertexte vers un autre fichier avec nom page
    Par delamarque dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 28/11/2005, 09h33
  3. [Upload]Telechargement grâce à une servlet : nom du fichier
    Par xtremax3 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 23/11/2005, 22h25
  4. Réponses: 3
    Dernier message: 12/07/2005, 13h33
  5. changement de nom de fichier avec smartupload
    Par bourvil dans le forum ASP
    Réponses: 2
    Dernier message: 24/05/2004, 14h50

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