Renommer un dossier

Eléphant du PHP | 71 Messages

18 déc. 2005, 17:34

Bonjour,
je travaille actuellement sur un script de galerie d'image pour mon site. Tout marche bien au niveau du transfert, des vignettes, mais je bloque sur une chose très simple,mais qui m'embête.

En fait, lorsque je créé un nouvel album photo, j'ai un champ date pour informer de quand date les photos.
Cette date est reprise également dans le nom du dossier, à partir du premier envoi d'une photo (lorsque j'envoi la première phot, un dossier se créé automatiquement, avec comme nom la date toute collée suivie de l'id de l'album.

Tout marche bien jusque là, mais j'ai une option qui permet d'éditer l'album, et donc la date aussi.
Lorsque je modifie la date, j'aimerais que le nom du dossier, s'il existe, change également. Or, il ne se passe rien. Voici mon bout de code qui fait en principe le renomage
if(is_dir("$ADRESSE_SITE/galerie_photos/$nom_dossier_album_ancien")) { 
rename("$ADRESSE_SITE/galerie_photos/$nom_dossier_album_ancien","$ADRESSE_SITE/galerie_photos/$nom_dossier_album_nouveau"); 
}
$ADRESSE_SITE est de cette forme : http://monsite.free.fr


Merci d'avance de votre aide ! (ça doit etre tout bete, mais jbloque betement dessus :lol:

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

18 déc. 2005, 18:07

Salut, esaie de faire la meme chose mais avec un chemin relatif ... sans $ADRESSE_SITE

regarde la doc.

tu peut ajouter un test pour verifier si l'opération s'est bien déroulée:
if(rename(...))
  echo 'Ok';
else    echo 'erreur';

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 71 Messages

19 déc. 2005, 08:27

Merci je vias essayer de suivre ton conseil (j'ai déjà regardé la doc, mais elle ne m'a pas renseigné beaucoup)

Eléphant du PHP | 71 Messages

19 déc. 2005, 09:37

C'est bon, j'ai trouvé le problème, qui était tout bête.
En fait, la variable n'était pas interprétée, donc la fonction ne trouvait pas (a juste titre) le dossier.
Voici la solution que j'utilise à présent :
if(is_dir('../../galerie_photos/'.$nom_dossier_album_ancien)) 
{ 
rename('../../galerie_photos/'.$nom_dossier_album_ancien,'../../galerie_photos/'.$nom_dossier_album_nouveau); 
}
Merci de votre aide :wink:

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

19 déc. 2005, 13:36

manque plus que le [Résolu] :wink:

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute