Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2925 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Fichier distant (http) : date de derniere modification

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Fichier distant (http) : date de derniere modification

n°210804
yepyep
Posté le 08-09-2002 à 23:25:33  profilanswer
 

salut,
 
Je cherche une méthode pour déterminer la date de derniere modification d'un fichier .pdf distant sur http. Quelqu'un a une idée?
 
Une autre méthode serait de recupérer le fichier regulierement, et de le comparer avec le fichier n-1 récupéré. OK, mais je n'arrive pas a récupérer correctement le fichier pdf: quand je le stocke en local il n'est pas valide:
 

Code :
  1. <?
  2. $fp = fopen("http://www.site.com/lefichier.pdf","r" );
  3. if ($fp)
  4. {
  5. $fp2 = fopen("test.pdf","w" );   // fichier local
  6. while($donnees = fgets($fp,$taille))
  7. {
  8. fputs($fp2,$donnees);  // on ecrit le fichier dans test.pdf
  9. }
  10. }
  11. fclose($fp);
  12. fclose($fp2);
  13. ?>


 
Quelqu'un peu m'aider sur l'une des 2 méthodes?
 
Merci d'avance.


Message édité par yepyep le 08-09-2002 à 23:26:04
mood
Publicité
Posté le 08-09-2002 à 23:25:33  profilanswer
 

n°210805
youdontcar​e
Posté le 08-09-2002 à 23:29:20  profilanswer
 

tu regardes du côté des headers http, tu as 'Last-modified' qui te donne l'info.
 
ou le ETag qui te donne (je crois) un hash.
 
ou le 'If-Modified-since' qui te renvoie un 304 (not modified) si le fichier n'a pas changé.

n°210814
yepyep
Posté le 08-09-2002 à 23:53:33  profilanswer
 

Merci pour ces infos, mais tu peux me donner un exemple de script qui lit un header, par ce que je ne sais pas comment m'y prendre.
 
merci d'avance.
 

youdontcare a écrit a écrit :

tu regardes du côté des headers http, tu as 'Last-modified' qui te donne l'info.
 
ou le ETag qui te donne (je crois) un hash.
 
ou le 'If-Modified-since' qui te renvoie un 304 (not modified) si le fichier n'a pas changé.



n°210815
youdontcar​e
Posté le 09-09-2002 à 00:03:22  profilanswer
 

http://www.php.net/fsockopen
 
<?php
$fp = fsockopen ("www.example.com", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br>\n";
} else {
    fputs ($fp, "GET / HTTP/1.0\r\nHost: www.example.comrnrn" );
    while (!feof($fp)) {
        echo fgets ($fp,128);
    }
    fclose ($fp);
}
?>
 
ce que tu envoies :
* chaque header est terminé par un retour à la ligne (\r\n)
* pour terminer les headers, double retour à la ligne
 
ce que tu reçois
* pareil, retour à la ligne
* pareil, double retour
 
tu essayes le script, tu regardes ce qu'il envoit, tu affiches ce qu'il reçoit, etc.

n°210842
yepyep
Posté le 09-09-2002 à 09:08:32  profilanswer
 

J'ai testé ce script, mais je n'arrive a le faire marcher correctement: cela ne marche que sur la age d'accueil, je n'arrive pas a faire la requete GET qui convient pour arriver sur le fichier (http://www.lesite.com/rep1/rep2/fic.pdf).
je faist un GET /rep1/rep2/fic.pdf , mais ca ne marche pas...
 
Quelqu'un peu m'aider?
 

youdontcare a écrit a écrit :

http://www.php.net/fsockopen
 
<?php
$fp = fsockopen ("www.example.com", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br>\n";
} else {
    fputs ($fp, "GET / HTTP/1.0\r\nHost: www.example.comrnrn" );
    while (!feof($fp)) {
        echo fgets ($fp,128);
    }
    fclose ($fp);
}
?>
 
ce que tu envoies :
* chaque header est terminé par un retour à la ligne (\r\n)
* pour terminer les headers, double retour à la ligne
 
ce que tu reçois
* pareil, retour à la ligne
* pareil, double retour
 
tu essayes le script, tu regardes ce qu'il envoit, tu affiches ce qu'il reçoit, etc.




Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Fichier distant (http) : date de derniere modification

 

Sujets relatifs
Problème avec fichier .htaccess[PHP/MySQL] Extraire la dernière valeur d'un champs.
VB: ocx pour voir fichier image *.rsbrecup des données formatées, depuis un fichier dans un flexgrid
[C++]recuperer la taille et la date de creation d'un fichier par http?[XMLDOM] Formatage d'un fichier xml avec XmlDom
c koi la fonction qui donne la date en php (en lettre) ?couper la fin d'un fichier
Plus de sujets relatifs à : Fichier distant (http) : date de derniere modification


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR