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 :

Script version de fichiers upload


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    95
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 95
    Par défaut Script version de fichiers upload
    Bonjour,

    Je cherche à faire un historique de fichiers que les utilisateurs peuvent uploadé.

    Je n'arrive pas à gérer correctement lorsqu'un utilisateur upload un fichier dont le nom existe déjà dans le dossier cible, je cherche un script qui gère les versions de fichier.

    ex : si archive.zip existe déjà alors renommer en archive(2).zip, si archive.zip & archive(2).zip existent déjà alors renommer en archive(3).zip.

    Est-ce que quelqu'un aurait ca dans sa boite à outil ?

    Merci d'avance !

  2. #2
    Membre très actif
    Avatar de Nowwis
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2009
    Messages : 406
    Par défaut
    Salut !

    Un petit truc rapide qui pourrait t'orienter :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $nomdefichier = "archive";
    $extension = "zip";
     
    $nomdefichierprovisoire = $nomdefichier;
    $i = 1;
    while(file_exists($rootpath.$nomdefichierprovisoire.$extension))
    {
    	$nomdefichierprovisoire = $nomdefichier.' ('.$i.')';
    	$i++;
    }
     
    // Sort le nom de fichier libre : $nomfichierprovisoire.
    // S'il n'existe pas, cela ne rentre pas dans la boucle.
    Tu pourras facilement le mettre dans une fonction (paramètre nom de fichier, retour nom du fichier à uploader)

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Par défaut
    Bonjour,

    perso j'utilise une autre méthode:
    - donner un nom unique au fichier uploadé,
    - gérer le N° de version à l'affichage.

    par exemple script upload
    ....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $realfile=CONST_SITE::SITE_PATH.'userdata/'.date("His").'_'.$fileName;
    if(move_uploaded_file($_FILES["upfile_img"]['tmp_name'], $realfile)) {
    ...

    génère des fichiers 002332_P1000511_monimage_.jpg
    Avec un substr($realfile,7), on retrouve un nom de fichier 'utilisateur'.

Discussions similaires

  1. Script Upload problème d'emplacement du fichier uploadé
    Par Phoenix0007 dans le forum Serveurs (Apache, IIS,...)
    Réponses: 7
    Dernier message: 09/10/2007, 19h52
  2. Appliquer un script perl sur un fichier uploadé
    Par Oli_Ifre dans le forum Langage
    Réponses: 4
    Dernier message: 04/04/2007, 11h14
  3. renommer un fichier uploadé
    Par Sowa dans le forum ASP
    Réponses: 2
    Dernier message: 07/02/2005, 09h23
  4. Création version client - fichiers non trouvés
    Par Pascal dans le forum WinDev
    Réponses: 7
    Dernier message: 03/12/2004, 11h34
  5. Réponses: 10
    Dernier message: 18/11/2003, 18h01

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