php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > XML
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


XML Hier passt alles rein, was das Thema XML (XSLT, JSON etc...) betrifft, auch in Verbindung mit PHP

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 18-08-2005, 12:19
Fanello
 Registrierter Benutzer
Links : Onlinestatus : Fanello ist offline
Registriert seit: Jul 2005
Beiträge: 64
Fanello ist zur Zeit noch ein unbeschriebenes Blatt
Standard Artikelliste mit Titel und Lead anzeigen.

hallo Leute, ich hoffe ihr könnt einem XML- und PHP-Anfänger helfen...

folgende Situation: Ich hab ein Verzeichnis mit dutzenden XML-Files. Jedes dieser File entspricht einem Artikel. Der Artikel besteht mehr oder weniger wie üblich aus einem Titel, Untertitel, Lead und Text.
Auf meiner Website hab ich eine Artikel-Übersichtseite, auf der die Artikel aufgelistet sind, und zwar mit Titel und Lead und einem Link "weiter" um den ganzen Artikel zu lesen.

Nun meine Frage: ist es mit PHP grundsätlich möglich diese Artikel-Übersichtsseite überhaupt zu realisieren? Auch ohne Datenbank? Falls ja bräuchte ich zwar nicht unbedingt den Code, aber ich wäre sehr froh, wenn ich ungefähr eine Richtung erfahren würde in die ich mich bewegen müsste.

Auf dem Unix-Server ist PHP5 installiert.

Danke
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 18-08-2005, 12:29
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

- Verzeichnis lesen
- jede Datei öffnen
- XML darin parsen oder Stringoperationen (evtl. schneller)
- Titel und Lead ausgeben

Falls die XML-Files über ein Script geschrieben/geändert/gelöscht werden, würde ich dieses Script so ändern, dass es die Übersichtsseite gleich mit erstellt/ändert. Dann geschieht das nämlich nur einmal pro Änderung an den XML Files statt bei jedem Aufruf der Übersichtsseite.
Mit Zitat antworten
  #3 (permalink)  
Alt 01-09-2005, 14:55
Fanello
 Registrierter Benutzer
Links : Onlinestatus : Fanello ist offline
Registriert seit: Jul 2005
Beiträge: 64
Fanello ist zur Zeit noch ein unbeschriebenes Blatt
Standard

also ich hab mir jetzt was zusammengebastelt (Profis unter euch werden jetzt wahrscheinlich gleich nen Lachanfall kriegen...). Bin wirklich noch Anfänger auf diesem Bereich (XML/PHP), hoffe aber doch, dass ich schon auf dem richtigen Weg bin...

Ich hab ein Verzeichnis (xml) mit 5 xml-Dateien.
Mit der Datei news.php rufe ich eine Seite auf, die von diesen 5 xml-Dateien den Titel (title) und den Lead (para) ausliest und darstellt.

PHP-Code:
<?php 

$dir
=$_SERVER["DOCUMENT_ROOT"];
$dir.="/xmltransform/artikelliste/xml/";
if (
$handle opendir($dir)) {
while (
false !== ($file readdir($handle))) {
if (
$file!="." && $file!=".." && $file!=".DS_Store") { 
$a++;
$filename=$file;
$file=strtok($file,".");

 
$xml = new DomDocument();
 
$xml ->load("xml/$filename");
 if(!
$xml) {
  exit (
"Fehler beim Parsen");
 }

print (
"$filename <br />");
 
        
$xmlinhalt simplexml_load_file($filename); 
        if(
$xmlinhalt) { 
             
echo 
"<strong>$xmlinhalt->title</strong><br />"
echo 
"$xmlinhalt->para<br />";

        } 

}
}
}
closedir($handle);

?>
Das Problem: nur der Inhalt der ersten xml-Datei wird angezeigt. Für alle anderen xml-Dateien bringt er einen Fehler:
Warning: I/O warning : failed to load external entity "test2.xml" in /Applications/xampp/htdocs/xmltransform/artikelliste/news.php on line 27

Line 27 wäre $xmlinhalt = simplexml_load_file($filename);

Kann ich also mit simplexml_load_file nur ein xml-File laden?

Bin wirklich froh um jede Hilfe. Danke!!!
Mit Zitat antworten
  #4 (permalink)  
Alt 02-09-2005, 12:48
Fanello
 Registrierter Benutzer
Links : Onlinestatus : Fanello ist offline
Registriert seit: Jul 2005
Beiträge: 64
Fanello ist zur Zeit noch ein unbeschriebenes Blatt
Standard

schääääääm... ich hab den Fehler selber gefunden....

PHP-Code:
$xmllead simplexml_load_file("xml/$filename");
print(
utf8_decode($xmllead->para)); 
ich hab zwar mit $filename tatsächlich den Namen jedes xml-Files, jedoch muss ich dann nochmals angeben, wo sich diese Files befinden -> xml/$filename

Der korrekte Code:

PHP-Code:
<?php 

$dir
=$_SERVER["DOCUMENT_ROOT"];
$dir.="/xmltransform/artikelliste/xml/";
if (
$handle opendir($dir)) {
while (
false !== ($file readdir($handle))) {
if (
$file!="." && $file!=".." && $file!=".DS_Store") { 
$a++;
$filename=$file;
$file=strtok($file,".");

 
$xml = new DomDocument();
 
$xml ->load("xml/$filename");
 if(!
$xml) {
  exit (
"Fehler beim Parsen");
 }

$texttitel=$xml->getElementsByTagName("title");
$anz_texttitel=$texttitel->length;

$datum=$xml->getElementsByTagName("date");
$anz_datum=$datum->length;

$lead=$xml->getElementsByTagName("para");
$anz_lead=$lead->length;

$autor=$xml->getElementsByTagName("autor");
$anz_autor=$autor->length;


for (
$at=0$at<$anz_texttitel;$at++) {
    
$ct=$texttitel->item($at);

        if(
$at=1) {    
        print (
"<p><a href='artikel.php?artikel=$filename'>".utf8_decode($ct->nodeValue));
        print (
"</a></p>");
        }

        
$xmllead simplexml_load_file("xml/$filename");
print(
utf8_decode($xmllead->para));
echo 
"<hr />";

}
}
}
closedir($handle);

?>
bin ich sooooo glücklich...
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

SMT

Server Monitoring & Management Tool Das SMT wurde von einem Administrator für Administratoren entwickelt, es vereinfacht den Alltag in der klassischen Administration und Verwaltung. Mit dem SMT kannst Du alle Deine Server & Dienste verwalten und überwach

04.09.2020 palle_1977 | Kategorie: PHP
numaeks Web-Farbmixer

Die RGB-Farben lassen sich hier auf unterschiedliche Weise mischen. Zur Einstellung werden auch die Dreh- und Schieberegler mit Canvas verwendet. Gespeichert werden die Farben in einem Cookie.

04.09.2020 numaek | Kategorie: JAVASCRIPT/ Tools
phplinX-Erotikportal 4 ansehen phplinX-Erotikportal 4

Erweiterbares Portal speziell für Erotik mit den Modulen Webkatalog, Bannermanagement und Kleinanzeigenmarkt. Sämtliche Module können über einen einzigen Adminbereich verwaltet werden.

18.06.2020 Cosinus14 | Kategorie: PHP/ Anzeigenmarkt
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:45 Uhr.