php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.10.2006, 22:27  
Benutzer
 
Registriert seit: 23.08.2006
Beiträge: 86
Canni
Standard XML unter PHP 4

Ich würde gerne ab und an eine XML Datei als Datenquelle einsetzten. Unter PHP5 kann ich ja simplexml einsetzten. Unter PHP4 - und daran bin ich leider gebunden - ist mir das verwehrt. Wie bzw. mit was kann ich denn unter PHP4 eine XML Datei auslesen. Ich habe hier mal was über PEAR gefunden, das Ergebnis hatte der Betreffende allerdings als nicht brauchbar deklariert. Kann mir jemand weiterhelfen?
Danke und Gruß
Canni ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 29.10.2006, 23:15  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

expat -> http://php.net/manual/en/ref.xml.php

Basti
Basti ist offline  
Alt 30.10.2006, 21:48  
Benutzer
 
Registriert seit: 23.08.2006
Beiträge: 86
Canni
Standard

Thx erst mal für den Link. Ich hab´s jetzt so hingekriegt:

PHP-Code:
function start_tag($parser$name$attribs) {
   global 
$current;
   
$current $name;
   if(
$name == "LINKS"){ echo "<table width='90%' align='center'>\n"; }
   if(
$name == "LINK"){ echo "<tr>\n"; }
   if(
$name == "NAME"){ echo "<td>\n"; }
     }

function 
end_tag($parser$name) {
     if(
$name == "NAME"){echo "</td>\n";}
   if(
$name == "LINK"){ echo "</tr>\n"; }
   if(
$name == "LINKS"){ echo "</table>\n";
      }
}

xml_set_element_handler($xmlparser"start_tag""end_tag");

function 
tag_contents($parser$data) {
    global 
$current;
    if(
$current == "NAME"){echo $data;}
                
#($current == "URL"){echo $data;}



ich habe in meiner XML noch den tag URL der natürlich auch mit reinmuß, und zwar zwischen <td> und </td> das NAME dann auch als Link anklickbar ist.
Es müßte also sowas rauskommen wie:

<td>'NAME'</td>

Ich krieg´s nicht hin. Ich hoffe ich habe mich halbwegs verständlich ausgedrückt was ich meine und der quelltext reicht aus ( wenn nicht muß ich nachreichen ).
Canni ist offline  
Alt 31.10.2006, 09:47  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

Ist der Code oben alles? Oder hast du den Character DataHandler auch definiert?

http://php.net/manual/en/function.xm...ta-handler.php

PHP-Code:
<?php
function tag_contents($parser$data) {
    
        global 
$current;

        if (
$current == "URL")
                echo 
'<a href="'$data'">';

    if (
$current == "NAME")
                echo 
$data'</a>';
}
?>
Ansonsten würd ich alles in eine Klasse schreiben, damit du nicht mit einer Globalen arbeiten musst.

Ist eigentlich ein klassischer Fall für XSLT.

Und, wenn es nur um eine Linkliste geht, warum schreibst du die dann in eine Tabelle?

http://css.maxdesign.com.au/listamatic

Basti
Basti ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php4 xml datei auslesen

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:24 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.