Versio

Specifieke div includen ipv complete pagina

Overzicht Reageren

Drewes Tebbes

Drewes Tebbes

21/10/2010 00:26:06
Quote Anchor link
Beste,

Na een lange zoektocht op google en eindeloos proberen toch maar de bittere pil can trots ingeslikt en het maar vragen aan mensen die er meer verstand van hebben.

Normaal als je de functie 'include' gebruikt wordt de gehele source pagina gekopieerd en geplakt in de target pagina.
Op de source pagina, staan verscheidene div'jes met ieder een eigen Id.
Nu wil ik alleen 1 div (met uniek Id) includen in mijn target pagina.

Dus in plaats van de hele pagina te includen alleen maar 1 specifieke div.

Hoe krijg ik dit voor elkaar?
Na een paar dagen zoeken wel heel benieuwd naar het antwoord.

Als voorbeeld bestandsnamen:
'/index.php' (target pagina waar de include in staat)
'/map/map/divjes.php' (source pagina waarvan maar 1 div geinclude moet worden)

Hopelijk hebben jullie het antwoord.

Mvg,
Drewes
 
PHP hulp

PHP hulp

25/05/2012 18:18:54
Gesponsorde koppelingen:
 
Meddiecap B

Meddiecap B

21/10/2010 01:22:24
Quote Anchor link
Srry..had iets verkeerds gepost
Gewijzigd op 21/10/2010 01:23:07 door Meddiecap B
 
Pim -

Pim -

21/10/2010 10:22:29
Quote Anchor link
Dat wil je helemaal niet: plaats de div'jes gewoon in verschillende bestanden.
Mocht je het toch willen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php

$filename
= 'file.html';
$divId = 'div1';

// Verkrijg de inhoud, doe het op deze manier ipv DOMDocument::loadHTMLFile() omdat je zo PHP erin kan zetten
ob_start();
include $filename;
$html = ob_get_clean();

// Maak er een DOMDoc van
$dom = new DOMDocument();
$dom->loadHTML($html);

// Zoeken met xpath
$xpath = new DOMXPath($dom);
$query = '//div[@id=\''.$divId.'\']';
$divNode = $xpath->query($query)->item(0);

// En weer XML van maken
$div = $dom->saveXML($divNode);
?>

Typefouten voorbehouden
 
Drewes Tebbes

Drewes Tebbes

21/10/2010 11:48:48
Quote Anchor link
Dank je voor je antwoord, ziet er veel belovend uit, maar werkt helaas niet.
Die source pagina (waar de div opstaat) wordt door middel van allemaal server side php code opgebouwd.
Als ik het divje zou kunnen isoleren had ik dat al gedaan maar dat is niet mogelijk.
Ik heb dus iets van een client side include nodig...

In ieder geval bedankt voor de moeite

Toevoeging op 21/10/2010 14:35:09:

Om alle benoemingen en moeilijkheden uit de weg te gaan is het een stuk makkelijker om gewoon de adressen te posten:

De div (id="content) van http://www.lightningleiden.nl/wordpress/index.php moet in de div (id="nieuws) komen van http://www.lightningleiden.nl/bestuur.php

De content div wordt serverside helemaal opgebouwd en is alleen (in mijn ogen) goed te zien als je de bron van de pagina bekijkt in je browser.
Gewijzigd op 21/10/2010 12:49:16 door Drewes Tebbes
 



Overzicht Reageren

Get Adobe Flash player