Jump to content
Claudia França

conversão de moedas

Recommended Posts

Prezados tenho um sisteminha que vai funcionar em 3 moedas real, euro e dolar.

Preciso de uma ajuda para atualizar o codigo abaixo para automatizar isso nos relatorios.   

 

<h1>Digite um valor </h1>
            <select name="currency" required>
                <option value="BRL" id="real" />Real R$=</option>
                <option value="USD" id="dolar" selected/>Dolar $=</option>
                <option value="EUR" id="euro" />Euro E=</option>
            </select>
            <input type="text" name="amount" size="15" value="20.00" onKeyUp="dinheiro(this,15)"/>
            </br>

 

 

abaixo a conversão que  consegui fazer, mas não sei se tem algo melhor. 

 

 

 

function getCurrencyRating($currencyCode){

    if($currencyCode == 'BRL') return 1;
    $currcode = $currencyCode.'_BRL';
    $apiURL = "http://free.currencyconverterapi.com/api/v5/convert?q=";
    $apiURL .= $currcode.'&compact=y&&apiKey=2e5b8ec911e1ff89c8c4';
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $apiURL);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($ch);
    curl_close($ch);
    $currencyObj = json_decode($output);
    $ratingCurrency = $currencyObj->$currcode->val;
    $ratingCurrency = round( $ratingCurrency, 2);
    return $ratingCurrency;
}

Share this post


Link to post
Share on other sites

@Claudia França 

 

Como você quer automatizar isso?

E qual a finalidade do resultado? 

 

Caso você queira algo mais simples, você pode usar apenas javascript para fazer a requisição para o server que converter a moeda.

Exemplo:

<h1>Digite um valor </h1>
        <select name="currency" required>
            <option value="USD" id="dolar" selected>Dolar $=</option>
            <option value="EUR" id="euro">Euro E=</option>
        </select>
		<input type="text" name="amount" size="15" value="20.00" >
		<span id="demo"></span>
        </br>
		<script>

			var select, valor, resultado;
			
			window.onload = function()
			{
				select = document.getElementsByName("currency")[0];
				valor = document.getElementsByName("amount")[0];
				resultado = document.getElementById("demo");
				valor.addEventListener("keyup", converter);
			}

			function converter()
			{

				resultado.innerHTML = ("Carregando...");

				if (!verificarValores())
				{
					resultado.innerHTML = ("O valor inserido não é um valor valido");
					return false;
				}

				let 
					val = valor.value,
					curry = select.value,
					xhttp;

				if (window.XMLHttpRequest)
				{
					xhttp = new XMLHttpRequest();
				}
				else
				{
					xhttp = new ActiveXObject("Microsoft.XMLHTTP");
				}

				xhttp.onreadystatechange = function()
				{
					if (this.readyState == 4 && this.status == 200)
					{
						resultado.innerHTML = this.responseText;
					}
					else if (this.readyState == 4 && this.status >= 200)
					{
						resultado.innerHTML = ("Ocorreu um erro no servidor, tente novamente mais tarde.");
					}
				};

				xhttp.open("GET", "http://free.currencyconverterapi.com/api/v5/convert?q="+curry+"_BRL&compact=y&&apiKey=2e5b8ec911e1ff89c8c4", true);
				xhttp.send();

				return true;

			}

			function verificarValores()
			{
				let 
					val = valor.value,
					curry = select.value;

				if (val == 0 || val == "0")
				{
					return false;
				}

				if (!parseFloat(val))
				{
					return false
				}

				if (curry == "EUR" || curry == "USD")
				{
					return true;
				}

			}

		</script>

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By ROGERIO MOREIRA
      Olá,
       
      preciso gerar listagem do meu banco de dados mas preciso definir um certo item como cabeça na pesquisa:
       
      ex:
      quero listar meus registros em orderm de:
       
      primeiro ESTADO    (ordem alfabetica)
      depois    CIDADE     (ordem alfabetica)
      depois    BAIRRO,    porém, quero colocar CENTRO em primeiro, depois os outros bairros
       
    • By Sapinn
      Estou usando o editor SummerNote em um projeto mas ele não está enviando os dados com o HTML apenas o texto. Eu estou colocando assim:

               
                                        <textarea id="summernote" class="textarea" required name="content">     <script> $('#summernote').summernote({         tabsize: 2,         height: 500,         toolbar: [           ['style', ['style']],           ['font', ['bold', 'underline', 'clear']],           ['color', ['color']],           ['para', ['ul', 'ol', 'paragraph']],           ['table', ['table']],           ['insert', ['link', 'picture', 'video']],           ['view', ['fullscreen', 'codeview', 'help']]         ]       });           </script>  
       
    • By marcelo.ourico
      Boa noite. Pessoal, mais uma vez aqui pedindo uma ajuda.

      Estou tentando enviar uma NFSe via SOAP.

      Estou recebendo o seguinte erro:

      Fatal error: Uncaught SoapFault exception: [SOAP-ENV:Client] ERRO : cvc-complex-type.4: Attribute 'Algorithm' must appear on element 'ns2:CanonicalizationMethod'. in

      O meu Array está da seguinte forma:
      Array
      (
      [CanonicalizationMethod] => Array
      (
      [@attributes] => Array
      (
      [Algorithm] => http://www.w3.org/TR/2001/REC-xml-c14n-20010315
      )
      )

      Não entendi o porque desse erro, alguém sabe ajudar?
    • By Sapinn
      Galera estou usando o PHPStorm para alguns projetos e estou com meus arquivos marcados em vermelho não sei oq é alguem pode me ajuda?
       
       

    • By danielambrosio
      Estou trabalhando numa programação PHP é conectado na tabela (cl_configs) para reconhece coluna name que reconhece esses 5 campos.
      e também que adiciona esses 5 valores é adicionado nessa outra tabela (cl_ads_block_ips) nesses 8 coluna (id, ip, clicks, last_click, dads_refresh_qtd, dads_refresh_data, dads_refresh_ldata, clicks_rotativo_dia).
      E a conexão que eu usa era de outro site e não estou tendo problema e configurar em outro site que reconhece essa banco de dados abaixo.
       
      <?php $host = "localhost"; $user = "ads"; $pass = "_CMpFF4Hpa!G_gTh"; $dbname = "ads"; $port = 3306; try {     $conn = new PDO('mysql:host=' . $host . ';port=' . $port . ';dbname=' . $dbname, $user, $pass);     //echo "Conexão com banco de dados realizado com sucesso!"; } catch (PDOException $err) {     echo "Erro: Conexão com banco de dados não foi realizada com sucesso. Erro gerado " . $err->getMessage(); } ?>  
      Conecta com sucesso só não está reconhecendo a tabela (cl_configs) e nem adicionando na tabela (cl_ads_block_ips).
       
       
      Agora não sei porque não esta reconhecendo (cl_configs) e nem adicionando (cl_ads_block_ips).
       
       


×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.