/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Hente valuta-kurser?
Fra : Bob Bomfeldt


Dato : 01-04-03 19:10

Nogen der har forslag til hvor mange kan finde en HTML side med
valuta-kurser, som man nemt kan parse i PHP for at kunne vise beløb på
sin hjemmeside i forskellige valutaer, så man ikke selv behøver
opdatere kurserne?


 
 
Flemming Joensson (01-04-2003)
Kommentar
Fra : Flemming Joensson


Dato : 01-04-03 23:11

Bob Bomfeldt <bob@freemail.com> wrote in
news:d8lj8vc48dkdpogkm8g3kikem6noadmtmk@4ax.com:

> Nogen der har forslag til hvor mange kan finde en HTML side med
> valuta-kurser, som man nemt kan parse i PHP for at kunne vise
> beløb på sin hjemmeside i forskellige valutaer, så man ikke selv
> behøver opdatere kurserne?
>
>

valutakurser.dk, men hvis det er til kommercielle formål vil de nok
ikke synes det er sjovt du låner deres data.

Nationalbanken har så vidt jeg husker også kurserne et eller andet
sted, og ligeså har alle banker disse informationer. Derudover er der
diverse sites som tilbyder at man kan få en email med kurserne
tilsendt... (www.xe.com har vist mulighed for det hele, samt en
currency converter du kan smide på din egen side)

Flemming

--
Hvis du vil svare per e-mail skal "fjerndette." fjernes fra
mailadressen.


Jonas Koch Bentzen (02-04-2003)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 02-04-03 09:33

Bob Bomfeldt wrote:
>
> Nogen der har forslag til hvor mange kan finde en HTML side med
> valuta-kurser

http://nationalbanken.dk/

> som man nemt kan parse i PHP for at kunne vise beløb på
> sin hjemmeside i forskellige valutaer, så man ikke selv behøver
> opdatere kurserne?

Det er efter min mening en rigtig dårlig ide at basere sit system på at
skulle fortolke en webside, som kan ændre design fra dag til dag og i
modsætning til f.eks. et XML-dokument ikke har nogen fast struktur.

Løsningen er enten at købe sig til en ydelse, hvor man får kurserne
serveret som f.eks. XML, eller at lade brugeren opdatere kurserne
manuelt på en administrationsside fra tid til anden.


Jacob Bunk Nielsen (02-04-2003)
Kommentar
Fra : Jacob Bunk Nielsen


Dato : 02-04-03 10:41

Jonas Koch Bentzen <ingen.email@eksempel.dk> writes:

> Det er efter min mening en rigtig dårlig ide at basere sit system på
> at skulle fortolke en webside, som kan ændre design fra dag til dag og
> i modsætning til f.eks. et XML-dokument ikke har nogen fast struktur.

Helt enig!

En anden løsning kan dog være som en af mine venner gjorde. Han
baserede sådan et valuta-system på TXT-records i DNS. Når man så slog
TXT-recorden for sek.foo.invalid op fik man fx 0,80 osv.

Han skrev så et script i python (men sproget er naturligvis
underordnet) der hentede kurserne et eller andet sted fra og lavede en
passende zonefil med passende mellemrum. På den måde er det værste der
kan ske at opdateringen fejler, og man får en mail om at det gik
galt, så man kan se på problemet.

Systemet er smart fordi DNS er en meget let protokol, og er dejligt
distribueret, så man behøver slet ikke at have det kørende på samme
system som man ellers har resten af sin web-ting kørende på.

Man kunne også putte kurserne i en database, men det har den ulempe at
database-serveren helst skal stå "tæt" på webserveren.

--
Jacob - www.bunk.cc
Don't hate yourself in the morning -- sleep till noon.

Thomas Lindgaard (03-04-2003)
Kommentar
Fra : Thomas Lindgaard


Dato : 03-04-03 09:49

Jacob Bunk Nielsen <spam@bunk.cc> wrote in
news:spamdrop+m3y92tutih.fsf@paven.bunk.cc:

> En anden l›sning kan dog v‘re som en af mine venner gjorde. Han
> baserede s†dan et valuta-system p† TXT-records i DNS. N†r man s† slog
> TXT-recorden for sek.foo.invalid op fik man fx 0,80 osv.

Pyyh ha det lyder som noget DNS-griseri :)

