Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pobieranie kursu dolara z nbp.pl
Forum PHP.pl > Forum > Przedszkole
petrosz
witam,

jestem w trakcie tworzenia sklepu, w ktorym ceny beda podane w dolarach. Jednak przy finalizowaniu transakcji musze przekonwertowac je na PLN.

Problem moj polega ta tym, ze nie moge poradzic sobie z pobraniem aktuanlego kursu dolara ze strony http://www.nbp.pl/Kursy/xml/a103z050531.xml

potrzebna mi tylko ta jedna wartosc, abym mogl ja wykorzystac do obliczen.

Z gory dziekuje za pomoc

pozdrawiam
piotrek
Ociu
Z tego co pamiętam, trzeba mieć plik xml na serwerze, czyli musisz odtworzyć ten plik, sciągnąc zawartość i zapisać plik na swoim serwerze.
crash
Możesz użyć na przykład Simple XML'a:
  1. <?php
  2. $xml = simplexml_load_file('http://www.nbp.pl/Kursy/xml/a103z050531.xml');
  3.  
  4. echo $xml->pozycja[0]->kurs_sredni;
  5. ?>

Albo skożystać z mojej funkcji, którą kiedyś podawałem tu na forum:
  1. <?php
  2. function pobierz_kurs($in)
  3. {
  4. if($f = @fopen('http://www.nbp.pl/kursy/kursya.html', 'r'))
  5. {
  6. $dane = '';
  7.  
  8. while(!feof($f))
  9. {
  10. $dane .= fgets($f);
  11. }
  12.  
  13. fclose($f);
  14.  
  15. preg_match_all(&#092;"#<td class=\"bg[1-2]?\">[0-1]{1,3} ([A-Z]{3})</td>rn<td class=\"bg[1-2]?\">([0-9,]+)</td>#e\", $dane, $wynik);
  16.  
  17. $out = array();
  18.  
  19. for($i = 0; $i < count($wynik[1]); $i++)
  20. {
  21. if(in_array($wynik[1][$i], $in))
  22. {
  23. $out[$wynik[1][$i]] = $wynik[2][$i];
  24. }
  25. }
  26.  
  27. return $out;
  28. }
  29. else
  30. {
  31. return;
  32. }
  33. }
  34.  
  35. $waluty = array('USD', 'CHF', 'GBP'); // kursy, których walut Cie interesują
  36.  
  37. $kursy = pobierz_kurs($waluty); // pobrane dane; np $kursy['USD'] zawiera kurs dolara...
  38.  
  39. print_r($kursy);
  40. ?>
Guest
z pierwszego skryptu wywala mi blad

Fatal error: Call to undefined function: simplexml_load_file() in /home/users/iconblast/public_html/checkout.php on line 35

natomiast w drugim przykladzie nie moze otworzyc pliku



co trzeba zrobic, zeby skorzystac z Simple Xml?

pozdrawiam
piotrek
crash
Cytat(Manual)
The SimpleXML extension requires php 5.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.