Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2784 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Mettre un nom aléatoire à un fichier uploadé.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Mettre un nom aléatoire à un fichier uploadé.

n°969235
Jeep_
Posté le 02-02-2005 à 12:48:42  profilanswer
 

Bonjour, j'ai crée mon site d'upload récemment, (http://www.jeep.heb4you.com/). Cependant, lorsque on upload une image nommé image.jpg, il efface l'image du même nom qui était présente.
En fait, je voudrais mettre le script pour qu'il trouve un nom compliqué et ainsi ne puisse pas effacer l'ancienne image.
 
Désolé, je m'exprime mal, mais je suis fatigué  :D  
 
Merci d'avance.  :hello:

mood
Publicité
Posté le 02-02-2005 à 12:48:42  profilanswer
 

n°969250
soju
One shot !
Posté le 02-02-2005 à 12:53:44  profilanswer
 

je vois 3 solutions :
- soit tu ajoutes un compteur, genre tu renommes ton fichier en image1.jpg
- soit tu génère un identifiant unique, par exemple md5 (attention aux collisions)
- soit tu gère une table des tes fichiers avec identifiant unique dans une bd (par exemple avec une clé primaire en auto_increment)

n°969266
Jeep_
Posté le 02-02-2005 à 13:01:46  profilanswer
 

Est-il possible d'avoir des scripts ?  :bounce:

n°969341
soju
One shot !
Posté le 02-02-2005 à 13:54:42  profilanswer
 

Jeep_ a écrit :

Est-il possible d'avoir des scripts ?  :bounce:


j'ai cru lire :

Règles du forum Programmation  a écrit :

[0C] On ne fait pas le boulot à votre place.



donc essaye d'implémenter une des solutions et si ça bug repasse nous voir  ;)  

n°969460
Xav_
The only one...
Posté le 02-02-2005 à 14:59:19  profilanswer
 

j'ai déjà lu des posts ou les gens utilise un timestamps pour nommer les fihcier (image ou autre) uploadé, je pense que c'est une assez bonne idée pour éviter les doublons...


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°969473
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-02-2005 à 15:11:44  profilanswer
 

Le meilleur moyen est en effet d'utiliser les timstamp ... aucun risque d'avoir 2 fois le même.
 
++


---------------
Gamertag: CoteBlack YeLL
n°969551
soju
One shot !
Posté le 02-02-2005 à 16:06:43  profilanswer
 

Dj YeLL a écrit :

Le meilleur moyen est en effet d'utiliser les timstamp ... aucun risque d'avoir 2 fois le même.
++


[mode_chieur]et si 2 utilisateurs upload un fichier à la même seconde ? rare mais possible.[/mode_chieur]  ;)  

n°969567
no_code
This Magic Moment ...
Posté le 02-02-2005 à 16:13:58  profilanswer
 

soju a écrit :

[mode_chieur]et si 2 utilisateurs upload un fichier à la même seconde ? rare mais possible.[/mode_chieur]  ;)


 
Ajoute l'identifiant de session  :jap:

n°969571
skeye
Posté le 02-02-2005 à 16:15:41  profilanswer
 

no_code a écrit :

Ajoute l'identifiant de session  :jap:


ça + le timestamp, ça va faire de jolis noms de fichiers, ça...[:dawa]


---------------
Can't buy what I want because it's free -
n°969573
FlorentG
Posté le 02-02-2005 à 16:17:08  profilanswer
 

soju a écrit :

[mode_chieur]et si 2 utilisateurs upload un fichier à la même seconde ? rare mais possible.[/mode_chieur]  ;)


Tu met un timestamp avec une précision à la nanoseconde prêt, aucune chance de timestamp pareil du coup :)

mood
Publicité
Posté le 02-02-2005 à 16:17:08  profilanswer
 

n°969608
ratibus
Posté le 02-02-2005 à 16:40:57  profilanswer
 

md5(microtime())

