Afficher des fichiers textes et archivage

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Afficher des fichiers textes et archivage

Re: Afficher des fichiers textes et archivage

par Imer2008 » 26 janv. 2010, 09:41

Bonjour,

Bon finalement ca marche. Effectivement, n'ayant pas les droits d'affichage/lecture sur le dossier d'origine, je ne pouvais afficher les fichiers txt. Du coup, j'ai créé un fichier .bat qui me copie en local les fichiers et la ca marche impec.

Merci de ton aide en tout cas.

Re: Afficher des fichiers textes et archivage

par AB » 22 janv. 2010, 16:55

Vérifie sur un autre dossier pour voir, ou fait des essais en local.

Sinon peut-être que la fonction glob ne fonctionne pas sur ton serveur. Je me souviens avoir lu des topic qui disaient que cette fonction ne fonctionnait pas chez free par exemple...

Re: Afficher des fichiers textes et archivage

par Imer2008 » 22 janv. 2010, 15:51

Sauf que sur ce serveur, nous n'avons pas de droit de modifs/écriture, etc.

Juste de la lecture...

Du coup je reste sur le php sans utilisation de bases... Mais bon, cela ne fonctionne toujours pas.

Re: Afficher des fichiers textes et archivage

par AB » 22 janv. 2010, 15:36

J'ai édité mon précédent message.
Pour le reste cela devrait fonctionner. Ce doit être le chemin que tu indiques par rapport au script qui n'est pas bon.

Re: Afficher des fichiers textes et archivage

par Imer2008 » 22 janv. 2010, 14:16

Bon alors je dois pas etre doué...

J'écris ce code pour qu'il ne m'affiche que les fichiers de 2005 (mailexploit_2005*.txt)
 <td><?php 
$mailexploit2005 = glob("//c23-dc200/ROOT/Canam/Transferts/mailexploit/r/mailexploit_2005*.txt");
foreach ($mailexploit2005 as $filename) {
echo "$filename";?>
<br>
<?php 
 }?>
Mais des que je le lance, il ne m'affiche rien ? :shock:

Re: Afficher des fichiers textes et archivage

par AB » 22 janv. 2010, 14:03

Oui je comprend bien que ça ferait pas mal de travail, c'est pour cela que je disais 's'il est encore temps de le faire...' :wink:

Cela dit avec un seul fichier par jour, ta solution est encore gérable.

Avec glob() tu devrais pouvoir t'en sortir assez facilement.


EDIT : Quoiqu'en y réfléchissant deux secondes de plus, ce pourrait être intéressant d'enregistrer en bdd non pas seulement les noms des fichiers, mais également leur contenu. En plus de ne plus avoir potentiellement des milliers de fichiers dans ton répertoire cela permettrait éventuellement de pouvoir faire des recherches sur des mots contenus dans les articles.
Et finalement la manip peut être automatisée : pour chaque fichier listé dans le répertoire tu fait une insertion dans la base. Enfin bon, une idée en passant que tu pourras toujours réaliser plus tard si le besoin s'en fait sentir.

Re: Afficher des fichiers textes et archivage

par Imer2008 » 22 janv. 2010, 13:54

Je pense aussi que l'utilisation de base de données serait plus aisée, sauf que... cela voudrait surement dire répertorier les fichiers txt dans une base et là il y a quand meme plus de 1000 fichiers txt...

Donc je vais rester sur du php simple. Je ne cherche pas à faire un truc compliqué, c'est juste histoire de simplifier l'utilisation des fichiers txt et de leur archivage sur une page php.

Je pars me renseigner sur cette fonction glob et voir ce que je peux faire.

Re: Afficher des fichiers textes et archivage

par AB » 22 janv. 2010, 13:13

Mon idée se serait d'utiliser une table de bdd pour gérer tout ça.

S'il est encore temps de le faire ce serait bien d'étudier la question. Ce serait beaucoup plus souple, beaucoup plus rapide et avec potentiel évolutif incomparable comparé à cette méthode.

Mais si tu souhaites continuer avec ta méthode, il faut s'intéresser à la fonction glob() de php

Afficher des fichiers textes et archivage

par Imer2008 » 22 janv. 2010, 12:02

Bonjour,

Je sollicite votre aide pour un problème surement très simple.

Nous recevons quotidiennement des fichiers txt nommés de la façon suivante :
mailexploit_AAAAMMJJ_HHMM.txt
AAAA : année
MM : mois
JJ : jour
HH : heure
MM : minute

Premièrement,
Je souhaiterais dans une page php afficher le fichier du jour (je n'ai pas besoin de l'heure), par exemple si aujourd'hui j'ai le fichier mailexploit_2010122_0803.txt, je souhaiterais l'afficher. Je ne veux pas tenir compte des heures et minutes, puisque de toute facon, les fichiers sont uniques par jour.

J'avais un début de code écrit de la facon suivante:
<?php
$dir = "//c23-dc200/ROOT/Canam/Transferts/mailexploit/r/";
$nom_fichier = "mailexploit_".date("Ymd")."*.txt";
if (is_dir($dir)) {
     if ($dh = opendir($dir)) {
          while (($file = readdir($dh)) !== false) {
               $pos = strpos($file,$nom_fichier);
	      if ($pos !== false) {
	           echo "<a href='file://c23-dc200/ROOT/Canam/Transferts/mailexploit/r/$file' target='_blank'>Messagerie du ".date("d/m/Y")."</a>";
	      }
               }
          closedir($dh);
     }
} ?>
En pensant que le * remplacerait la suite de mon fichier mais cela ne marche pas.

Deuxièmement, les fichiers existent depuis 2005. Je souhaiterais créer des archives pour chaque année. En gros, quelqu'un souhaite voir les fichiers de l'année 2005, il clique sur un lien "Archives 2005", etc.


Si quelqu'un a une petite idée pour m'aider, je le remercie d'avance !

Cordialement,