php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.05.2005, 14:18  
Gast
 
Beiträge: n/a
Standard [Erledigt] XML attribute auslesen?!

Help!!!

ich brauche UNBEDINGT HILFE!!!!
deswegen hab ich es hier gepostet! Ich hoffe ihr könnt mir helfen!

wie lese ich mit PHP aus einem XML dokument die attribute aus?!?!

// EDIT
Was ich evtl. noch dazu sagen sollte:

DomXML vorhanden.
PHP-Version: 4.3.10

\\ EDIT

Hier ein teil der XML File:
Code:
<ratelist>
<rate>
<id>2</id>
<country lang="de">Ägypten</country>
<country lang="en">Egypt</country>
<currency lang="de">Ägyptische Pfund</currency>
<currency lang="en">Egyptian Pound</currency>
<countryiso>eg</countryiso>
<currencyiso>EGP</currencyiso>
<rate_buy>0.1670510</rate_buy>
<rate_sell>0.1352249</rate_sell>
<lastchange>2005-05-18</lastchange>
</rate>

hier einmal der relevante teil des scripts:

Code:
// XML FILE AUSLESEN
function readDatabase($filename) { 
  $data = implode("",file($filename));
  $parser = xml_parser_create(); 
  xml_parser_set_option($parser,XML_OPTION_CASE_FOLDING,0); 
  xml_parser_set_option($parser,XML_OPTION_SKIP_WHITE,1); 
  xml_parse_into_struct($parser,$data,$values,$tags); 
  xml_parser_free($parser); 
  print_r($vals); 
   
  foreach ($tags as $key=>$val) {

    if ($key=="TERMIN_MIN") {
      $min[]=$values[$val[0]];
    }
    elseif ($key=="TERMIN_MAX") {
      $max[]=$values[$val[0]];
    }
    
    if ($key == "rate") {
        $angebote = $val; 
        for ($i=0; $i < count($angebote); $i+=2) {
          $offset = $angebote[$i] + 1;
          $len = $angebote[$i + 1] - $offset;
          
          $tdb[] = parseAng(array_merge(array_slice($values, $offset, $len),$min, $max));
        }
      }
      else {
        continue;
      }
   }
   return $tdb;
} 

function parseAng($avalues) { 
  for ($i=0; $i < count($avalues); $i++) {
    $ang[$avalues[$i]["tag"]] = $avalues[$i]["value"]; 
  }
  return new topangebot($ang); 
}


#############################  
#** FUNKTION DER ANGEBOTE **#
#**###      --x--      ###**#
#############################
function getAngebot() {
  return readDatabase("xml_file");
}

function writeBlock($db) {
  foreach ($db as $outp) {
    echo '<div class="topangebot_teaser">'."\n";
    echo '<h3 class="zielgebiet">'.$outp->country.'</h3>'."\n";
    echo '<h3 class="zielgebiet">'.$outp->currency.'</h3>'."\n";
    echo '<h4 class="zielgebiet">'.$outp->rate_buy.'</h4>'."\n";
    echo '<hr>';
    echo '</div>'."\n";
  }
}

function reiseBlock() {
  $db = getAngebot();
  if (!$db) {
    $db = getAngebot();
  }
  writeBlock($db);
}
hilfe wäre echt hilfreich!
Müsste bei $outp->country die attribute "lang" auslesen bzw. nur den teil benutzen von country wo das attribut "lang" den wert "de" hat!

danke für die hilfe...
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 18.05.2005, 16:39  
Gast
 
Beiträge: n/a
Standard

Sorry wenn das jetzt als spam gilt aber ich hab immerhin fortschritte gemacht und bin ETWAS weiter )

---
nach stundenlangem lesen & google groups

PHP-Code:
<?php
$xmlDocument 
domxml_open_file('xmlfile');
$country $xmlDocument->document_element();
echo 
$country->get_attribute('lang');
?>

da bekomm ich dann die Fehlermeldung:
ACHTUNG "xmlfile" hab ich nur für das tatsächliche dokument hingeschrieben da dies leider dem datenschutz unterliegt! :/


Warning: domxml_open_file(): Invalid argument in /homepages/28/d116181349/htdocs/derpart24/waehrungsrechner/waehrungsrechner.php on line 74

Warning: domxml_open_file(): I/O in /homepages/28/d116181349/htdocs/derpart24/waehrungsrechner/waehrungsrechner.php on line 74

Warning: domxml_open_file(): warning : in /homepages/28/d116181349/htdocs/derpart24/waehrungsrechner/waehrungsrechner.php on line 74