> Han skrev s† et script i python (men sproget er naturligvis
> underordnet) der hentede kurserne et eller andet sted fra og lavede en
> passende zonefil med passende mellemrum. P† den m†de er det v‘rste der
> kan ske at opdateringen fejler, og man f†r en mail om at det gik
> galt, s† man kan se p† problemet.

Det samme kan vel laves med PHP...

Noget med at lave et script som henter og parser valutakurser og smider dem
i en fil (som et serialiseret array eller noget andet pænt). Så kan man
lave et andet script til at håndtere interaktionen med brugeren - dette
script kan bede det første script om kurserne, og hvis de lige er blevet
hentet, så får man et array tilbage i hovedet, men hvis de er gamle, så
forsøger valuta-scriptet først at opdatere før det sender et array tilbage.
Det vil naturligvis give en længere svartid en gang imellem, men for det
meste vil opslaget kun bestå i at læse en fil.

--
Hyggehej
/Thomas

Jacob Bunk Nielsen (03-04-2003)
Kommentar
Fra : Jacob Bunk Nielsen


Dato : 03-04-03 10:21

Thomas Lindgaard <thomas@it-snedkeren.BLACK_HOLE.dk> writes:
> Jacob Bunk Nielsen <spam@bunk.cc> wrote:
>
>> En anden l›sning kan dog v‘re som en af mine venner gjorde. Han
>> baserede s†dan et valuta-system p† TXT-records i DNS. N†r man s† slog
>> TXT-recorden for sek.foo.invalid op fik man fx 0,80 osv.
>
> Pyyh ha det lyder som noget DNS-griseri :)

Nejda. Hvorfor synes du det er noget griseri? Du kan da bruge DNS til
meget mere end lige navne-opslag.

Kan jeg i øvrigt ikke lokke dig til at sætte din newsreader op så den
medsender information om hvilket tegnsæt du bruger, så vi undgår
ovenstående grimrian?

>> Han skrev s† et script i python (men sproget er naturligvis
>> underordnet) der hentede kurserne et eller andet sted fra og lavede en
>> passende zonefil med passende mellemrum. P† den m†de er det v‘rste der
>> kan ske at opdateringen fejler, og man f†r en mail om at det gik
>> galt, s† man kan se p† problemet.
>
> Det samme kan vel laves med PHP...

Ja, jeg skrev jo at sproget var underordnet.

> Noget med at lave et script som henter og parser valutakurser og smider dem
> i en fil (som et serialiseret array eller noget andet pænt).

Så mister du fordelen af den pænt distribuerede database, og så skal
det lige pludselig foregå et sted hvor webserveren kan læse filen. Det
er der ikke noget krav om med DNS-løsningen.

Som alternativ til din løsning ville jeg meget hellere putte kurserne
i en database, og så hente dem derfra. Så kan man have et cronjob der
opdaterer indholdet af databasen jævnligt.

> Så kan man lave et andet script til at håndtere interaktionen med
> brugeren - dette script kan bede det første script om kurserne, og
> hvis de lige er blevet hentet, så får man et array tilbage i
> hovedet, men hvis de er gamle, så forsøger valuta-scriptet først at
> opdatere før det sender et array tilbage.

Det lyder nu godt nok som en rigtig dårlig idé, hvis du spørger mig.

Hvad så når scriptet fejler, så kan man slet ikke få nogle kurser?

Hvorfor dog vente med opdateringen til der rent faktisk er nogen der
skal bruge den? Hvorfor ikke lave den løbende uafhængigt af hvornår
den bliver brugt, så der altid er kurser i systemet?

> Det vil naturligvis give en længere svartid en gang imellem, men for det
> meste vil opslaget kun bestå i at læse en fil.

Ja, og når scriptet fejler vil det give uendelig lang svartid. Ufedt.

--
Jacob - www.bunk.cc
We're upgrading /dev/null

Thomas Lindgaard (03-04-2003)
Kommentar
Fra : Thomas Lindgaard


Dato : 03-04-03 11:35

Jacob Bunk Nielsen <spam@bunk.cc> wrote in
news:spamdrop+m3istwos1r.fsf@paven.bunk.cc:

> Thomas Lindgaard <thomas@it-snedkeren.BLACK_HOLE.dk> writes:
>> Jacob Bunk Nielsen <spam@bunk.cc> wrote:
>>
>>> En anden l›sning kan dog v‘re som en af mine venner gjorde. Han
>>> baserede s†dan et valuta-system p† TXT-records i DNS. N†r man s†
>>> slog TXT-recorden for sek.foo.invalid op fik man fx 0,80 osv.
>>
>> Pyyh ha det lyder som noget DNS-griseri :)
>
> Nejda. Hvorfor synes du det er noget griseri? Du kan da bruge DNS til
> meget mere end lige navne-opslag.

Er det ikke lidt lige som at gemme sukker og kandis i samme krukke,
fordi man bare kan si det ene eller det andet fra når man skal bruge
noget fra den? :)

> Kan jeg i øvrigt ikke lokke dig til at sætte din newsreader op så
> den medsender information om hvilket tegnsæt du bruger, så vi
> undgår ovenstående grimrian?

Er det bedre nu? æøåÆØÅ (Installerede lige forfra i går...)

>>> Han skrev s† et script i python (men sproget er naturligvis
>>> underordnet) der hentede kurserne et eller andet sted fra og lavede
>>> en passende zonefil med passende mellemrum. P† den m†de er det
>>> v‘rste der kan ske at opdateringen fejler, og man f†r en mail om
>>> at det gik galt, s† man kan se p† problemet.
>>
>> Det samme kan vel laves med PHP...
>
> Ja, jeg skrev jo at sproget var underordnet.

Jowjow - jeg tænkte bare lidt i "jeg har ikke min egen server så jeg kan
ikke køre cron-jobs så jeg er nødt til at gøre det hele on-the-fly"-
baner :)

>> Noget med at lave et script som henter og parser valutakurser og
>> smider dem i en fil (som et serialiseret array eller noget andet
>> pænt).
>
> Så mister du fordelen af den pænt distribuerede database, og så
> skal det lige pludselig foregå et sted hvor webserveren kan læse
> filen. Det er der ikke noget krav om med DNS-løsningen.

Mjaeh - man kan jo hente outputtet fra et vilkårligt PHP-script ved bare
at åbne det som en fil.

$kurser = file('http://blabla.dk/gør-noget-med-kurser.php');

Det vil naturligvis tage noget tid at hente kurserne over nettet, men
igen: Det var tænkt som en løsning for folk uden cron-jobs og adgang til
DNS.

> Som alternativ til din løsning ville jeg meget hellere putte kurserne
> i en database, og så hente dem derfra. Så kan man have et cronjob
> der opdaterer indholdet af databasen jævnligt.
>
>> Så kan man lave et andet script til at håndtere interaktionen med
>> brugeren - dette script kan bede det første script om kurserne, og
>> hvis de lige er blevet hentet, så får man et array tilbage i
>> hovedet, men hvis de er gamle, så forsøger valuta-scriptet først at
>> opdatere før det sender et array tilbage.
>
> Det lyder nu godt nok som en rigtig dårlig idé, hvis du spørger
> mig.
>
> Hvad så når scriptet fejler, så kan man slet ikke få nogle kurser?

Hvis scriptet fejler i sin opdatering så sender det blot de kurser den
har liggende i sin fil - denne skal naturligvis kun overskrives hvis
opdatering går godt.

> Hvorfor dog vente med opdateringen til der rent faktisk er nogen der
> skal bruge den? Hvorfor ikke lave den løbende uafhængigt af hvornår
> den bliver brugt, så der altid er kurser i systemet?

Opdateringen skulle ikke nødvendigvis foregå hver gang. Første gang
scriptet kaldes efter midnat kunne det opdatere, og resten af dagen
kunne det tage kurserne fra sin cache.

>> Det vil naturligvis give en længere svartid en gang imellem, men for
>> det meste vil opslaget kun bestå i at læse en fil.
>
> Ja, og når scriptet fejler vil det give uendelig lang svartid. Ufedt.

:)

--
Hyggehej
/Thomas

Jacob Bunk Nielsen (03-04-2003)
Kommentar
Fra : Jacob Bunk Nielsen


Dato : 03-04-03 17:07

