Bonjour,

J'ai développé une console permettant d'uploader des fichiers (il s'agit ici de photos, mais ça n'en restera pas là).

Après avoir tenté d'attribuer aux fichiers uploadés des droits,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
$IMAGE_LONG=$save_path.(($_FILES["Filedata"]["name"]));
$ZZ=chmod($IMAGE_LONG,0777);
j'ai bien du constater que ça ne fonctionnait pas à tous les coups. Pourquoi, je ne le sais toujours pas.

J'ai donc décidé de contourner le problème et écrit un petit script destiné à contrôler et corriger les droits des fichiers qui n'auraient pas les bons.

Et ça marche.... enfin pas toujours et c'est là ma question:
Voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
$PHOTO=$REPERTOIRE_PHOTOS."/800/".$PHOTOS_ORIG[$i];
//echo '<img src="'.$PHOTO.'" />';
echo $PHOTO."    --->   ";
$PERM=substr(sprintf('%o', fileperms($PHOTO)), -4);
echo $PERM."<br>";
if ($PERM !=777)  {
	chmod($PHOTO,0777);
}
et voici le résultat obtenu :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
../../console_photos/galeries/galerie_75/800/DSC_0851.JPG ---> 0777
../../console_photos/galeries/galerie_75/800/DSC_0809.JPG ---> 0777
../../console_photos/galeries/galerie_75/800/DSC_0811.JPG ---> 0777
../../console_photos/galeries/galerie_75/800/DSC_0814.JPG ---> 0777
../../console_photos/galeries/galerie_75/800/DSC_0818.JPG ---> 0777
../../console_photos/galeries/galerie_75/800/DSC_0826.JPG ---> 0777
../../console_photos/galeries/galerie_75/800/DSC_0827.JPG ---> 0777
../../console_photos/galeries/galerie_75/800/DSC_0831.JPG ---> 0777
../../console_photos/galeries/galerie_75/800/DSC_0844.JPG ---> 0777
alors que mon (mes) clients FTP montre bien que les droits du 5e fichier sont différents:


Pourquoi la fonction fileperms() renvoie-t-elle parfois des résultats faux ?

D'avance merci à qui éclairera ma lanterne !

Mike