Curs Php-mysql

Cu acest script puteti sa adaugati in site-ul dv. cursul valutar BNR din ziua curenta (Dolari, Euro, Lire Sterline, Aur).
Cursul este preluat direct de pe site-ul BNR, dintr-un fisier .xml oferit de ei, apoi salvat intr-un fisier cache pe serverul dv. Afisarea proprizisa se face cu datele preluate din fisierul cache, acesta fiind actualizat de acelasi script o singura data la 2 ore, pentru a nu fi considerat spam.
Mai jos, sub exemplu gasiti codul PHP, sau il puteti descarca impreuna cu instructiunile de la link-ul Download (sus-dreapta).


O versiune noua a scriptului php pentru curs valutar de la BNR, care afiseaza si variatia de curs fata de ziua precedenta, e la pagina: marplo.net/php-mysql/curs_valutar_conversii


Afiseaza curs valutar

Cod PHP Curs valutar

<?php 
// De la marplo.net (02-02-2010)

// Locatia fisierului de la BNR si numele celui pt. cache
$f_bnr = "http://www.bnro.ro/nbrfxrates.xml";
$f_cache = "valutarbnr.xml";

// Matricea cu valutele ce vor fi afisate, si denumirea de afisare
$valuta = array(array("USD",'Dolari'), array("EUR",'Euro'), array("GBP",'Lire S'), array("XAU",'Aur (g)'));

$curs_v = array();			// Variabila ce va contine cursul pt. afisare
$today = date("d-m-Y");		// data zilei

// Functia care returneaza continutul unnei pagini
// Incearca sa-l preia prin curl sau file_get_context
function get_pag($fileurl) {
 // Creaza o matrice ce stocheaza mai multe tipuri de agenti (browsere)
 $agents[] = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; WOW64; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; Media Center PC 5.0)";
 $agents[] = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)";
 $agents[] = "Opera/9.63 (Windows NT 6.0; U; ru) Presto/2.1.1";

 // Daca poate initializa resursa curl
 if ($ch = curl_init()) {
 curl_setopt($ch, CURLOPT_URL, $fileurl);		// Apeleaza adresa URL specificata
 
 // Trimite header-ele necesare
 curl_setopt($ch, CURLOPT_HEADER, false);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
 curl_setopt($ch, CURLOPT_USERAGENT, array_rand($agents, 1));		// Cu agent ales random

 $data = curl_exec($ch);		// Preia continutul returnat intrun sir
 curl_close($ch);		// Inchide resursa curl

	return $data;
 }
 else if ($data = file_get_contents($fileurl)) return $data;
 else return false;
}

// Daca fisierul de cache e prea vechi se regenereaza
if ( (!file_exists($f_cache)) || (filesize($f_cache) == 0) || (time()-filemtime($f_cache) > 7200) ) {
 // Daca poate accesa fisierul extern
	if ($stuff = get_pag($f_bnr)) {
 $fh = fopen($f_cache,"w");
	 fputs($fh, $stuff);
 fclose($fh);
	}
}

// se genereaza inceputul codului tabelului HTML, cu data curenta
 $rezult = '<table align="center" border="0" cellspacing="0" cellpadding="5" width="175" style="font-family: Verdana, Arial, sans-serif; font-size: 12px; background-color:#f8f8fe;">
 <tr><td bgcolor="#11fefe"><div align="center"><font size="3" color="blue"><b>Curs valutar</b></font> (<i>BNR</i>)<br />
 <strong>- '.$today.' -</strong> 
 </div></td></tr>
 <tr><td align="center" valign="top"> 
 <table border="0" cellspacing="5" cellpadding="0" style="font-family: Verdana, Arial, sans-serif; font-size: 12px; background-color:#f8f8fe;">'; 

// Aici se incearca deschiderea fisierului de la bnr 
if ($cursvalutar = file_get_contents($f_cache)) {
 // Se parcurge matricea cu $valuta si se stabileste tiparul de cautare
 for($i=0; $i<count($valuta); $i++) {
 $tipar = '/<Rate currency="'.$valuta[$i][0].'">([0-9.,]+)<\/Rate>/';

 // se cauta cursul in fisierul preluat de la bnr sirul care se potriveste tiparului
	// extrage valoarea numerica
	if (preg_match($tipar, $cursvalutar, $out)) {
	 $curs_v[] = array($valuta[$i][1], $out[1]);
	}
 }

 // adauga cursul in variabila ce contine codul HTML
 if (count($curs_v)>=1) {
 for($i=0; $i<count($curs_v); $i++) $rezult .= '<tr><td><b>'.$curs_v[$i][0].'</b></td><td>'.$curs_v[$i][1].'</td><td>Lei</td></tr>';
 }
 else $rezult .= '<tr><td>Nu a fost gasit nici un curs</td></tr>';
}
else { 
 $rezult .= "<tr><td>Fisierul pentru citirea cursului nu a putut fi accesat.</td></tr>";
}

// Inchide codul HTML al tabelului
$rezult .= '</table></td></tr>
<tr><td valign"top"> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="https://marplo.net" target="_blank" style="color:#e8e8fe; font-size:8px;">Cursuri Jocuri Anime</a></td></tr></table>';

echo $rezult;			// Afiseaza codul HTML rezultat
?>

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce tag adauga imagine in pagina web?
<div> <img> <span>
<img src="http://coursesweb.net/imgs/webcourses.gif" width="191" height="63" alt="Courses-Web" />
Care din aceste coduri CSS afiseaza textul inclinat?
font-style: italic; text-decoration: underline; font-weight: 500;
#id {
  font-style: italic;
}
Clic pe functia jQuery care ascunde animat un element HTML.
click() hide() show()
$(document).ready(function() {
  $(".a_class").click(function(){ $(this).hide("slow"); });
});
Clic pe functia definita corect in PHP.
fname function() {} function fname() {} function $fname() {};
function fname($a, $b) {
  echo $a * $b;
}
Indicati forma pentru Prezent Perfect Continuu a verbului "to walk" (a merge).
have walked have been walking be walking
I have been walking for 5 hours.
- Merg pe jos de 5 ore.
Indicati Trecutul Nedefinit pentru verbul "ser" (a fi) la forma Yo.
será sería fui
Yo fui entrenador.
- Am fost antrenor.
Script PHP - curs valutar

Last accessed pages

  1. Curs complet de limba engleza, incepatori (14028)
  2. Cerc si Oval cu CSS (1035)
  3. Pronume direct (2180)
  4. Pronume relativ - que, quien, lo que (595)
  5. Utilizare getElementById (2205)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (1223)
  2. Curs HTML gratuit Tutoriale HTML5 (949)
  3. Coduri pt culori (697)
  4. Creare si editare pagini HTML (555)
  5. Conditional IF in Limba Engleza - Fraze Conditionale (510)
Chat
Discuta sau lasa un mesaj pt. ceilalti utilizatori
Full screenInchide