Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/09/2011, 16h21   #1
Acropole
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
Par défaut merger deux domdoc html

Bonjour,

J'essaye de fusionner deux documents html en un seul mais un des deux documents refuse obstinément d'avoir des noeuds enfants.

Voici comment je charge le second document :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
		// chargement des vues
		public function ProcessView()
		{
			// nombre de vues
			$items = $this->HTMLDoc->getElementsByTagName("view");
			$itemcount = $items->length;
 
			for($i = 0; $i < $itemcount; $i++)
			{
				$item = $items->item($i);
 
				$parent = $item->parentNode;
 
				// second document html
				$name = $item->getAttribute("name");
				$filename = $name . '.view';
				$filepath = 'nodes/' . get_class($this)  . '/views/' . $filename;
 
				if(file_exists($filepath))
				{
					$view = new DOMDocument;
					if($view->loadHTMLFile($filepath))
					{
						$bodies = $view->getElementsByTagName("body");
 
						$boydcount = $bodies->length;
 
						for($j = 0; $j < $boydcount; $j++)
						{
							$body = $bodies->item($j);
 
							// acun enfant trouvé !
							if($body->hasChildNodes)
							{
								foreach($body->childNodes as $child)
								{
									$clone = $view->importNode($child, true);
									$parent->appendChild($clone);
								}
							}
						}
					}
				}
				else echo "file not found @ " . $filepath . "<br>";
			}
		}
et voici le second document html :

Code :
1
2
3
4
5
6
7
8
9
10
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" 
"http://www.w3.org/TR/REC-html40/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<div>head<div>lksdfh</div></div>
</body>
</html>
On voit bien que dans ce document la balise body (trouvée dans le premier code) possède des div enfants, mais le nombre d'enfant trouvé est toujours égal à 0...
  Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h00.


 
 
 
 
Partenaires

Hébergement Web