Page 1 sur 1

fonction rename()

Posté : 09 mai 2006, 20:58
par Blackmog
A partir d'une page situer dans un dossier projet, je souhaiterai renomé un fichier situé dans le dossier bdd.

rename("F:/EasyPHP1-8/www/Projet/bdd/transfere.txt", "F:/EasyPHP1-8/www/Projet/bdd/reservation.txt");

Le fichier est renomé sans probleme, cepandant je souhaiterais que les url soit donner en chemin relatif

rename("/bdd/transfere.txt", "/bdd/reservation.txt");

mais cela ne fonctionne pas. Si quelqu'un pourrai m'éclairer de ses lumières.

Posté : 09 mai 2006, 21:24
par Vaedan
Afin d'utiliser en url relative, tu peux t'y prendre de 2 manières (identiques) :
rename("./bdd/transfere.txt", "./bdd/reservation.txt"); 
rename("bdd/transfere.txt", "bdd/reservation.txt");
Voila chef

Posté : 09 mai 2006, 21:49
par Blackmog
Merci beaucoup, sa marche super

Posté : 10 mai 2006, 00:32
par Ryle
Pour info, la fonction rename (comme la plupart des fonctions qui opèrent sur les fichiers ou dossiers du serveur) ne marche pas avec des url mais avec les chemins physiques de la machine.

C'est pour ça que le fait de commencer le chemin par / ne fonctionnait pas, il considère qu'il s'agit de la racine (et donc chemin absolu). Les chemins relatifs s'obtiennent donc bien à partir de l'emplacement du script (soit directement avec le nom du dossier, soit en préfixant par "./", soit en préfixant par "../" pour remonter dans le dossier parent) :)