Date erronée avec filectime (January 01 1970)

barnabe-est
Invité n'ayant pas de compte PHPfrance

21 juil. 2005, 14:28

Bonjour,

Je suis entrain de réaliser un petit site intranet en php. J'ai une fonction qui permet de lister des fichiers contenu dans un dossier. Aucun problème pour le listing, mais lorsque je veux afficher la date de création du fichier avec la filectime, une date bidon m'est renvoyée en permanence : "January 01 1970".

Mon code :

Code : Tout sélectionner

$dir = "mon_chemin"; if (is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { echo $file; echo date("F d Y H:i:s",filectime($file)); } closedir($dh); }}
Je travail avec un serveur IIS et php5. Mes fichiers sont stockés sur mon serveur dans un site ftp créé avec IIS (pour y accéder : ftp://monserveur/repertoire). J'ai essayer en ajoutant les fichiers par copier/coller puis en utilisant un formulaire avec move_uploaded_file(); ça n'a rien changé toujours le meme probleme.

J'au aussi essayé en stockant mes fichiers dans un repertoire web de base (pas ftp) le probleme est le même.

Je ne sais plus quoi essayé. Si qqun peut m'aider.
Merci et bonne journée

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

21 juil. 2005, 14:33

l'argument de passage à filectime n'est pas correct.

Tu lui passes une ressource retournée par readdir alors qu'il attend une chaine de caractère qui représente le chemin d'accès

En plus, 01/01/1970 n'est pas une date bidon, c'est le début du temps Unix, soit le timestamp = 0 ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Invité
Invité n'ayant pas de compte PHPfrance

21 juil. 2005, 15:32

Merci j'ai réussi !

j'ai changé
echo date("F d Y H:i:s",filectime($file));
par
echo date("F d Y H:i:s",filectime($dir.$file));
et tout va bien.

bonne journée