n°969616
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-02-2005 à 16:46:21  profilanswer
 

soju a écrit :

[mode_chieur]et si 2 utilisateurs upload un fichier à la même seconde ? rare mais possible.[/mode_chieur]  ;)


 
Bah dans ce cas il utilise un microtime() et c'est bon ... ça serait deja bcp plus rare hein :D


---------------
Gamertag: CoteBlack YeLL
n°969617
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-02-2005 à 16:46:59  profilanswer
 

Vache, supra-grillaid !
 
/ME va apprendre à utiliser la touche F5 de son clavier hein :/


---------------
Gamertag: CoteBlack YeLL
n°969633
Xav_
The only one...
Posté le 02-02-2005 à 16:54:53  profilanswer
 

Dj YeLL a écrit :

/ME va apprendre à utiliser la touche F5 de son clavier hein :/


si c'est trop dur au clavier, clic droit --> menu contextuel --> "actualiser" :P


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°969664
ratibus
Posté le 02-02-2005 à 17:03:59  profilanswer
 

Dj YeLL a écrit :

Vache, supra-grillaid !
 
/ME va apprendre à utiliser la touche F5 de son clavier hein :/


 :p

n°969707
Jeep_
Posté le 02-02-2005 à 17:16:55  profilanswer
 

Lol, bon bah merci pour vos réponses  :jap:

n°969717
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-02-2005 à 17:19:41  profilanswer
 

ratibus> Oué mais si tu fais un md5(microtime()) tu retombes sur le problème de collisions ! Na ! :na:


---------------
Gamertag: CoteBlack YeLL
n°969721
skeye
Posté le 02-02-2005 à 17:21:29  profilanswer
 

Dj YeLL a écrit :

ratibus> Oué mais si tu fais un md5(microtime()) tu retombes sur le problème de collisions ! Na ! :na:


Euh le md5 c'est sur 32bits hein, t'as de la marge...:o


---------------
Can't buy what I want because it's free -
n°969723
Dj YeLL
$question = $to_be || !$to_be;
Posté le 02-02-2005 à 17:24:02  profilanswer
 

Je sais bien, mais si on est parti au depart sur du timestamp c'était pour eviter le problème de collisions MD5 :lol: C'est pour cette unique raison que je reviens là dessus :p
 
:hello:


---------------
Gamertag: CoteBlack YeLL
n°969791
ratibus
Posté le 02-02-2005 à 18:10:47  profilanswer
 

sha1(microtime())  :p

n°986176
Jeep_
Posté le 18-02-2005 à 14:40:25  profilanswer
 

Voilà, j'ai réalisé le code :
 

Citation :

if (file_exists("$absolute_path/$nom_entier" )) doublon();


 

Citation :

  function doublon()
{static $act=0;
global $absolute_path,$nom_cop;
$act++;
if (file_exists($absolute_path."/".$nom_cop[0]."[".$act."].".$nom_cop[1])) doublon();
else $nom_cop[0] .= "[".$act."]";
}


 
Pouvez-vous me confirmer si je n'ai pas fait de fautes ?
Et je n'ai pas trop d'idées où le placer  :( .
Merci d'avance.

n°986644
Jeep_
Posté le 18-02-2005 à 22:22:00  profilanswer
 

Up :(.

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Mettre un nom aléatoire à un fichier uploadé.

 

Sujets relatifs
protéger l'url d'un fichier en downloadécriture d'un tableau dans un fichier
[Applet signée] problême ouverture de fichier [résolut mais...]parser un fichier xml en java
Selection de caracteres de facon aleatoireCreation fichier excel a partir d'un txt
Remplacer une ligne par une autre dans un fichier texteProblème include de fichier [résolu]
[Excel - VBA] Ouverture Fichier en VBAinclure un fichier txt a une page web en html
Plus de sujets relatifs à : Mettre un nom aléatoire à un fichier uploadé.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR