Vous n'êtes pas identifié(e).
Bonjour,
J'aurais besoin de récupérer les données de certaines cellules d'un tableau en html avec un programme php, ce tableau est généré automatiquement par un logiciel qui me renvoi une page avec 8 ou 9 tableaux par pages ... j'ai trouver des fonctions pour faire cela ( des parseurs....) mais je n'arrive pas à les utiliser... je suis un grand debutant, si une âme charitable pouvait m'aider ce serait bien aimable...:D .
En tous cas bonne journée!
Hors ligne
Saluton,
Un piste serait de voir dans quelle mesure la page html peut être reconnue comme un document XML.
Car, à partir de là, on pourrait envisager d'utiliser le Modèle Objet d'un Document (DOM) et les méthodes de l'extension PHP DOM qui vont bien.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Ah...euh... tres bien c tres gentil de repondre si vite!! comment je peux savoir ca?
Hors ligne
Ben tu pourrais commencer par ça :http://fr2.php.net/manual/fr/domdocumen … mlfile.php, et nous dire ce que ça donne.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Bon... c'est tres sympa de t'occuper de mon cas... j'ai fais un mini prog php comme celui ci :
et je me suis retrouvé avec pleins de lignes comme celles-ci :
Warning: DOMDocument::loadHTMLFile() [domdocument.loadhtmlfile]: Unexpected end tag : p in mon document.html, line: 20 in C:\wamp\www\*****\code parse html.php on line 3
Warning: DOMDocument::loadHTMLFile() [domdocument.loadhtmlfile]: Unexpected end tag : p in mon document.html, line: 27 in C:\wamp\www\*****\code parse html.php on line 3
et pleins d'autres... je penses que c'est pas bon signe docteur ?:mad:
Dernière modification par taz82000 (03-06-2009 09:08:14)
Hors ligne
Ben ça veut dire que le document html source est tout pourri.
Il y a des </p> redondants, inutiles ou mal placés, voire des <p/> (bizarrerie rencontrée dans EzPublish)
Il faut donc t'adresser à la source pollueuse pour lui demander de fournir du HTML strict et propre.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
c'est gentil à toi encore une fois, je me disais bien qu'il était moche ce fichier html, par contre je ne peux rien faire pour la source de ce fichier ...je vais continuer à essayer de trouver une solution pour sortir mes cellules en php... j'ai pas mal de choses a tester mais je sais pas trop comment les utiliser c'est du code php ou je ne vois pas trop quoi faire et quand il y en a je ne comprend pas les manuels...:/
Hors ligne
Est-ce que tu peux mettre un exemplaire du source de ce fichier html ici ou bien est-ce qu'il contient des données sensibles ?
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
je change 2/3 trucs dans le code et je le post...
Le voila :
PS: j'ai supprimé les espaces et mis en rouge ce que je devais récuperer...
j'ai pensé supprimer les balises <p> et </p> grace a :$chaine= ereg_replace("<[^>]*>"," ",$chaine) mais j'arrive meme pas à l'utiliser...
NdM : Penses à utiliser la balise code - ça rends la lecture plus facile
Dernière modification par taz82000 (03-06-2009 10:25:15)
Hors ligne
Le "topic" est résolu, mais je sais pas comment dire qu'il l'est .... si quelqu'un a besoin du code qu'il n'hesita pas a me contacter!!!:D
Hors ligne
perso je suis interessé
moi j'ai un tableau genre :
<table cellpadding="0" cellspacing="0">
<tr>
<td>Michel</td><td>1m85</td><td>40 ans</td>
</tr>
<tr>
<td>François</td><td>1m78</td><td>25 ans</td>
</tr>
<tr>
<td>Anne</td><td>1m64</td><td>19 ans</td>
</tr>
</table>
moi j'ai un tableau comme ceci
et j'aimerai avoir un rendu de type :
array(
array("Michel","1m85","40ans"),
array("François","1m78","25ans"),
array("Anne","1m64","19ans")
);
Hors ligne
salut,
il va te falloir récupérer le contenu des tag html.
pour cela il te faut un preg_match_all en recherchant tout les <tr></tr> (et ce qu'il y a dedans).
ensuite pour chaque ligne retournée la même chose pour <td></td> et la tu construit ton tableau php en insérant une ligne par <tr></tr trouvé
pour ce qui est des expression régulière je te conseil expreg.com (il y a même un exemple qui est similaire a ce que tu souhaite faire
@+
Il en faut peu pour être heureux pompompompompompompompompompompom
Hors ligne