Problème de droits pour touch(), chmod - PHP - Programmation
Marsh Posté le 20-09-2005 à 15:35:30
est ce que tu es sur que le chemin du fichier est bon dans ton script php ? car c'est sovuent un peu le bordel et je me souviens avoir eu un pb similaire avec des unlink, et ca venai du path
Marsh Posté le 20-09-2005 à 15:38:48
Il me semble que ce genre de fonctions peut être désactivé via le php.ini, aussi...à vérifier.
Marsh Posté le 20-09-2005 à 15:48:49
Oui mr_mat, mes fichiers sont au même niveau que mon script (.)
skeye je ne cherche pas à désactivé ces fonctions mais plutôt qu'elles fonctionnent
Marsh Posté le 20-09-2005 à 15:49:28
i'n'i a écrit : skeye je ne cherche pas à désactivé ces fonctions mais plutôt qu'elles fonctionnent |
ben justement, vérifie que c'est pas déjà désactivé...
Marsh Posté le 20-09-2005 à 15:50:32
et pour les chemins, je te conseille de toujours travailler en chemins absolus, ça te permettra de toujours pouvoir vérifier facilement que tu te plantes pas...
Marsh Posté le 20-09-2005 à 16:46:22
ok! mais je ne trouve qu'un fichier /etc/php.ini.default, pas de php.ini et quand j'ouvre se fichier, ça ne par le pas de touch() ou de chmod()
Marsh Posté le 20-09-2005 à 17:01:05
Est ce que php est propriétaire du fichier?
Fait le teste en faisant un script qui génère un fichier et fais un touch dessus. S'il y a pas de souci c'est que sa vient de là. S'il y a un probleme de permission c'est que tu pointes bien sur le fichier.
Marsh Posté le 20-09-2005 à 17:12:01
Pour le php.ini, c'est bon, il faut renommer php.ini.default en php.ini et le mettre dans le répertoire courant. J'ai lu ce fichier (où ça parle de fonctions et aucune n'est désactivée car j'ai safety_mode = off.
Pour répondre à Berceker United, si touch() ne trouve pas le fichier spécifier, elle le créer. Or quand je fais ça, j'ai le message touch(): Unable to create file !
Marsh Posté le 20-09-2005 à 17:39:34
Je me suis mis sous windows (j'étais sous macOS), et j'ai réussit à faire un touch pour créer un fichier qui n'existait pas, mais ne n'arrive toujours pas à changer une date de modification, y compris sur le fichier que j'ai créé en php !
touch(): Utime failed: Permission denied
Marsh Posté le 20-09-2005 à 17:55:39
Bizarre, sous win j'ai déjà utilisé cette fonction et elle fonctionnait de mon coté.
Marsh Posté le 20-09-2005 à 18:01:14
tu l'as utilisée pour modifier une date de modification ou pour créer un fichier?
Marsh Posté le 20-09-2005 à 18:46:31
t as fait comment!?
tu utilisais easyphp? (moi c'est mon cas)
t'a ligne de code étais de quel forme?
ton fichier dans quel répertoire?
Marsh Posté le 20-09-2005 à 19:10:26
Rien a voir avec l'une de tes indications. Regarde si ton fichier n'est pas en lecture seul.
Marsh Posté le 22-09-2005 à 15:55:08
ça y est j'y suis arrivé, j'arrive à faire un touch sans paramêtre, qui me met donc la date de modification du fichier à aujourd'hui, mais que sous windows, tant pis, je me passerai de mon mac pour faire mon appli.
Par contre touch est prototypée comme ceci : bool touch (string filename; int time , int atime) ou time est la date et atime l'heure souhaitée.
Mais en quels formats sont elles?
si je veux faire en sorte de modifier mon fichier pour qu'il soit daté du 13 fevrier 1999 à 14h30, quelle(s) fonction(s) peuvent me permettre de convertir ces date & heure et obtenir 2 integer?
Merci
Marsh Posté le 22-09-2005 à 17:52:23
Il y a un topic ici spécialement sur les dates.
Edit : http://forum.hardware.fr/hardwaref [...] 9104-1.htm
Marsh Posté le 20-09-2005 à 15:34:08
Salut à tous, je soihaite modifier des dates de modification de fichier à partir d'une page PHP.
J'utilise donc la fonction touch() prévue à cet effet, oui mais voilà j'ai l'erreur suivante :
touch(): Utime failed: Permission denied
Même si je mets tous les droits à mes fichiers, j'utilise la fonction chmod() qui provoque ce message :
chmod(): Operation not permitted
Alors comment faire, comment faut-il faire pour dire au php que dans mon repertoire cible, il a tous les droits?
Merci car je suis coincé.