Bonjour,
Je voudrais renommer un fichier uploadé à partir d'un formulaire à l'aide de la fonction rename() ou move_uploaded_file(). Pr le moment rien de compliquer.
Mnt ca se complique. Je voudrais que mes fichiers se renomment en fonction des choix que l'utilisateur a fait ds des checkbox de mon formulaire.
C'est à dire, il a le choix entre pls marques et un type d'action pr cette marque. Dc mon image devra se nommer "nomMarque_action.jpg"
Comment puis-je réintégrer le nom de mes input dans le nom de mon image ?
Voilà le code de mon upload et l'affichage des images :
Code:
<?
// Récupération du dossier dans lequel le fichier sera uploadé
$DESTINATION_FOLDER = 'upload/' ;
// Taille maximale de fichier, valeur en bytes
$MAX_SIZE = 50000000 ;
// Définition des extensions de fichier autorisées (avec le ".")
$AUTH_EXT = array( ".jpg", ".jpeg") ;
// Fonction permettant de vérifier si l'extension du fichier est
// autorisée.
function isExtAuthorized($ext){
global $AUTH_EXT;
if(in_array($ext, $AUTH_EXT)){
return true;
}else{
return false;
}
}
// On vérifie que le champs contenant le chemin du fichier soit
// bien rempli.
if(!empty($_FILES['fichier1']["name"])){
// Nom du fichier choisi:
$nomFichier = $_FILES['fichier1']["name"] ;
// Nom temporaire sur le serveur:
$nomTemporaire = $_FILES['fichier1']["tmp_name"] ;
// Type du fichier choisi:
$typeFichier = $_FILES['fichier1']["type"] ;
// Poids en octets du fichier choisit:
$poidsFichier = $_FILES['fichier1']["size"] ;
// Code de l'erreur si jamais il y en a une:
$codeErreur = $_FILES['fichier1']["error"] ;
// Extension du fichier
$extension = strrchr($nomFichier, ".") ;
// Si le poids du fichier est de 0 bytes, le fichier est
// invalide (ou le chemin incorrect) => message d'erreur
// sinon, le script continue.
if($poidsFichier <> 0){
// Si la taille du fichier est supérieure à la taille
// maximum spécifiée => message d'erreur
if($poidsFichier < $MAX_SIZE){
// On teste ensuite si le fichier a une extension autorisée
if(isExtAuthorized($extension)){
// Ensuite, on copie le fichier uploadé ou bon nous semble.
$uploadOk = move_uploaded_file($nomTemporaire, $DESTINATION_FOLDER . $nomFichier) ;
if($uploadOk){
echo("L'upload a réussi !<br><br>") ;
}
}else{
echo ("Files with extension $extension can't be upload<br>") ;
}
}else{
$tailleKo = $MAX_SIZE / 1000;
echo("You can't upload files with higher size than tailleKo Ko.<br>");
}
}else{
echo("The selected file is not correct <br>");
}
}else{
echo("You didn't choose a file<br>");
}
//ouvre le repertoire
$pointeur = opendir($DESTINATION_FOLDER) ;
$i = 0 ;
//stocke les noms de fichiers images dans un tableau
while ($nomFichier = readdir($pointeur)) {
$tab_image[$i] = $nomfichier ;
$i++;
}
//on ferme le répertoire
closedir($pointeur) ;
//affichage des images
for ($j=0;$j<=$i-1;$j++)
{
$image = '<img src="'.$DESTINATION_FOLDER.'/'.$tab_image[$j].'"/>' ;
}
?>