Je perds l'extension quand je renomme

salimdrame Messages postés 71 Statut Membre -  
 Utilisateur anonyme -
Bonjour,

Je perds l'extension de mon fichier une fois après l'avoir renommé. Voici le code :

***********************************************************

// params
unset($message);
$extensions_ok = array('jpg', 'JPG', 'jpeg', 'JPEG', 'gif', 'GIF');
$taille_max = 30000;
$dest_dossier = '../Admin-Etabs/DocumentsSE2009/';
// vérifications
if( !in_array( substr(strrchr($_FILES['logo']['name'], '.'), 1), $extensions_ok ) )
{
$message = "<img src=\"img/mal.png\" align=\"absmiddle\" />Veuillez sélectionner une image de type jpg, jpeg, png ou gif!";
}
elseif( file_exists($_FILES['logo']['tmp_name'])and filesize($_FILES['logo']['tmp_name']) > $taille_max)
{
$message = "<img src=\"img/mal.png\" align=\"absmiddle\" />Votre image doit faire moins de 30Ko !";
}
// copie du fichier
if(!isset($message))
{
$dest_fichier = basename($_FILES['logo']['name']);
// formatage nom fichier
//On renomme
$dest_fichier = "Illustration_".$_POST['nom_etab']['tmp_name'];
// enlever les accents
$dest_fichier = strtr($dest_fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ','AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
// remplacer les caracteres autres que lettres, chiffres et point par _
$dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
// copie du fichier
move_uploaded_file($_FILES['logo']['tmp_name'], $dest_dossier . $dest_fichier);

*******************************************************

Je vous remercie d'avance
A voir également:

2 réponses

Utilisateur anonyme
 
salut
$dest_fichier = "Illustration_".$_POST['nom_etab']['tmp_name']; 

suffit de lire :)
0
salimdrame Messages postés 71 Statut Membre 1
 
C'est justement ce que je ne comprends pas. Ça a l'air correct mais je perds l'extension
0
Utilisateur anonyme
 
ton probleme viens certainement de la
$dest_fichier = basename($_FILES['logo']['name']);
// formatage nom fichier
//On renomme
$dest_fichier = "Illustration_".$_POST['nom_etab']['tmp_name']; 

rtfm https://www.php.net/manual/fr/features.file-upload.post-method.php ;)
0