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 :

Parcourir un tableau html


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut Parcourir un tableau html
    Bonjour à tous,

    Je suis confronté à un petit soucis : Je récupère le contenu d'une page web sur un site via file_get_contents(). Cette page est une très vielle page qui est construite en tableau inbrqué...

    Seulement je voudrais uniquement récupéré le contenu de mon dernier tableau imbriqué, ligne par ligne et colonne par colonne dans des variables PHP. J'avais pensé à rechercher en fonction d'une div ou d'une class mais il n'y en a aucune dans la page, seulement les libellés de mes colonnes sont fixes...

    Comment je pourrais récupéré ses infos selon vous ?

    Merci d'avance.

  2. #2
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Bonjour,

    est ce que ton dernier tableau à un id qui est toujours le même id ? Si oui, tu peux le récupérer via une regex ou un strpos

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    Ba non en faites c'est bien mon problème....

    Tous les tableau ont cette syntaxe là :

    <table width="100%" cellspacing="0" cellpadding="0" border="1"><tbody><tr><td colspan="8">&nbsp;</td></tr><tr><td bgcolor="#ffffff" align="center" colspan="8">
    C'est pour sa que je ne sais pas comment le traiter....

  4. #4
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    S'il y a toujours le meme nombre de tableaux par page (ou meme sans), tu peux toujours t'en sortir via strpos commencant à la dernière occurence de <table

  5. #5
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    Heu... je suis pas pro dans ces choses là...

    je fais un strpos("mapage","</table"); ?
    Parce qu'il y a, avant un tableau qui se ferme avant le mien...

    J'ai testé sa, janvier étant la première ligne remplit de mon tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strpos($contenu,'JANVIER');
    Mais ensuite je sais pas utiiser la position que strpos me renvoit..

    Il y aura toujours le meme nombre de tableau dans la page.

  6. #6
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Dans ton cas, il suffit de récupérer la dernière occurence de <table avec strripos() ou de faire un explode sur ta chaine sur <table et de recupérer la dernière occurence de ton tableau

  7. #7
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    Le explode de table j'ai déja testé mais le problème c'est que il me met tout dans Array [0] au lieu de les "explode"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $contenu = explode("<table>", $contenu);

  8. #8
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    c'est normal tu n'as pas de pattern <table> mais <table width="100%"... tu m'as dit. Teste juste le pattern <table

  9. #9
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    Oui du coup c'est normal... je devrais réfléchir des fois ...

    Enfin à partir de mon explode de mon tableau, j'explode en fonction des <TR puis ensuite des <TD pour récupérer le contenu de chacune de mes cellules mais comment le bouclé pour aller plus vite ?

  10. #10
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Non, la le mieux serait de le faire avec une regex je pense et de capturer toutes les occurences entre > et <

  11. #11
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    Aurait tu un exemple... parce que les regex et plsu généralement le traitement des chaines de caractères c'est un peu bcp mais bête noir...

  12. #12
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Quelque chose comme ca sans garanties

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    preg_match_all("#>(.*)<#Usi", $chaine, $matches, PREG_SET_ORDER);

    Et les occurences trouvées seront dans le tableau $matches

  13. #13
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    Heu, il me renvoit pas le contenu du tableau,

    uniquement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Array ( [0] => Array ( [0] => ><  [1] => ) [1] => Array ( [0] => > <  [1] => ) [2] => Array ( [0] => ><  [1] => ) [3] => Array ( [0] => > Annuaire des marées [Coefficients]<  [1] => Annuaire des marées [Coefficients] ) [4] => Array ( [0] => ><  [1] => ) [5] => Array ( [0] => ><  [1] => ) )

  14. #14
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    preg_match_all("#>(.*?)<#Usi", $chaine, $matches, PREG_SET_ORDER);

  15. #15
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    La j'ai : Array ( [0] => Array ( [0] => > Annuaire des marées [Coefficients]< [1] => Annuaire des marées [Coefficients] ) )

    Mais le problème c'est que il parcours pas les autres lignes de mon tableau uniquement la première,

  16. #16
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    J'ai compris mon erreur mais maintenant j'ai des tableau de tableau de tableau et je ne sais pas comment récupéré les valeurs de ceux qui m'interesent, là c'est un prin_r qui me les affiche

    Tu pourrais me dire comment les récupérer, par exemple JANVIER 2010 ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Array ( [0] => Array ( [0] => ><  [1] => ) [1] => Array ( [0] => ><  [1] => ) [2] => Array ( [0] => > <  [1] =>   ) [3] => Array ( [0] => ><  [1] => ) [4] => Array ( [0] => ><  [1] => ) [5] => Array ( [0] => ><  [1] => ) [6] => Array ( [0] => ><  [1] => ) [7] => Array ( [0] => >JANVIER 2010<  [1] => JANVIER 2010 ) [8] => Array ( [0] => ><  [1] => ) [9] => Array ( [0] => ><  [1] => ) [10] => Array ( [0] => > <  [1] => ) [11] => Array ( [0] => ><  [1] => ) [12] => Array ( [0] => ><  [1] => ) [13] => Array ( [0] => > Date<  [1] => Date ) [14] => Array ( [0] => ><  [1] => ) [15] => Array ( [0] => > <  [1] => ) [16] => Array ( [0] => > <  [1] => ) [17] => Array ( [0] => >Matin<  [1] => Matin ) [18] => Array ( [0] => ><  [1] => ) [19] => Array ( [0] => > <  [1] => ) [20] => Array ( [0] => ><  [1] => ) [21] => Array ( [0] => > Après-midi<  [1] => Après-midi ) [22] => Array ( [0] => ><  [1] => ) [23] => Array ( [0] => ><  [1] => ) [

Discussions similaires

  1. Comment parcourir tableau html avec jquery ?
    Par hamrouni wassim dans le forum jQuery
    Réponses: 9
    Dernier message: 12/03/2015, 08h21
  2. Parcourir un tableau html en javascript
    Par Floyus dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/01/2014, 10h31
  3. Compter et parcourir les lignes d'un tableau HTML "dynamique"
    Par symfonyc dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 10/08/2012, 15h15
  4. Parcourir un tableau et affichage dans un tableau HTML
    Par menina_raquel dans le forum Ruby on Rails
    Réponses: 0
    Dernier message: 23/05/2011, 12h01
  5. Parcourir tableau HTML en JS
    Par Canyata dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 03/11/2010, 11h55

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