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 :

document distant : existe ou non ?


Sujet :

Langage PHP

  1. #1
    Inactif
    Inscrit en
    Février 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 25
    Points : 44
    Points
    44
    Par défaut document distant : existe ou non ?
    Bonjour,


    Comment savoir si une page ouverte par fopen existe ou non ?

  2. #2
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    En fonction du parametre associé !

    plus d'infos : fopen()

  3. #3
    Inactif
    Inscrit en
    Février 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 25
    Points : 44
    Points
    44
    Par défaut
    Citation Envoyé par RideKick
    En fonction du parametre associé !

    plus d'infos : fopen()
    exp:
    $file = fopen("http://www.site.com/file1.php", "r");
    Comment savoir si le fichier (http://www.site.com/file1.php) existe ou non.

  4. #4
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if (fopen("http://www.site.com/file1.php", "r")){
    echo "c'est cool";
    }
    else
    {
    echo "Le fichier n'existe pas ou vous n'avez pas les droits necessaires !";
    }

  5. #5
    Inactif
    Inscrit en
    Février 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 25
    Points : 44
    Points
    44
    Par défaut
    Citation Envoyé par RideKick
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if (fopen("http://www.site.com/file1.php", "r")){
    echo "c'est cool";
    }
    else
    {
    echo "Le fichier n'existe pas ou vous n'avez pas les droits necessaires !";
    }
    Lorsque le fichier n'existe pas, je reçoit un Warning,
    est-ce qu'il n'y a pas une autre maniere pour verifier l'existance d'un fichier ?

  6. #6
    Membre éprouvé
    Avatar de ozzmax
    Inscrit en
    Novembre 2005
    Messages
    977
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Novembre 2005
    Messages : 977
    Points : 959
    Points
    959
    Par défaut
    vérifie si c'est un fichier avant de l'ouvrir dans ce cas non?

    va voir ca is_file

  7. #7
    Inactif
    Inscrit en
    Février 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 25
    Points : 44
    Points
    44
    Par défaut
    Citation Envoyé par ozzmax
    vérifie si c'est un fichier avant de l'ouvrir dans ce cas non?

    va voir ca is_file
    mon pb c'est que l'URL n'est pas pour un fichier (comme http://site.fr/page.html) mais de ce type: http://www.site.fr/contenu_5.(chemin virtuel)Et http://www.site.fr/contenu_5 n'est pas un fichier mais un document qui existe.

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    Je ne suis pas sur que ca marche mais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if (@fopen("http://www.site.com/file1.php", "r")){
    echo "c'est cool";
    }
    else
    {
    echo "Le fichier n'existe pas ou vous n'avez pas les droits necessaires !";
    }

  9. #9
    Membre averti Avatar de TucSale
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    264
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 264
    Points : 325
    Points
    325
    Par défaut
    Bonjour,

    Autre prossibilité: utiliser file_exists

    ou encore voici une petite fonction trouvé sur php.net. Elle utilise fsockopen

    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
    20
    21
    22
    23
     function url_exists($url) {
           $a_url = parse_url($url);
           if (!isset($a_url['port'])) $a_url['port'] = 80;
           $errno = 0;
           $errstr = '';
           $timeout = 30;
           if(isset($a_url['host']) && $a_url['host']!=gethostbyname($a_url['host'])){
               $fid = fsockopen($a_url['host'], $a_url['port'], $errno, $errstr, $timeout);
               if (!$fid) return false;
               $page = isset($a_url['path'])  ?$a_url['path']:'';
               $page .= isset($a_url['query'])?'?'.$a_url['query']:'';
               fputs($fid, 'HEAD '.$page.' HTTP/1.0'."\r\n".'Host: '.$a_url['host']."\r\n\r\n");
               $head = fread($fid, 4096);
               $head = substr($head,0,strpos($head, 'Connection: close'));
               fclose($fid);
               if (preg_match('#^HTTP/.*\s+[200|302]+\s#i', $head)) {
               $pos = strpos($head, 'Content-Type');
               return $pos !== false;
               }
           } else {
               return false;
           }
       }

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    J'ai eu le même problème iag1980.
    La commande de ratapapa fonctionne à merveille.
    Merci

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

Discussions similaires

  1. Ouverture d'un document Word existant
    Par pinson dans le forum Delphi .NET
    Réponses: 1
    Dernier message: 18/02/2007, 12h18
  2. Vérifier si une image distante existe
    Par fab4am dans le forum Langage
    Réponses: 26
    Dernier message: 02/01/2007, 17h10
  3. tester si une table existe ou non sous access
    Par Lady_jade dans le forum Access
    Réponses: 4
    Dernier message: 17/02/2006, 19h44
  4. Tester si une image distante existe
    Par xtaze dans le forum Langage
    Réponses: 27
    Dernier message: 06/01/2006, 12h09
  5. [Access][VBA] Ouvrir un document word existant
    Par NicoNGRI dans le forum Access
    Réponses: 1
    Dernier message: 16/12/2005, 12h39

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