IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Dates] pb avec fonction filemtime


Sujet :

Langage PHP

  1. #1
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut [Dates] pb avec fonction filemtime
    Salut,

    J'ai un petit souci avec cette fonction, en effet lorsque j'essaie de récupérer la date de dernière modif d'un fichier, elle me retourne FALSE sans que j'arrive à comprendre pourquoi.
    Je vous ai mis ci-dessous le code concerné en espérant que vous pourrez m'aider...
    Pour info, les fichiers sont un peu particuliers, en effet, ils sont vides et les informations que je veux récupérer sont comprises dans le nom du fichier, par conséquent, et c'est peut être là le problème, le fichier n'a pas d'extension et son nom est de la forme "123456789012_9000".


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    while($file = readdir($handle)) 
    	{
    		if($file != "." && $file != "..") 
    			{
    				$files[] = $file;
    				echo "<br>Tableau avant tri: <br>";
     
    				if(filemtime($file))
    				{
    					echo "<br>Nom: ".$file.", date: ".filemtime($file)." <br>";
    				}
    				else
    				{
    					echo "<br>Nom du fichier: ".$file;
    					echo "<br>Impossible de réucpérer la date!<br>";
    				}
     
    			}
    	}

  2. #2
    Membre actif Avatar de hunter
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2004
    Messages : 208
    Points : 216
    Points
    216
    Par défaut
    tu as bien les doits ?? sur le dossier et les fichiers ??

  3. #3
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Essaye clearstatcache
    Essaye filectime
    Essaye de mettre quelque chose dans ton fichier

    Désolé j'ai que ça sous la main

    EDIT: grilled en plus j'ai pas pensé aux droits

  4. #4
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Oui, j'ai bien tous les droits sur mes fichiers...

    J'ai essayé clearstatcache, filectime et de mettre quelque chose dans le fichier rien n'y fait...

    J'ai même carrément créé un fichier "toto.txt" qui n'est pas vide et ça ne fonctionne pas non plus.

    Je n'ai rien trouvé concernant une quelconque librairie à activer, bref, je sèche...

  5. #5
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    essaye de lancer ta boucle sur un autre répertoire, là où il y a tes sources (des fichiers normaux quoi)

  6. #6
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Oui, effectivement, en essayant sur un autre répertoire, ça fonctionne bien mais je ne comprend pas pourquoi?

  7. #7
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Ca vient peut-etre de tes fichiers "zarbis"
    Tu as dis que tu as testé avec un fichier toto.txt
    modifie le (rajoute des caracteres à la fin) et retente d'afficher le resultat de filemtime

  8. #8
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Non, ça ne marche pas mieux, j'ai même retiré tous les autres fichiers ("zarbis") dans ce répertoire et ait rajouté des caractères mais la fonction ne retourne toujours pas de date...

    [edit]Plus fort: si je déplace le fichier toto.txt qui était tout seul dans un répertoire contenant également précédemment des fichiers "zarbes" et que je le place dans un répertoire dans lequel j'arrive à récupérer la date de dernière modif, et bien là, je récupère également la date de dernière modif de mon fichier toto...

    Bon, je vais essayer de mettre des fichiers "zarbes" dans ce répertoire pour voir comment ça réagit...

    [Edit 2]
    Ben oui, ça fonctionne aussi... je m'y perd...

  9. #9
    Membre actif Avatar de hunter
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2004
    Messages : 208
    Points : 216
    Points
    216
    Par défaut
    je suis casi sur que c'est les droits dans le quel tu as mis des fichiers zarbis

  10. #10
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Citation Envoyé par hunter
    je suis casi sur que c'est les droits dans le quel tu as mis des fichiers zarbis
    Pas tout compris...

    Tu veux dire les droits sur les fichiers? Non, ça ne change rien puisque quand je fais des essais avec d'autres répertoires, notamment, les exemples cités au dessus, ce sont les mêmes fichiers que je déplace simplement d'un répertoire à l'autre.
    Quand aux répertoires, c'est moi qui les créé et ils sont tous créés de la même façon par défaut...
    Mais si tu as une idée, je suis toute ouïe...

  11. #11
    Membre actif Avatar de hunter
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2004
    Messages : 208
    Points : 216
    Points
    216
    Par défaut
    comme j'écris mal

    as tu essaié par exemple d'ouvrir le fichier toto.txt avec fopen ?

    voir si ça ne bloque pas la déjà ...

  12. #12
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    J'ai pas tout compris tes tests. Qu'as-tu au final ?
    si tu mets les fichiers dans un répertoire ca marche, si tu les mets dans un autre ca marche pas ?

    Si c'est ça il y a peut-être un pb de droits comme le suggere hunter sur le répertoire mais si tu dis que tu crée de la meme facon tous tes repertoires alors je sais pas quoi dire... essaie de créer un autre rep
    Ce problème est assez "zarbe" à l'instar de tes fichiers

  13. #13
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Citation Envoyé par Mr N.
    J'ai pas tout compris tes tests. Qu'as-tu au final ?
    si tu mets les fichiers dans un répertoire ca marche, si tu les mets dans un autre ca marche pas ?

    Si c'est ça il y a peut-être un pb de droits comme le suggere hunter sur le répertoire mais si tu dis que tu crée de la meme facon tous tes repertoires alors je sais pas quoi dire... essaie de créer un autre rep
    Ce problème est assez "zarbe" à l'instar de tes fichiers
    C'est exactement ça!
    Dans un répertoire, ça marche et dans l'autre non, du point de vue des droits ils sont les mêmes sur tous les répertoires (que ça fonctionne ou non) quand à mes fichiers, comme dit même avec toto.txt qui est tout ce qu'il y a de plus classique, ça ne fonctionne pas...
    En plus comme dit, quel que soit le répertoire dans lequel je me trouve, je récupère toujours le nom du fichier...

    Sincèrement, moi non plus je ne sais pas...

  14. #14
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    workaround => travaille avec une base de données, c'est fait pour ça

  15. #15
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    dans ce même répertoire, est-ce que tu peux créer un fichier via php (fopen....) ?
    Essaye de créer puis modifier 2 ou 3 fois un fichier via php et d'afficher ensuite le filemtime ? (n'oublie pas le clearstatcache)


  16. #16
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Hum... là en l'occurence, je peux pas travailler avec une base, je t'explique (et tu vas comprendre la structure des noms de fichier), les fameux fichiers pour lesquels j'essaie d'obtenir la date de dernière modif sont envoyés directement dans un répertoire de mon serveur, leur nom est formé d'un identifiant et d'une mesure.
    Je veux donc extraire du nom l'identifiant et la mesure, pour ça pas de problème mais je ne veux afficher que les 5 plus récents, les suivants devant être supprimés du répertoire et là, problème puisque je n'arrive pas à récupérer la date de dernière modif...

  17. #17
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Je comprends bien que si tu avais pu utiliser une bd tu l'aurais fais.
    Tu as essayé ma proposition précédente ?

  18. #18
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Citation Envoyé par Mr N.
    dans ce même répertoire, est-ce que tu peux créer un fichier via php (fopen....) ?
    Essaye de créer puis modifier 2 ou 3 fois un fichier via php et d'afficher ensuite le filemtime ? (n'oublie pas le clearstatcache)

    Celle là? non, je ne l'avais pas vu, on a dû poster en même temps...

    Je vais essayer...

  19. #19
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Et bien pas de problème, dans aucun répertoire, j'arrive à créer le fichier, afficher sa date de création et afficher la date de modification après chaque modification...

    Du même coup, ça fonctionne maintenant!
    La date de dernière modification de ems fichiers "zarbes" est également affichée et est tout à fait correcte...

    J'voudrai bien savoir où est exactement le cafards!

    Je vais faire quelques tests et à titre d'info, je posterai les résultats ici...

    Un grand merci Mr N. (bien que je ne sois pas sûre que le problème soit réellement résolu...).

  20. #20
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Non, ben non, rien de concluant en fait, j'ai essayé de déplacer le répertoire qui me posait problème, de le replacer où il était initialement, de commenter tout le code que j'ai ajouté pour la création et la modification d'un nouveau fichier, etc... Ca fonctionne toujours!

    Ceci dit, je ne me plainds pas mais je suis frustrée de ne pas avoir compris le pourquoi du comment...

    Enfin, en attendans merci de votre aide.

Discussions similaires

  1. Réponses: 33
    Dernier message: 01/04/2009, 11h16
  2. aide avec fonction date
    Par l_artiste dans le forum VBA Access
    Réponses: 3
    Dernier message: 23/10/2008, 15h58
  3. [Dates] Bug avec ma fonction formatage de date
    Par groland dans le forum Langage
    Réponses: 6
    Dernier message: 14/03/2007, 15h24
  4. [Dates] Problème avec la fonction date()
    Par Kernald dans le forum Langage
    Réponses: 5
    Dernier message: 16/02/2007, 11h50
  5. [Dates] Problème avec la fonction header
    Par d.w.d dans le forum Langage
    Réponses: 2
    Dernier message: 06/09/2005, 16h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo