diabliyo

divisas.php

Feb 14th, 2012
314
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 13.21 KB | None | 0 0
  1. <?php
  2. #
  3. # M.S.I. Angel Cantu Jauregui
  4. # angel.cantu [a] sie-group.net
  5. # http://www.sie-group.net
  6. #
  7.  
  8. include( "modulos/modulos.php" );
  9.  
  10. define( GOOGLECALCULATOR_SERVER, "www.google.com" );
  11. define( GOOGLECALCULATOR_PATH, "/ig/calculator?");
  12.  
  13. # retorna arreglo de dvisas
  14. function google_listdivisa()
  15.     {
  16.     $divisa= array( 'AED'=>'Dirham de los Emiratos Árabes Unidos', 'AFN'=>'Afgani afgano',
  17.     'ALL'=>'Lek albano', 'AMD'=>'Dram armenio', 'ANG'=>'Florín de las Antillas Holandesas', 'AOA'=>'Kwanza angoleño', 'ARS'=>'Peso argentino',
  18.     'AUD'=>'Dólar australiano', 'AWG   Florín arubeño'=>'AZM     Manat azerbaiyano', 'BAM'=>'marco convertible de Bosnia-Herzegovina',
  19.     'BBD'=>'Dólar de Barbados', 'BDT'=>'Taka de Bangladesh', 'BGN'=>'Lev búlgaro', 'BHD'=>'Dinar bahreiní', 'BIF'=>'Franco burundés',
  20.     'BMD'=>'Dólar de Bermuda', 'BND'=>'Dólar de Brunei', 'BOB'=>'Boliviano', 'BOV'=>'Mvdol boliviano (código de fondos)', 'BRL'=>'Real brasileño',
  21.     'BSD'=>'Dólar bahameño', 'BTN'=>'Ngultrum de Bután', 'BWP'=>'Pula de Botswana', 'BYR'=>'Rublo bielorruso', 'BZD'=>'Dólar de Belice',
  22.     'CAD'=>'Dólar canadiense', 'CDF'=>'Franco congoleño', 'CHF'=>'Franco suizo', 'CLF'=>'Unidades de fomento chilenas (código de fondos)',
  23.     'CLP'=>'Peso chileno', 'CNY'=>'Yuan Renminbi de China', 'COP'=>'Peso colombiano', 'COU'=>'Unidad de valor real colombiana (añadida al COP)',
  24.     'CRC'=>'Colón costarricense', 'CSD'=>'Dinar serbio (It was replaced by RSD on October 25, 2006)', 'CUP'=>'Peso cubano', 'CVE'=>'Escudo caboverdiano',
  25.     'CYP'=>'Libra chipriota', 'CZK'=>'Koruna checo', 'DJF'=>'Franco yibutiano', 'DKK'=>'Corona danesa', 'DOP'=>'Peso dominicano', 'DZD'=>'Dinar algerino',
  26.     'EEK'=>'Corona estonia', 'EGP'=>'Libra egipcia', 'ERN'=>'Nakfa eritreo', 'ETB'=>'Birr etíope', 'EUR'=>'Euro', 'FJD'=>'Dólar fijiano', 'FKP'=>'Libra malvinense',
  27.     'GBP'=>'Libra esterlina (libra de Gran Bretaña)', 'GEL'=>'Lari georgiano', 'GHC'=>'Cedi ghanés', 'GIP'=>'Libra de Gibraltar', 'GMD'=>'Dalasi gambiano',
  28.     'GNF'=>'Franco guineano', 'GTQ'=>'Quetzal guatemalteco', 'GYD'=>'Dólar guyanés', 'HKD'=>'Dólar de Hong Kong', 'HNL'=>'Lempira hondureño',
  29.     'HRK'=>'Kuna croata', 'HTG'=>'Gourde haitiano', 'HUF'=>'Forint húngaro', 'IDR'=>'Rupiah indonesia', 'ILS'=>'Nuevo shequel israelí', 'INR'=>'Rupia india',
  30.     'IQD'=>'Dinar iraqí', 'IRR'=>'Rial iraní', 'ISK'=>'Króna islandesa', 'JMD'=>'Dólar jamaicano', 'JOD'=>'Dinar jordano', 'JPY'=>'Yen japonés', 'KES'=>'Chelín keniata',
  31.     'KGS'=>'Som kirguís (de Kirguistán)', 'KHR'=>'Riel camboyano', 'KMF'=>'Franco comoriano (de Comoras)', 'KPW'=>'Won norcoreano', 'KRW'=>'Won surcoreano',
  32.     'KWD'=>'Dinar kuwaití', 'KYD'=>'Dólar caimano (de Islas Caimán)', 'KZT'=>'Tenge kazajo (de Kazajstán)', 'LAK'=>'Kip lao', 'LBP'=>'Libra libanesa', 'LKR'=>'Rupia de Sri Lanka',
  33.     'LRD'=>'Dólar liberiano', 'LSL'=>'Loti lesothense (de Lesotho)', 'LTL'=>'Litas lituano', 'LVL'=>'Lat letón', 'LYD'=>'Dinar libio', 'MAD'=>'Dirham marroquí', 'MDL'=>'Leu moldavo',
  34.     'MGA'=>'Ariary malgache (de Madagascar)', 'MKD'=>'Denar macedonio', 'MMK'=>'Kyat myanmaro', 'MNT'=>'Tughrik mongol', 'MOP'=>'Pataca de Macao', 'MRO'=>'Ouguiya mauritana',
  35.     'MTL'=>'Lira maltesa', 'MUR'=>'Rupia mauricia', 'MVR'=>'Rufiyaa maldiva', 'MWK'=>'Kwacha malawiano', 'MXN'=>'Peso mexicano', 'MXV'=>'Unidad de Inversión (UDI) mexicana (código de fondos)',
  36.     'MYR'=>'Ringgit malayo', 'MZM'=>'Metical mozambiqueño', 'NAD'=>'Dólar namibio', 'NGN'=>'Naira nigeriana', 'NIO'=>'Córdoba nicaragüense', 'NOK'=>'Corona noruega', 'NPR'=>'Rupia nepalesa',
  37.     'NZD'=>'Dólar neozelandés', 'OMR'=>'Rial omaní (de Omán)', 'PAB'=>'Balboa panameña', 'PEN'=>'Nuevo sol peruano', 'PGK'=>'Kina de Papúa Nueva Guinea', 'PHP'=>'Peso filipino',
  38.     'PKR'=>'Rupia pakistaní', 'PLN'=>'zloty polaco', 'PYG'=>'Guaraní paraguayo', 'QAR'=>'Rial qatarí', 'RON'=>'Leu rumano (desde el 1 de julio de 2005)', 'RUB'=>'Rublo ruso', 'RWF'=>'Franco ruandés',
  39.     'SAR'=>'Riyal saudí', 'SBD'=>'Dólar de las Islas Salomón', 'SCR'=>'Rupia de Seychelles', 'SDD'=>'Dinar sudanés', 'SEK'=>'Corona sueca', 'SGD'=>'Dólar de Singapur', 'SHP'=>'Libra de Santa Helena',
  40.     'SKK'=>'Corona eslovaca', 'SLL'=>'Leone de Sierra Leona', 'SOS'=>'Chelín somalí', 'SRD'=>'Dólar surinamés (desde el 1 de enero de 2004)', 'STD'=>'Dobra de Santo Tomé y Príncipe',
  41.     'SYP'=>'Libra siria', 'SZL'=>'Lilangeni suazi (de Suazilandia)', 'THB'=>'Baht tailandés', 'TJS'=>'Somoni tayik (de Tayikistán)', 'TMM'=>'Manat turcomano', 'TND'=>'Dinar tunecino',
  42.     'TOP'=>'Pa’anga tongano', 'TRY'=>'Nueva lira turca', 'TTD'=>'Dólar de Trinidad y Tobago', 'TWD'=>'Dólar taiwanés', 'TZS'=>'Chelín tanzano', 'UAH'=>'Hryvnia ucraniana', 'UGX'=>'Chelín ugandés',
  43.     'USD'=>'Dólar estadounidense', 'USN'=>'Dólar estadounidense (Siguiente día) (código de fondos)', 'USS'=>'United States dollar (Mismo día) (código de fondos)', 'UYU'=>'Peso uruguayo',
  44.     'UZS'=>'Som uzbeco', 'VEB'=>'Bolívar venezolano', 'VEF'=>'Bolívar fuerte venezolano', 'VND'=>'Dong vietnamita', 'VUV'=>'Vatu vanuatense', 'WST'=>'Tala samoana', 'XAF'=>'Franco CFA',
  45.     'XAG'=>'Onza de plata', 'XAU'=>'Onza de oro', 'XBA'=>'European Composite Unit (EURCO) (Bonds market unit)', 'XBB'=>'European Monetary Unit (E.M.U.-6) (Bonds market unit)',
  46.     'XBC'=>'European Unit of Account 9 (E.U.A.-9) (Bonds market unit)', 'XBD'=>'European Unit of Account 17 (E.U.A.-17) (Bonds market unit)', 'XCD'=>'Dólar del Caribe Oriental',
  47.     'XDR'=>'Special Drawing Rights (FMI)', 'XFO'=>'Franco de oro (Special settlement currency)', 'XFU'=>'Franco UIC (Special settlement currency)', 'XOF'=>'Franco CFA', 'XPD'=>'Onza de paladio',
  48.     'XPF'=>'Franco CFP', 'XPT'=>'Onza de platino', 'XTS'=>'Reservado para pruebas', 'XXX'=>'Sin divisa', 'YER'=>'Rial yemení (de Yemen)', 'ZAR'=>'Rand sudafricano', 'ZMK'=>'Kwacha zambiano',
  49.     'ZWD'=>'Dólar zimbabuense' );
  50.     return $divisa;
  51.     }
  52.  
  53. # convierte de una divisa a otra
  54. function google_getdivisa( $numero, $div )
  55.     {
  56. #tipos de divisa soportado por google
  57. $divisa= array( 'AED'=>'Dirham de los Emiratos Árabes Unidos', 'AFN'=>'Afgani afgano',
  58.     'ALL'=>'Lek albano', 'AMD'=>'Dram armenio', 'ANG'=>'Florín de las Antillas Holandesas', 'AOA'=>'Kwanza angoleño', 'ARS'=>'Peso argentino',
  59.     'AUD'=>'Dólar australiano', 'AWG   Florín arubeño'=>'AZM     Manat azerbaiyano', 'BAM'=>'marco convertible de Bosnia-Herzegovina',
  60.     'BBD'=>'Dólar de Barbados', 'BDT'=>'Taka de Bangladesh', 'BGN'=>'Lev búlgaro', 'BHD'=>'Dinar bahreiní', 'BIF'=>'Franco burundés',
  61.     'BMD'=>'Dólar de Bermuda', 'BND'=>'Dólar de Brunei', 'BOB'=>'Boliviano', 'BOV'=>'Mvdol boliviano (código de fondos)', 'BRL'=>'Real brasileño',
  62.     'BSD'=>'Dólar bahameño', 'BTN'=>'Ngultrum de Bután', 'BWP'=>'Pula de Botswana', 'BYR'=>'Rublo bielorruso', 'BZD'=>'Dólar de Belice',
  63.     'CAD'=>'Dólar canadiense', 'CDF'=>'Franco congoleño', 'CHF'=>'Franco suizo', 'CLF'=>'Unidades de fomento chilenas (código de fondos)',
  64.     'CLP'=>'Peso chileno', 'CNY'=>'Yuan Renminbi de China', 'COP'=>'Peso colombiano', 'COU'=>'Unidad de valor real colombiana (añadida al COP)',
  65.     'CRC'=>'Colón costarricense', 'CSD'=>'Dinar serbio (It was replaced by RSD on October 25, 2006)', 'CUP'=>'Peso cubano', 'CVE'=>'Escudo caboverdiano',
  66.     'CYP'=>'Libra chipriota', 'CZK'=>'Koruna checo', 'DJF'=>'Franco yibutiano', 'DKK'=>'Corona danesa', 'DOP'=>'Peso dominicano', 'DZD'=>'Dinar algerino',
  67.     'EEK'=>'Corona estonia', 'EGP'=>'Libra egipcia', 'ERN'=>'Nakfa eritreo', 'ETB'=>'Birr etíope', 'EUR'=>'Euro', 'FJD'=>'Dólar fijiano', 'FKP'=>'Libra malvinense',
  68.     'GBP'=>'Libra esterlina (libra de Gran Bretaña)', 'GEL'=>'Lari georgiano', 'GHC'=>'Cedi ghanés', 'GIP'=>'Libra de Gibraltar', 'GMD'=>'Dalasi gambiano',
  69.     'GNF'=>'Franco guineano', 'GTQ'=>'Quetzal guatemalteco', 'GYD'=>'Dólar guyanés', 'HKD'=>'Dólar de Hong Kong', 'HNL'=>'Lempira hondureño',
  70.     'HRK'=>'Kuna croata', 'HTG'=>'Gourde haitiano', 'HUF'=>'Forint húngaro', 'IDR'=>'Rupiah indonesia', 'ILS'=>'Nuevo shequel israelí', 'INR'=>'Rupia india',
  71.     'IQD'=>'Dinar iraqí', 'IRR'=>'Rial iraní', 'ISK'=>'Króna islandesa', 'JMD'=>'Dólar jamaicano', 'JOD'=>'Dinar jordano', 'JPY'=>'Yen japonés', 'KES'=>'Chelín keniata',
  72.     'KGS'=>'Som kirguís (de Kirguistán)', 'KHR'=>'Riel camboyano', 'KMF'=>'Franco comoriano (de Comoras)', 'KPW'=>'Won norcoreano', 'KRW'=>'Won surcoreano',
  73.     'KWD'=>'Dinar kuwaití', 'KYD'=>'Dólar caimano (de Islas Caimán)', 'KZT'=>'Tenge kazajo (de Kazajstán)', 'LAK'=>'Kip lao', 'LBP'=>'Libra libanesa', 'LKR'=>'Rupia de Sri Lanka',
  74.     'LRD'=>'Dólar liberiano', 'LSL'=>'Loti lesothense (de Lesotho)', 'LTL'=>'Litas lituano', 'LVL'=>'Lat letón', 'LYD'=>'Dinar libio', 'MAD'=>'Dirham marroquí', 'MDL'=>'Leu moldavo',
  75.     'MGA'=>'Ariary malgache (de Madagascar)', 'MKD'=>'Denar macedonio', 'MMK'=>'Kyat myanmaro', 'MNT'=>'Tughrik mongol', 'MOP'=>'Pataca de Macao', 'MRO'=>'Ouguiya mauritana',
  76.     'MTL'=>'Lira maltesa', 'MUR'=>'Rupia mauricia', 'MVR'=>'Rufiyaa maldiva', 'MWK'=>'Kwacha malawiano', 'MXN'=>'Peso mexicano', 'MXV'=>'Unidad de Inversión (UDI) mexicana (código de fondos)',
  77.     'MYR'=>'Ringgit malayo', 'MZM'=>'Metical mozambiqueño', 'NAD'=>'Dólar namibio', 'NGN'=>'Naira nigeriana', 'NIO'=>'Córdoba nicaragüense', 'NOK'=>'Corona noruega', 'NPR'=>'Rupia nepalesa',
  78.     'NZD'=>'Dólar neozelandés', 'OMR'=>'Rial omaní (de Omán)', 'PAB'=>'Balboa panameña', 'PEN'=>'Nuevo sol peruano', 'PGK'=>'Kina de Papúa Nueva Guinea', 'PHP'=>'Peso filipino',
  79.     'PKR'=>'Rupia pakistaní', 'PLN'=>'zloty polaco', 'PYG'=>'Guaraní paraguayo', 'QAR'=>'Rial qatarí', 'RON'=>'Leu rumano (desde el 1 de julio de 2005)', 'RUB'=>'Rublo ruso', 'RWF'=>'Franco ruandés',
  80.     'SAR'=>'Riyal saudí', 'SBD'=>'Dólar de las Islas Salomón', 'SCR'=>'Rupia de Seychelles', 'SDD'=>'Dinar sudanés', 'SEK'=>'Corona sueca', 'SGD'=>'Dólar de Singapur', 'SHP'=>'Libra de Santa Helena',
  81.     'SKK'=>'Corona eslovaca', 'SLL'=>'Leone de Sierra Leona', 'SOS'=>'Chelín somalí', 'SRD'=>'Dólar surinamés (desde el 1 de enero de 2004)', 'STD'=>'Dobra de Santo Tomé y Príncipe',
  82.     'SYP'=>'Libra siria', 'SZL'=>'Lilangeni suazi (de Suazilandia)', 'THB'=>'Baht tailandés', 'TJS'=>'Somoni tayik (de Tayikistán)', 'TMM'=>'Manat turcomano', 'TND'=>'Dinar tunecino',
  83.     'TOP'=>'Pa’anga tongano', 'TRY'=>'Nueva lira turca', 'TTD'=>'Dólar de Trinidad y Tobago', 'TWD'=>'Dólar taiwanés', 'TZS'=>'Chelín tanzano', 'UAH'=>'Hryvnia ucraniana', 'UGX'=>'Chelín ugandés',
  84.     'USD'=>'Dólar estadounidense', 'USN'=>'Dólar estadounidense (Siguiente día) (código de fondos)', 'USS'=>'United States dollar (Mismo día) (código de fondos)', 'UYU'=>'Peso uruguayo',
  85.     'UZS'=>'Som uzbeco', 'VEB'=>'Bolívar venezolano', 'VEF'=>'Bolívar fuerte venezolano', 'VND'=>'Dong vietnamita', 'VUV'=>'Vatu vanuatense', 'WST'=>'Tala samoana', 'XAF'=>'Franco CFA',
  86.     'XAG'=>'Onza de plata', 'XAU'=>'Onza de oro', 'XBA'=>'European Composite Unit (EURCO) (Bonds market unit)', 'XBB'=>'European Monetary Unit (E.M.U.-6) (Bonds market unit)',
  87.     'XBC'=>'European Unit of Account 9 (E.U.A.-9) (Bonds market unit)', 'XBD'=>'European Unit of Account 17 (E.U.A.-17) (Bonds market unit)', 'XCD'=>'Dólar del Caribe Oriental',
  88.     'XDR'=>'Special Drawing Rights (FMI)', 'XFO'=>'Franco de oro (Special settlement currency)', 'XFU'=>'Franco UIC (Special settlement currency)', 'XOF'=>'Franco CFA', 'XPD'=>'Onza de paladio',
  89.     'XPF'=>'Franco CFP', 'XPT'=>'Onza de platino', 'XTS'=>'Reservado para pruebas', 'XXX'=>'Sin divisa', 'YER'=>'Rial yemení (de Yemen)', 'ZAR'=>'Rand sudafricano', 'ZMK'=>'Kwacha zambiano',
  90.     'ZWD'=>'Dólar zimbabuense' );
  91.  
  92.     if( !$numero || !is_numeric($numero) || !is_array($div) )       return 0;
  93.    
  94.     # http://www.google.com/ig/calculator?hl=en&q=1USD=?MXN
  95.     $args= 'hl=en&q='. $numero.$div[0]. '=?'. $div[1];
  96.     $r= socket_iodata( GOOGLECALCULATOR_SERVER, array( 'GET', GOOGLECALCULATOR_PATH.$args), 80 );
  97.     return explode("\"", $r[1]);
  98.     }
  99.  
  100. $lista= google_listdivisa(); # obtenemos lista de divisas
  101.  
  102. echo '<html>
  103. <head>
  104. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  105. <style typ="text/css" rel="stylesheet">
  106. BODY{margin:auto;padding:0px;}
  107. #divisa{font:12px Arial, Helvetica, sans-serif;}
  108. #divisa select{font:14px Arial, Helvetica, sans-serif;width:150px;}
  109. #divisa .accion h1{font:15px Arial, Helvetica, sans-serif;font-weight:bold;}
  110. </style>
  111. </head>
  112. <body>
  113. <div id="divisa">';
  114. if( $_POST["tipo_from"] && $_POST["tipo_to"] )
  115.     {
  116.     $divc= array( proteger_cadena($_POST["tipo_from"]), proteger_cadena($_POST["tipo_to"]) ); # creamos arreglo
  117.     $v= google_getdivisa(1, $divc ); # consultamos API calculadora
  118.    
  119.     echo '<div class="accion"><h1>'. $v[1]. ' = '. number_format($v[3], 2). ' '. $divc[1]. '</h1></div>';
  120.     }
  121. else
  122.     {
  123.     $divc= array( "USD", "MXN" ); # creamos arreglo
  124.     $v= google_getdivisa(1, $divc ); # consultamos API calculadora
  125.    
  126.     echo '<div class="accion"><h1>'. $v[1]. ' = '. number_format($v[3], 2). ' '. $divc[1]. '</h1></div>';
  127.     }
  128.    
  129. echo '<form action="divisas.php" method="POST">
  130. <select name="tipo_from" id="tipo_from">
  131.     <option value="error" /></option>';
  132.  
  133. foreach( $lista as $key=>$val )
  134.     echo '<option value="'. $key. '" />'. $val. ' - '. $key;
  135. echo '</select> a
  136. <select name="tipo_to" id="tipo_to">
  137.     <option value="error" /></option>';
  138.  
  139. foreach( $lista as $key=>$val )
  140.     echo '<option value="'. $key. '" />'. $val. ' - '. $key;
  141. echo '</select>
  142. <br><input type="submit" value="Consult"></form>
  143. </div>
  144. </body>
  145. </html>';
  146. ?>
Advertisement
Add Comment
Please, Sign In to add comment