Thomas Lindgaard <thomas@it-snedkeren.BLACK_HOLE.dk> writes:
> Jacob Bunk Nielsen <spam@bunk.cc> wrote:
>
> Er det ikke lidt lige som at gemme sukker og kandis i samme krukke,
> fordi man bare kan si det ene eller det andet fra når man skal bruge
> noget fra den? :)

Ehhh, det ved jeg ikke. Jeg er ikke så god til det med analogier. De
har en tendens til at forvirre tingene mere end de gavner.

>> Kan jeg i øvrigt ikke lokke dig til at sætte din newsreader op så
>> den medsender information om hvilket tegnsæt du bruger, så vi
>> undgår ovenstående grimrian?
>
> Er det bedre nu? æøåÆØÅ (Installerede lige forfra i går...)

Ja, tak.

>> Ja, jeg skrev jo at sproget var underordnet.
>
> Jowjow - jeg tænkte bare lidt i "jeg har ikke min egen server så jeg kan
> ikke køre cron-jobs så jeg er nødt til at gøre det hele on-the-fly"-
> baner :)

Jamen, det var jo ikke det du skrev

>> Så mister du fordelen af den pænt distribuerede database, [ ... ]
>
> Mjaeh - man kan jo hente outputtet fra et vilkårligt PHP-script ved bare
> at åbne det som en fil.

Ja, men du mister stadig fordelen af den distrubuerede database. Du er
stadig sårbar overfor at den server du henter fra kan være
nede. Normalt har man jo flere DNS-servere.

> Det vil naturligvis tage noget tid at hente kurserne over nettet, men
> igen: Det var tænkt som en løsning for folk uden cron-jobs og adgang til
> DNS.

Det med DNS er altså kun et mindre problem. Man kan fx bruge
gratisdns.dk.

Men ja, jeg kan da godt se at det kræver at man lige har styr på sin
DNS, og er da også helt klart lettest, hvis man lige selv sætter en
DNS-server op, som kan være master for zonen. Men det tager måske også
hele 10 minutter eller sådan noget.

> Opdateringen skulle ikke nødvendigvis foregå hver gang. Første gang
> scriptet kaldes efter midnat kunne det opdatere, og resten af dagen
> kunne det tage kurserne fra sin cache.

Nej, men det er ufedt at have den til at foregå synkront med at den
skal bruges på en webside. I hvert fald, hvis du spørger mig.

--
Jacob - www.bunk.cc
Never put off until tomorrow what you can do the day after.

Thomas Lindgaard (07-04-2003)
Kommentar
Fra : Thomas Lindgaard


Dato : 07-04-03 11:02

Jacob Bunk Nielsen <spam@bunk.cc> wrote in
news:spamdrop+m3adf7efav.fsf@paven.bunk.cc:

> Thomas Lindgaard <thomas@it-snedkeren.BLACK_HOLE.dk> writes:
>> Jacob Bunk Nielsen <spam@bunk.cc> wrote:
>>
>> Er det ikke lidt lige som at gemme sukker og kandis i samme krukke,
>> fordi man bare kan si det ene eller det andet fra når man skal bruge
>> noget fra den? :)
>
> Ehhh, det ved jeg ikke. Jeg er ikke så god til det med analogier. De
> har en tendens til at forvirre tingene mere end de gavner.

Hehe - jeg mener bare at man jo så blander noget ind i DNS'en som ikke
har noget at gøre dér :)

>> Jowjow - jeg tænkte bare lidt i "jeg har ikke min egen server så jeg
>> kan ikke køre cron-jobs så jeg er nødt til at gøre det hele
>> on-the-fly"- baner :)
>
> Jamen, det var jo ikke det du skrev

Nej men du skal jo bare læse det jeg mener :)

>>> Så mister du fordelen af den pænt distribuerede database, [ ... ]
>>
>> Mjaeh - man kan jo hente outputtet fra et vilkårligt PHP-script ved
>> bare at åbne det som en fil.
>
> Ja, men du mister stadig fordelen af den distrubuerede database. Du er
> stadig sårbar overfor at den server du henter fra kan være
> nede. Normalt har man jo flere DNS-servere.

Det er korrekt.

>> Det vil naturligvis tage noget tid at hente kurserne over nettet, men
>> igen: Det var tænkt som en løsning for folk uden cron-jobs og adgang
>> til DNS.
>
> Det med DNS er altså kun et mindre problem. Man kan fx bruge
> gratisdns.dk.
>
> Men ja, jeg kan da godt se at det kræver at man lige har styr på sin
> DNS, og er da også helt klart lettest, hvis man lige selv sætter en
> DNS-server op, som kan være master for zonen. Men det tager måske
> også hele 10 minutter eller sådan noget.

