Gå til innhold

hente xml-fil til server


Anbefalte innlegg

Jeg skal bruke værdata fra yr.no. De har en xmlfil på url'er som "yr.no/sted/Norge/Telemark/Sauherad/Gvarv/varsel.xml". Jeg bruker php for å bruke data fra xml'en, og slik jeg har forstått det må varsel.xml ligge på webserveren for at det skal virke. Har jeg missforstått?

 

Om ikke, hvordan får jeg lastet opp varsel.xml X anntall ganger i døgnet?

 

Dette er phpen som skal vise innhold fra varsel.xml

 

<?php
$file = "varsel.xml";
$content = file_get_contents( $file );
$xml = simplexml_load_string( $content );
echo "Location: " .  $xml->location->name;
echo ", timezone:" . $xml->location->timezone["id"] . "<br />";
foreach( $xml->forecast->text->location->time as $time ) {
echo $time["from"] . " to " . $time["to"] . "<br />";
echo $time->title . "<br />";
echo $time->body;
echo "<hr/>";
}
?>

 

*edit, vet ikke om dette er riktig plass å poste dette men:P

Endret av KeYhOle
Lenke til kommentar
Videoannonse
Annonse
Jeg skal bruke værdata fra yr.no. De har en xmlfil på url'er som "yr.no/sted/Norge/Telemark/Sauherad/Gvarv/varsel.xml". Jeg bruker php for å bruke data fra xml'en, og slik jeg har forstått det må varsel.xml ligge på webserveren for at det skal virke. Har jeg missforstått?

 

Du kan rett og slett bare sette adressen til xml-filen i $file, som deretter blir lastet inn i scriptet ditt via file_get_contents($file). Du trenger med andre ord ikke å ha filen på samme server som scriptet ditt. Husk å kjøre en test som tar hensyn til om filen blir lastet inn før du kjører scriptet. :)

 

 // F.eks noe ala dette;
$file = "http://adresse";
if($content = file_get_contents( $file )) {
// kjør script
} else $feilmelding;

 

Edit: Posten blir vel trolig flyttet til php- forumet. ;)

Endret av funkyboy
Lenke til kommentar

Hvordan ser jeg om filen blir lastet? :blush: Er litt grønn på php gitt

 

Det skjer ingenting når jeg kjører bare

// F.eks noe ala dette;
$file = "http://www.yr.no/sted/Norge/Vest-Agder/Kristiansand/Kristiansand/varsel.xml";
if($content = file_get_contents( $file )) {
// kjør script
} else $feilmelding;

 

Må jeg ha en $echo "ettelleranna" for å se om filen blir lastet?

 

*edit

Glem det, fikk det til ser det ut som.

Takk for hjelpen:P

Endret av KeYhOle
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...