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] Test existence d'un fichier sur le web


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 147
    Par défaut [Dates] Test existence d'un fichier sur le web
    Bonjour,

    je cherche à tester sur l'existence d'un fichier sur le web.

    un membre m'a déjà aidé à trouver la fonction suivante pour vérifier si le lien est mort ou bien s'il est en marche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
      echo phpversion();
      echo '<br>';
     
      $entetes = get_headers(chemin_du_fichier);
     
      echo '<pre>';
      print_r($entetes);
      echo '</pre>';
     
    ?>
    ce code m'affiche si le lien est OK :
    Code X : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Array
    (
        [0] => HTTP/1.1 200 OK
        [1] => Date: Fri, 01 Feb 2008 14:28:42 GMT
        [2] => Server: Apache/ProXad [Jan 10 2008 05:02:06]
        [3] => Last-Modified: Thu, 08 Nov 2007 21:40:38 GMT
        [4] => ETag: "17485c-5a98024-47338256"
        [5] => Connection: close
        [6] => Accept-Ranges: bytes
        [7] => Content-Length: 94994468
        [8] => Content-Type: video/x-ms-wmv
    )

    sinon et si le lien est mort il m'affiche :

    Code X : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Array
    (
        [0] => HTTP/1.1 404 Not Found
        [1] => Date: Fri, 01 Feb 2008 14:54:46 GMT
        [2] => Server: Apache/1.3.34 (Unix) mod_gzip/1.3.19.1a
        [3] => Last-Modified: Thu, 17 Jan 2008 14:12:34 GMT
        [4] => ETag: "2dd6f-534-478f6252;47a332ab"
        [5] => Accept-Ranges: bytes
        [6] => Content-Length: 1332
        [7] => Connection: close
        [8] => Content-Type: text/html; charset=UTF-8
    )

    mais je cherche à faire quelque chose du genre :

    Code X : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    si (fichier_existe) alors
    faire Traitement1
    sinon
    faire Traitement2

    quelqu'un peut m'aider ?

  2. #2
    Membre éprouvé
    Inscrit en
    Juin 2006
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 133
    Par défaut
    Bonjour,

    Il y a peut être meilleur que ma solution, mais vous pouvez tester ceci, si rien ne change dans le texte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if ($entetes[0] == "HTTP/1.1 200 OK")
    {
        // code du lien actif
    }
    else
    {
       // code du lien mort
    }

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Par défaut
    Je vous ai donné un début de réponse dans la précédente thread. Un peu comme Andalor, je pencherai pour vérifier le contenu de la réponse HTTP :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      if (strpos($entetes[0], ' 200 ') > 0) echo 'OK!';
      else echo 'NOK!';
    Par contre, faites attention, car ce n'est pas toujours "HTTP/1.1".

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 147
    Par défaut
    OK ca marche trés bien merci les gars

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. la date de création d'un fichier sur un site ftp??
    Par timsah dans le forum C++Builder
    Réponses: 5
    Dernier message: 15/01/2006, 21h27
  2. Réponses: 4
    Dernier message: 15/09/2005, 13h27
  3. [FTP] Test de l'existence d'un fichier sur un serveur ftp
    Par lapartdombre dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 01/08/2005, 14h13
  4. [C++ .NET] Test existence d'un fichier
    Par remixxl dans le forum VC++ .NET
    Réponses: 3
    Dernier message: 26/07/2004, 19h21

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