Renommer

Signaler
Messages postés
4
Date d'inscription
vendredi 4 mars 2005
Statut
Membre
Dernière intervention
4 août 2005
-
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
-
Lorsque j'upload un fichier image dans un fichier upload, qu'est ce que je dois écrire un peu près pour qu'il le renomme?



merci

2 réponses

Messages postés
1154
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
15 août 2009
15
Je te donne un exemple qui ajoute un indice au nom du fichier si celui-ci existe deja. Si tu upload un fichier appele truc.jpeg et qu'un fichier avec ce nom existe deja sur le serveur, le nouveau fichier est renomme truc_1.jpeg (si truc_1.jpeg existait deja, ce sera truc_2.jpeg, ...)

A toi ensuite de l'adapter selon tes besoins!

// pour recuperer le nom du fichier sans l'extension
function getFileName($fichier)
{
$pos = strrchr($fichier, '.');
$pos = strlen($pos);
$pos2 = strlen($fichier);
$pos3 = $pos2 - $pos;
$fichier = substr($fichier, 0, $pos3);
return $fichier;
}


// Le nom du fichier uploade
$filename = $_FILES['userfile']['name']; // userfile est le nom de l'input pour l'upload


if (file_exists($filename)){ // Si le nom existe déjà
$k=1; // pour l'indice
$newname = getFileName($filename);
$extension = substr($filename,strlen($newname)+1,strlen($filename)+1-strlen($newname));
$tmpname = $newname.'_1.'.$extension;
while (file_exists($tmpname)) {$tmpname = $newname."_".$k.'.'.$extension;$k++;}
$newname = $tmpname;
}
else { // Si le nom est libre
$newname = $filename;
}


et ensuite tu utilises newname pour sauver ton fichier...

Enjoy, ++
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut,



lorsque tu uploades un fichier tu utilise un moment la fonction move_uploaded_file()



bref move_uploaded_file($_FILES['champ']['tmp_name'],'nom de ton fichier.extension');



bah voilà, tu choisis ici le nom de ton fichier.

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>