changer le nom du fichier avant un upload

Répondre
shushu
le 30/03/2008 à 16:10
shushu
Bonjour à tous, Je voudrais savoir si une personne sait me dire comment faire pour changer le nom d'un fichier avant de le uploader sur mon serveur
ex: le fichier "images.jpg" devient "001logo.jpg".

Merci d'avance pour votre aide
Ensemble c'est en un mot, comme unis
LA GLOBULE
le 30/03/2008 à 17:39
LA GLOBULE
Et pourquoi ne pas changer le nom du fichier une fois l'upload fait ?

Ca parait plus logique : tu reçois des données $_FILES, à toi d'en faire ce que tu veux.
De toutes façons, tu ne pourras pas renommer le fichier sur le poste du client.
shushu
le 04/04/2008 à 20:56
shushu
Merci pour ta réponse. Etant un novice (plus que ça même) tu pourrais me dire comment faire.

Merci d'avance
Ensemble c'est en un mot, comme unis
LA GLOBULE
le 04/04/2008 à 23:53
LA GLOBULE
Montre nous comment tu procèdes actuellement pour ton chargement de fichier actuellement, ça sera plus facile pour t'expliquer.
shushu
le 10/04/2008 à 19:42
shushu
Merci pour ton aide, je réponds assez lentement car c'est par passion, et mon boulot prend du temps
voila mon code pour le upload

<?php
$target = 'images/'; // Repertoire cible
$extension = 'jpg'; // Extension du fichier sans le .
$max_size = 100000; // Taille max en octets du fichier
$width_max = 300; // Largeur max de l'image en pixels
$height_max = 300; // Hauteur max de l'image en pixels

//---------------------------------------------
// DEFINITION DES VARIABLES LIEES AU FICHIER
//---------------------------------------------

$nom_file = $_FILES['fichier']['name'];
$taille = $_FILES['fichier']['size'];
$tmp = $_FILES['fichier']['tmp_name'];

//----------------------
// SCRIPT D'UPLOAD
//----------------------
?>
<html>
<head>
<title>Upload d'une image sur le serveur !</title>
</head>
<body>
<?php
if(!empty($_POST['posted'])) {
// On vérifie si le champ est rempli
if(!empty($_FILES['fichier']['name'])) {
// On vérifie l'extension du fichier
if(substr($nom_file, -3) == $extension) {
// On récupère les dimensions du fichier
$infos_img = getimagesize($_FILES['fichier']['tmp_name']);

// On vérifie les dimensions et taille de l'image
if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($_FILES['fichier']['size'] <= $max_size)) {
// Si c'est OK, on teste l'upload
if(move_uploaded_file($_FILES['fichier']['tmp_name'],$target.$_FILES['fichier']['name'])) {
// Si upload OK alors on affiche le message de réussite
echo '<b>Image uploadée avec succès !</b>';
echo '<hr />';
echo '<b>Fichier :</b> ', $_FILES['fichier']['name'], '<br />';
echo '<b>Taille :</b> ', $_FILES['fichier']['size'], ' Octets<br />';
echo '<b>Largeur :</b> ', $infos_img[0], ' px<br />';
echo '<b>Hauteur :</b> ', $infos_img[1], ' px<br />';
echo '<hr />';
echo '<br /><br />';
} else {
// Sinon on affiche une erreur système
echo '<b>Problème lors de l\'upload !</b><br /><br /><b>', $_FILES['fichier']['error'], '</b><br /><br />';
}
} else {
// Sinon on affiche une erreur pour les dimensions et taille de l'image
echo '<b>Problème dans les dimensions ou taille de l\'image !</b><br /><br />';
}
} else {
// Sinon on affiche une erreur pour l'extension
echo '<b>Votre image ne comporte pas l\'extension .jpg !</b><br /><br />';
}
} else {
// Sinon on affiche une erreur pour le champ vide
echo '<b>Le champ du formulaire est vide !</b><br /><br />';
}
}
?>
<form enctype="multipart/form-data" action="<?php echo $PHP_SELF; ?>" method="POST">
<b>Envoyer le fichier :</b><br />
<input type="hidden" name="posted" value="1" />
<br>
<input name="fichier2" type="file" id="fichier2" />
<input type="submit" value="Uploader" />
</form>
</body>
</html>
Ensemble c'est en un mot, comme unis
Keika
le 11/04/2008 à 09:23
Keika
salut,

action="<?php echo $PHP_SELF; ?>" << ca passe ca ? j'aurai utilise $_SERVER['PHP_SELF']

et quand tu deplaces le fichier uploade, au lieu de reutiliser $target.$_FILES['fichier']['name'], fait $target.le_nom_voulu
Le PHP --> C'est dur !
LA GLOBULE
le 11/04/2008 à 10:01
LA GLOBULE
PHP_SELF est à fuir comme la peste. C'est dans 95% des cas source de faille de sécurité.
LA GLOBULE
le 11/04/2008 à 16:33
LA GLOBULE
shushu : je ne t'oublie pas, je pars en WE là, mais je regarderais ton message dimanche soir.
vitchi
le 14/04/2008 à 17:32
vitchi
C'est important quecela soit renomme comme tu le souhaites?

Sinon tu peux jeter un coup d'oeil ici:

http://www.lephpfacile.com/wall/wall-1549.php

Cela renomme aussi les fichiers mais en md5 avec un id unique... afin d'eviter les eventuels doublons...
shushu
le 15/04/2008 à 19:48
shushu
Merci vitchi pour ta réponse mais oui, c'est important car il va après le chercher sur une autre page. Et il est configurer pour ce nom de fichier. Mais merci quand même.
Ensemble c'est en un mot, comme unis
Répondre
LoadingChargement en cours