Floris
13/01/03, 16:00
Beste allemaal,
Ik ben al een tijdje bezig met het volgende probleem:
Ik heb een database draaien vanwaaruit pagina's worden opgehaald. Deze
worden vervolgens in $contents geplaatst, en $contents wordt later in het
script gebruikt.
De bedoeling is dat in de pagina's die uit de db komen, ook PHP-code staat
en ook wordt uitgevoerd. Hiervoor heeft PHP de functie eval(), maar ik krijg
het maar niet goed aan de praat.
Hier een voorbeeld van een pagina uit de db:
De door u opgevraagde pagina bestaat niet, kan niet gevonden worden of is
beveiligd:
<?php echo $HTTP_SERVER_VARS['PHP_SELF']; ?>
Nu een stukje PHP zoals ik die nu heb: <?php
$query = "SELECT * FROM de_tabel WHERE pageid='999'";
$result = mysql_query($query);
$data = mysql_fetch_array($result);
$data[contents] = "?>" . $data[contents] . "<?php";
//$data[contents] = addslashes($data[contents]);
ob_start();
eval($contents = $data[contents]);
$contents .= ob_get_contents();
ob_end_clean();
//$contents = stripslashes($contents);
$contents=nl2br($contents);
$pageid="999";
$title=$data[title]; ?>
Zoals duidelijk zal zijn, werkt dit niet goed. Ik krijg onderstaande error:
?>De door u opgevraagde pagina bestaat niet, kan niet gevonden worden of is
beveiligd:
Parse error: parse error in
[weggelaten]/httpdocs/cats/shared/contents.php(34) : eval()'d code on line 1
Opvallend is dat ?> ervoor staat, maargoed. Enig idee hoe ik dit goed aan de
praat krijg? Uit de PHP documentatie wordt ik helaas niet heel veel wijzer..
Ik ben al een tijdje bezig met het volgende probleem:
Ik heb een database draaien vanwaaruit pagina's worden opgehaald. Deze
worden vervolgens in $contents geplaatst, en $contents wordt later in het
script gebruikt.
De bedoeling is dat in de pagina's die uit de db komen, ook PHP-code staat
en ook wordt uitgevoerd. Hiervoor heeft PHP de functie eval(), maar ik krijg
het maar niet goed aan de praat.
Hier een voorbeeld van een pagina uit de db:
De door u opgevraagde pagina bestaat niet, kan niet gevonden worden of is
beveiligd:
<?php echo $HTTP_SERVER_VARS['PHP_SELF']; ?>
Nu een stukje PHP zoals ik die nu heb: <?php
$query = "SELECT * FROM de_tabel WHERE pageid='999'";
$result = mysql_query($query);
$data = mysql_fetch_array($result);
$data[contents] = "?>" . $data[contents] . "<?php";
//$data[contents] = addslashes($data[contents]);
ob_start();
eval($contents = $data[contents]);
$contents .= ob_get_contents();
ob_end_clean();
//$contents = stripslashes($contents);
$contents=nl2br($contents);
$pageid="999";
$title=$data[title]; ?>
Zoals duidelijk zal zijn, werkt dit niet goed. Ik krijg onderstaande error:
?>De door u opgevraagde pagina bestaat niet, kan niet gevonden worden of is
beveiligd:
Parse error: parse error in
[weggelaten]/httpdocs/cats/shared/contents.php(34) : eval()'d code on line 1
Opvallend is dat ?> ervoor staat, maargoed. Enig idee hoe ik dit goed aan de
praat krijg? Uit de PHP documentatie wordt ik helaas niet heel veel wijzer..