Gepost door: piet Gepost op: 2011-10-03 - 22:03
Dit is echt een cool bericht.

[E-mail]

Gepost door: Gepost op: -


[E-mail]

    <?php
     
    
/**
          * Deze functie opend het opgegenven xml document
     * en geeft een gestructureerde array terug.
     * Array (
     * [0] => Array (
     * [id] => 16
     * [naam] => foo
     * [emailadres] => foo@bar.com
     * [website] => http://www.example.com
     * [bericht] => blablabla
     * [datum] => 2004-10-03
     * [tijd] => 23:06
     * )
     * [1] => Array ()...
     * )
     */
    
function xml_read($xml) {
    if (!
$data implode(''file($xml))) {
    die(
'kan xml document niet vinden!');
    }
    
$parser xml_parser_create();
    
$params = array();
    
$level = array();
     
    
xml_parser_set_option($parserXML_OPTION_CASE_FOLDING0);
    
xml_parser_set_option($parserXML_OPTION_SKIP_WHITE1);
    
xml_parse_into_struct($parser$data$values$index);
    
xml_parser_free($parser);
     
    foreach (
$values as $element) {
    switch(
$element['type']) {
    case 
'open' :
    if (
array_key_exists('attributes'$element)) {
    list(
$level[$element['level']], $extra) = array_values($element['attributes']);
    }
    else { 
$level[$element['level']] = $element['tag']; }
    break;
     
    case 
'complete' :
    
$start 1;
    
$exec '$params';
    while(
$start $element['level']) {
    
$exec .= '[$level['.$start.']]';
    
$start++;
    }
    
$exec .= '[$element[\'tag\']] = $element[\'value\'];';
    eval(
$exec);
    break;
    }
    }
    return 
$params;
    }
     
    
/* gebruik: */
    
$parsed xml_read('./xmlbestand.xml');
    
$parsed $parsed['berichten'];
    for (
$i 0$i count($parsed); $i++) {
    
?>
    <table class="gastenboek" width="60%" border="1" cellspacing="0" cellpadding="2">
    <tr>
    <td width="88%" valign="top">
    <b>Gepost door</b>: <?php echo $parsed[$i]['naam']; ?>
    <b>Gepost op</b>: <?php echo $parsed[$i]['datum']; ?> - <?php echo $parsed[$i]['tijd']; ?>
    </td>
    </tr>
    <tr>
    <td valign="top">
    <?php echo $parsed[$i]['bericht']; ?>
    <br><hr size="1" noshade>
     
    [<a href="mailto:<?php echo $parsed[$i]['emailadres']; ?> ">E-mail</a>]
    </td>
    </tr>
    </table><br>
    <?php 
    
    
show_source(__FILE__); 
    
?>
    
    <a href="xmlbestand.xml">link naar een xml bestand</a>
link naar een xml bestand