Cours du dollar en temps réel

Résolu
payetonju Messages postés 436 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 2 juillet 2014 - 25 oct. 2011 à 11:57
payetonju Messages postés 436 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 2 juillet 2014 - 25 oct. 2011 à 16:42
Bonjour

Tout d'abord, désolé d'avance si je n'ai pas classé ce message dans la bonne catégorie.. je cherchais une catégorie PHP / RSS...

Je voudrais mettre sur mon site, la valeur du cours du dollar en temps réel, je ne sais pas trop ce qu'il faut faire.
J'en ai expressément besoin pour les calcul de prix de matériel.

Je vous remercie.
Ju'

6 réponses

cs_nemo_1 Messages postés 60 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 26 octobre 2011
25 oct. 2011 à 12:15
Plop,

Je viens de faire une petite recherche et j'ai trouvé un module de type joomla qui permet de le faire.

voià le code et ça semble marcher:




<?php
$host="download.finance.yahoo.com";
$fp = @fsockopen($host, 80, $errno, $errstr, 30);
if (!$fp) {
$errorstr="$errstr ($errno)
\n";
return false;
} else {
$file="/d/quotes.csv";
$str = "?s=EURUSD=X&f=sl1d1t1c1ohgv&e=.csv";
$out = "GET ".$file.$str." HTTP/1.0\r\n";
    $out .= "Host: download.finance.yahoo.com\r\n";
$out .= "Connection: Close\r\n\r\n";
@fputs($fp, $out);
while (!@feof($fp)) {
$data = @fgetcsv($fp, 200, ",");
}
@fclose($fp);
$indice =$data[1];
}
?>
,
,
,
----

1 €, 
=,
<?php echo $indice; ?> $, 




Tu pourras oublier les flags :) mais bon l'idée y est.

j'ai verifier le lien apprement il est correct j'espère que celà va t'aider.

Bon courage.
3
payetonju Messages postés 436 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 2 juillet 2014 4
25 oct. 2011 à 15:14
C'est bon j'ai ce qu'il me faut, voici la source :
function get_conversion_rate( $cur_from, $cur_to )
{
  if( strlen( $cur_from ) == 0 )
  $cur_from = "USD";

  if( strlen( $cur_to ) == 0 )
  $cur_from = "THB";

  $host = "download.finance.yahoo.com";

  $fp = @fsockopen( $host, 80, $errno, $errstr, 30 );

  if ( !$fp )
  {
    $errorstr = "$errstr ($errno)
\n";
    return false;
  }
  else
  {
    $file = "/d/quotes.csv";
    $str = "?s=" . $cur_from . $cur_to . "=X&f=sl1d1t1ba&e=.csv";
    $out = "GET " . $file . $str . " HTTP/1.0\r\n";
    $out .= "Host: www.yahoo.com\r\n";
    $out .= "Connection: Close\r\n\r\n";

    @fputs( $fp, $out );
    while( !@feof( $fp ) )
    $data .= @fgets( $fp, 128 );
    @fclose( $fp );

    @preg_match( "/^(.*?)\r?\n\r?\n(.*)/s", $data, $match );
    $data = $match[2];
    $search = array ( "'<script[^>]*?>.*?</script>'si","'<[\/\!]*?[^<>]*?>'si","'([\r\n])[\s]+'","'&(quot|#34);'i","'&(amp|#38);'i","'&(lt|#60);'i","'&(gt|#62);'i","'&(nbsp|#160);'i","'&(iexcl|#161);'i","'&(cent|#162);'i","'&(pound|#163);'i","'&(copy|#169);'i","'&#(\d+);'e" );
    $replace = array ( "","","\\1",""","&","<",">"," ",chr(161),chr(162),chr(163),chr(169),"chr(\\1)" );
    $data = @preg_replace( $search, $replace, $data );
    $result = split( "," , $data );
    return $result[1];
  }	
}


Et pour l'affichage nous affichons donc la fonction :
get_conversion_rate( "EUR", "USD" );

On peut remplacer les variables en paramètres de fonction par n'importe quelle devise.

En tout cas merci de m'avoir mis sur la voie, sans toi je ne sais pas si j'aurais trouvé :)

Bonne journée !!
3
cs_nemo_1 Messages postés 60 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 26 octobre 2011
25 oct. 2011 à 16:19
Chalute,

Heureux d'apprendre cette bonne nouvelle :).

Je vois que tu t'y connais bien donc je te donne un petit conseil allez :)

<?php
function get_conversion_rate( $cur_from, $cur_to )
{
  if( strlen( $cur_from ) == 0 )
  $cur_from = "USD";

  if( strlen( $cur_to ) == 0 )
  $cur_from = "THB";
?>	


Au lieu de faire des tests et de creer des lignes inutiles procède plus comme cela

<?php
function get_conversion_rate( $cur_from="USD", $cur_to="THB")
{
?>	


Comme cela, si tu n'as pas de paramètre, ta valeur par default la definira automatiquement et en plus c'est plus optimisé.

Bon courage.
3
payetonju Messages postés 436 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 2 juillet 2014 4
25 oct. 2011 à 14:18
Hello merci de ta réponse,

Et oui je n'ai pas mis les flags mais s'avèrreraient utiles quand je mettrais le code en place (merci de l'idée :) )

Mais le code ne marche pas.
$Indice ne renvoi rien :( (mais ne renvoie pas FALSE)

Tu sais d'où peut venir le souci stp ?

Merci beaucoup
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_nemo_1 Messages postés 60 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 26 octobre 2011
25 oct. 2011 à 14:38
Euh j'ai bien l'indice.

ton var_dump($indice); t'affiche quoi?

Le cours du jour : 1E = 1.3913$

Bon courage.
0
payetonju Messages postés 436 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 2 juillet 2014 4
25 oct. 2011 à 16:42
Oui lol je ne viens pas ici pour qu'on me mâche le travail ,je viens ici car j'ai un réel problème sur certaines choses dont j'ai vraiment besoin pour avancer dans mon développement (en parallèle du graphisme), et mon responsable qui veut toujours tout tout de suite. Je ne connaissais pas ce genre de choses, mais heureusement tu étais là :)

Merci pour le conseil je n'y avais pas pensé ! c'est sympa de ta part !

@ pelouche ;)
0
Rejoignez-nous