Mjaeh... godt og vel...

>> Opdateringen skulle ikke nødvendigvis foregå hver gang. Første gang
>> scriptet kaldes efter midnat kunne det opdatere, og resten af dagen
>> kunne det tage kurserne fra sin cache.
>
> Nej, men det er ufedt at have den til at foregå synkront med at den
> skal bruges på en webside. I hvert fald, hvis du spørger mig.

Jep det er ufedt at siden af og til vil være længe om at loade, men hvis
cron jobs ikke er tilgængelige, så er der vel ikke andre løsninger...?

--
Hyggehej
/Thomas

Jacob Bunk Nielsen (07-04-2003)
Kommentar
Fra : Jacob Bunk Nielsen


Dato : 07-04-03 12:39

Thomas Lindgaard <thomas@it-snedkeren.BLACK_HOLE.dk> writes:

> Jep det er ufedt at siden af og til vil være længe om at loade, men hvis
> cron jobs ikke er tilgængelige, så er der vel ikke andre løsninger...?

Jo, så er det jo netop at man kan bruge DNS, da det jo er en fuldt
distribueret database, som slet ikke behøver at ligge hos
webhoteludbyderen, men fint kan ligge hos fx gratisdns.dk eller på
nogle andre DNS-servere man evt. måtte have adgang til.

--
Jacob - www.bunk.cc
If we all work together, we can totally disrupt the system.

Thomas Lindgaard (07-04-2003)
Kommentar
Fra : Thomas Lindgaard


Dato : 07-04-03 13:43

Jacob Bunk Nielsen <spam@bunk.cc> wrote in
news:spamdrop+m3wui68rln.fsf@paven.bunk.cc:

> Thomas Lindgaard <thomas@it-snedkeren.BLACK_HOLE.dk> writes:
>
>> Jep det er ufedt at siden af og til vil være længe om at loade, men
>> hvis cron jobs ikke er tilgængelige, så er der vel ikke andre
>> løsninger...?
>
> Jo, så er det jo netop at man kan bruge DNS, da det jo er en fuldt
> distribueret database, som slet ikke behøver at ligge hos
> webhoteludbyderen, men fint kan ligge hos fx gratisdns.dk eller på
> nogle andre DNS-servere man evt. måtte have adgang til.

Hmmm... igen en uklar formulering fra min side. Der skulle have stået noget
i retning af følgende:

"Jep det er ufedt at siden af og til vil være længe om at loade, men hvis
cron jobs ikke er tilgængelige, og man har en fobi mod at lægge ikke-DNS-
ting i DNS'en[1], så er der vel ikke andre løsninger...?"

:)

[1] og lignende hakkerier

--
Hyggehej
/Thomas

Jacob Bunk Nielsen (07-04-2003)
Kommentar
Fra : Jacob Bunk Nielsen


Dato : 07-04-03 15:02

Thomas Lindgaard <thomas@it-snedkeren.BLACK_HOLE.dk> writes:

> "Jep det er ufedt at siden af og til vil være længe om at loade, men hvis
> cron jobs ikke er tilgængelige, og man har en fobi mod at lægge ikke-DNS-
> ting i DNS'en[1], så er der vel ikke andre løsninger...?"

.... og hvis man har en fobi overfor at bruge internettet, så kan man
også bare helt lade være

--
Jacob - www.bunk.cc
Today is the last day of your life so far.

Thomas Lindgaard (07-04-2003)
Kommentar
Fra : Thomas Lindgaard


Dato : 07-04-03 21:19

Jacob Bunk Nielsen <spam@bunk.cc> wrote in
news:spamdrop+m3he9a8kyz.fsf@paven.bunk.cc:

> ... og hvis man har en fobi overfor at bruge internettet, s† kan man
> ogs† bare helt lade v‘re

hehe - nå det må være nok slåsseri om dén sag :)

--
Hyggehej
/Thomas

Søg
Reklame
Statistik
Spørgsmål : 177502
Tips : 31968
Nyheder : 719565
Indlæg : 6408534
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste