Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: kalkulator walut (kursy z NBP)
Forum PHP.pl > Forum > PHP
Fixer
Witam,
Potrzebuję skrypt, który będzie kalkulatorem walut gdzie kursy będą pobierane z NBP.
Wszędzie takowego skryptu szukałem ale niestety nie znalazłem.

Dlatego postanowiłem coś samemu napisać jednak po drodze napotkałem kilka problemów stanołem w miejscu... może moglibyście mi pomóc ruszyć z tym dalej?questionmark.gif

Zajlepiej zobaczcie przykład, który jest tutaj

W chwili obecnej kalkulator ten jeszcze nie przelicza mi tych walut sad.gif

Otórz nie wiem za bardzo jak wykonać to przeliczanie tych walut.
Czyli musiał by pobierać kursy i zapisywać to do jakiś zmiennych...

Liczę na waszą pomoc...

Jeśli mogę dać jakieś wytyczne to:
1. skrypt ma pobierać kursy walut z NBP z tabeli C wycinać je z pliku XML
2. wartość średnią, wartość kupna, wartość sprzedaży, data aktualizacji walut mają pojawić się w bazie danych mysql'a i co 30 minut aktualizować je tam
3. skrypt ma przeliczać waluty pobierając kurs z bazy danych.

tabela w bazie mysql
  1. DROP DATABASE `waluty`;
  2. CREATE DATABASE `waluty`;
  3. USE waluty;
  4.  
  5. DROP TABLE IF EXISTS `kursy`;
  6. CREATE TABLE `kursy` (
  7. `id` int(6) UNSIGNED NOT NULL AUTO_INCREMENT,
  8. `data` int(11) UNSIGNED NOT NULL DEFAULT '0',
  9. `nazwa_waluty` varchar(50) NOT NULL DEFAULT '',
  10. `przelicznik` char(3) NOT NULL DEFAULT '',
  11. `skrot_waluty` char(3) NOT NULL DEFAULT '',
  12. `kurs_kupna` float NOT NULL DEFAULT '0',
  13. `kurs_sprzedazy` float NOT NULL DEFAULT '0',
  14. `kurs_sredni` float NOT NULL DEFAULT '0',
  15. PRIMARY KEY (`id`)
  16. ) TYPE=MyISAM AUTO_INCREMENT=1 ;


PS. jak kalkulator będzie gotowy to udostępnie źródło jako skrypt do pobrania na swoją stronę...
chomiczek
sądze, że najlepiej byłoby Ci zapisywać aktualny kurs w bazie, i potem przeliczając pobierać te dane z bazy, tutaj masz tabele z kursami: http://www.nbp.pl/Kursy/KursyC.html i albo CURLem wyciągasz te dane, albo bierzesz XMLa z tej strony i parsujesz.. problem z XMLem jest taki, że każdego dnia ma inną nazwę, więc i tak musisz sobie CURLem pobrać aktualną nazwę.
Tyle odemnie..

P.S. Pisałem keidyś taki kalkilator, ale źródła chyba juz nie znajde sad.gif
Fixer
Oka mam taki oto kodzik:
  1. <?php
  2.   // otwieramy tabelę C
  3.   $fp = fopen('http://www.nbp.pl/Kursy/KursyC.html','r');
  4.  
  5.   while ($line=fgets($fp,10000)) {
  6.     $text.=$line;
  7.   }
  8.  
  9.   fclose($fp);
  10.  
  11.   $str = preg_match_all('#<td class="bg1">(.*?)</td>#si', $text, $jest);
  12.   
  13.   // zmienne
  14.   $usd_nazwa = $jest[0][0];
  15.   $usd_kod = $jest[0][1];
  16.   $usd_kupno = $jest[0][2];
  17.   $usd_sprzedaz = $jest[0][3];
  18.   
  19.   echo '1.<BR>
  20. Nazwa waluty: <B>' . $usd_nazwa . '</B><BR>
  21. Kod waluty: <B>' . $usd_kod . '</B><BR>
  22. Kurs kupna: <B>' . $usd_kupno . '</B><br>
  23. Kurs sprzedaży: <B>' . $usd_sprzedaz . '</B><br>
  24. Kurs &para;redni: <B>' . $usd_sredni . '</B><br><BR>';
  25.  
  26. ?>


wynik:
Kod
1.
Nazwa waluty: dolar amerykański
Kod waluty: 1 USD
Kurs kupna: 3,2685
Kurs sprzedaży: 3,3345
Kurs średni:


źródło html
Kod
1.<BR>Nazwa waluty: <B><td class="bg1">dolar amerykański</td></B><BR> Kod waluty: <B><td class="bg1">1 USD</td></B><BR> Kurs kupna: <B><td class="bg1">3,2685</td></B><br>Kurs sprzedaży: <B><td class="bg1">3,3345</td></B><br>Kurs średni: <B></B><br><BR>


Jak mam go teraz zmodyfikowac tak aby w kodzie html nie pokazywał sie fragment: "<td class="bg1">", <td class="bg2">, </td>, <td>"?questionmark.gifquestionmark.gifquestionmark.gif
erix
preg_match...
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.