Warning: domxml_open_file(): failed to load external entity "xmlfile" in /homepages/28/d116181349/htdocs/derpart24/waehrungsrechner/waehrungsrechner.php on line 74

Fatal error: Call to a member function on a non-object in /homepages/28/d116181349/htdocs/derpart24/waehrungsrechner/waehrungsrechner.php on line 75


was kann ich jetzt machen? Bzw. gibt es andere lösungswege?
 
Alt 19.05.2005, 14:16  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

Du könntest eine erreichbare XML-Datei angeben?

Der Beitrag wurde verschoben, wegen...
... Postings im falschen Forum.

Bemerkung:
Die gestellte Frage entspricht nicht dem Wissensstand eines/einer Fortgeschrittenen.

moved to PHP - Anfänger
__________________
mod = master of disaster
Waq ist offline  
Alt 20.05.2005, 10:14  
Gast
 
Beiträge: n/a
Standard

sorry wusste ich nicht!!!
Aber trotzdem danke für deine Antwort!

mhhh ja das Problem ist die XML Datei wird mir so von einer Agentur geliefert welche per PHP aufgerufen wird!

http://url.de/phpdatei.php?format=xml

und die können die Daten auch nicht anders bereit stellen da Diese ständig aktualisiert werden! (Geldwährungen der einzelnen Länder)!!!

Besteht die möglichkeit die daten aus der XML Datei irgendwo zwischenzuspeichern in nem Array oder sowas welches dann extern liegt und sich bei jedem "sitereload" neu schreibt?
 
Alt 20.05.2005, 10:55  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von infinitY
Warning: domxml_open_file(): Invalid argument in /homepages/28/d116181349/htdocs/derpart24/waehrungsrechner/waehrungsrechner.php on line 74

was kann ich jetzt machen? Bzw. gibt es andere lösungswege?
Die Funktion kann entweder das File nicht öffnen oder es gibt einen Fehler beim Parsen.

Aus dem Handbuch:
PHP-Code:
<?php
if (!$dom domxml_open_file("example.xml")) {
  echo 
"Error while parsing the document\n";
  exit;
}
?>
Nimm PHP5 und simpleXML. Ist wesentlich pflegeleichter...
 
 


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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Ordner auslesen und während des auslesen sortieren Dooki PHP Tipps 2008 6 14.05.2008 17:50
Vom Browser verschickte Daten auslesen und anzeigen? andy32 PHP Tipps 2008 3 22.08.2007 18:33
there is no attribute "BACKGROUND" ?? Fehler beim Buschdieb HTML, Usability und Barrierefreiheit 4 23.04.2006 21:58
[Erledigt] gelöst: Tabelle auslesen -&amp;amp;amp;amp;gt; Gleiche Einträge nur 1 Mal Datenbanken 3 31.03.2006 01:44
Textdatei auslesen, aber ohne Komentare HSFighter PHP Tipps 2006 31 23.02.2006 10:07
Cookies auslesen HSFighter PHP Tipps 2007 2 19.11.2005 14:56
Daten eintragen und auslesen Rettungsdackel Datenbanken 0 14.09.2005 16:29
[Erledigt] Daten aus einer Datenbank auslesen Datenbanken 2 04.09.2005 19:13
DOM -> Attribute auslesen... PHP Tipps 2005-2 3 03.08.2005 14:03
alle Verzeichnisse sortiert auslesen PHP Tipps 2005-2 7 17.07.2005 10:20
Primärschlüssel da. Wie an andere Attribute rankommen? Datenbanken 1 07.06.2005 10:27
auslesen und nochmals auslesen?! $$$ ThiKool $$$ PHP Tipps 2005 23 10.03.2005 19:43
Klassen auslesen PHP Tipps 2007 8 10.01.2005 07:07
Simpelxml + Attribute PHP Tipps 2004 0 14.07.2004 09:23

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php xml attribute auslesen, xml attribute auslesen php, php xml attribute, php xml attribut auslesen, xml php attribute auslesen, php xml attributes, php xml attribut, xml attribut auslesen php, xml attribute php, http://www.php.de/php-tipps-2005/23246-erledigt-xml-attribute-auslesen.html, javascript xml attribut auslesen, php xml attribute lesen, php xml attribut lesen, php xml @attributes, php xml auslesen attribute, php xml attributes auslesen, attribute xml auslesen php, xml attribute php auslesen, xml attribut lesen php, xml attribute mit php auslesen

Alle Zeitangaben in WEZ +2. Es ist jetzt 13:55 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.