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 :

problème avec feof et fgetc


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut problème avec feof et fgetc
    salut,
    j'ai télécharger le contenu d'une page web . je veut lire le contenu de la page caractère par caractère
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while (($c=fgetc($d))!=(feof($d)))
      {
      $i++;
      }
    j'ai essayer le script en local avec easyphp 2.0 mais j'ai ces deux erreurs :

    Warning: fgetc(): supplied argument is not a valid stream resource in C:\Program Files\EasyPHP 3.0\www\******

    Warning: feof(): supplied argument is not a valid stream resource in C:\Program Files\EasyPHP 3.0\www\********
    merci de m'aider

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 320
    Points : 311
    Points
    311
    Par défaut
    Ta variable $d ne semble pas être un pointeur de fichier.

    Montre-nous ce qu'il y a un peu avant, et notamment comment $d est affectée.

  3. #3
    Futur Membre du Club
    Inscrit en
    Mai 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    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
    <?php
    function get_document($url) {
        $file = fopen ($url,"r");
        if (!$file) 
            echo 'erreur ouverture page' ;
        return($file);
    }
     
     
    $d=get_document('http://fr.wikipedia.org/wiki/Oc%C3%A9anie');
     
    while (($c=fgetc($d))!=(feof($d)))
      {
      $i++;
      }
     
    ?>

  4. #4
    Futur Membre du Club
    Inscrit en
    Mai 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    salut
    j'ai aussi essayer se script qui est presque pareil et même sur un fichier texte normal j'ai le même problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    if (!($f=fopen("text.txt","r")))
    exit("Impossible d'ouvrir le fichier.");
    while (!feof($f))
    {
    $texte=fgetc($f);
    echo $texte;
    }
    fclose($f);
    ?>

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 320
    Points : 311
    Points
    311
    Par défaut
    Ta boucle while ne fait pas grand chose à part incrémenter le $i sans l'afficher...

    De plus, ta condition dans le while est biscornue.

    Voici ce que je te propose (testé, marche avec une url ou un fichier texte local)

    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
    <?php
    function get_document($url) {
      $file = fopen ($url,"r");
      return $file;
    }
     
     
    $d = get_document('http://fr.wikipedia.org/wiki/Oc%C3%A9anie');
     
    if( $d == false ) {
      print "Erreur d'ouverture du fichier";
    }
    else {
      while ( !feof($d) )
      {
        $texte = fgetc($d);
        print $texte;
      }
    }
     
     
    ?>
    Sache toutefois qu'afficher le contenu de page externe sans en avoir l'autorisation est très mal vu, est une atteinte au droit d'auteur, et donc peut t'attirer des ennuis.

Discussions similaires

  1. Problème avec la fonction feof ?
    Par kevine2710 dans le forum Débuter
    Réponses: 4
    Dernier message: 28/02/2013, 22h54
  2. Problème avec la fonction feof
    Par Fog-Thunder dans le forum C
    Réponses: 6
    Dernier message: 19/01/2013, 10h54
  3. Problèmes avec fgetc et fgets
    Par Bruno.C dans le forum Débuter
    Réponses: 3
    Dernier message: 04/07/2009, 16h24
  4. Problème avec fputc et fgetc
    Par Canigou dans le forum C
    Réponses: 14
    Dernier message: 30/03/2008, 23h06
  5. Problème avec feof()
    Par Invité dans le forum C
    Réponses: 5
    Dernier message: 05/10/2005, 22h01

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