Ajax para el cambio de divisas
¿Aburrido de tener que ir divisa a divisa buscando el cambio cada día, para copiarlo e introducirlo en hojas Excel?. Así estaba yo hasta que me programé esta combinación de JavaScript y PHP para leer los RSS (Really Simple Syndication en formato XML) del Banco de Canada (Bank of Canada), de siempre mi banco central favorito, para obtener una tabla de cambios con mis divisas habituales y poder pegar con comodidad esa tabla en las hojas Excel que necesitaban esos cambios actualizados.
El resultado es una página web, con un estilo vintage muy a mi gusto, en colores de computador clásico y con la preciosa Lucida Console por tipo de letra.
Todo el código JavaScript y PHP (PHP Hypertext Pre-processor ) puede consultarse en PDF (Portable Document Format) al final de este post, sólo pongo a continuación un par de funciones, la primera JavaScript y la segunda PHP, que muestran como se puede tener un estilo de programación similar con leguajes de programación diferentes.
///////////////////////////////////////////////////////////////////
function XmlGetValue(itm, atr)
// PURPOSE: Returns a text value. If atr = cb:value and itm =
// ...<cb:value frequency="business" decimals="4">0.9947</cb:value>...
// first gets " frequency="business" decimals="4">0.9947<"
// and returns 0.9947
///////////////////////////////////////////////////////////////////
{
var tmp = TxtBetween2Tag(itm,"<"+atr,"/"+atr+">");
var txt = TxtBetween2Tag(tmp,">","<");
return(txt);
}
///////////////////////////////////////////////////////////////////
function GetRssFile()
// PURPOSE: Gets the contents of an external Rss feed and saves its
// contents to the cached file on the server.
///////////////////////////////////////////////////////////////////
{
global $rssUrl, $pthFile;
$contents=file_get_contents($rssUrl); // Fetch the Rss file
$fp=fopen($pthFile, "w"); // Open local file for write
fwrite($fp, $contents); // Write contents of Rss to cache file
fclose($fp); // Close the local file
}
Programación JavaScript y PHP para hacer la combinación Ajax