简体   繁体   English

货币转换器PHP回显在弹出窗口中

[英]Currency converter PHP echo in pop-up

I don't know how I can do popup with result in my currency converter with API http://api.nbp.pl/ . 我不知道如何在使用API http://api.nbp.pl/的货币转换器中弹出结果。 This is my code: 这是我的代码:

<?php

if (isset($_POST['kwota']) && isset($_POST['waluta']) && is_numeric($_POST['kwota']) && is_numeric($_POST['waluta'] )){
switch ($_POST['waluta']) {
case 1:
$przelicznik = json_decode(file_get_contents('http://api.nbp.pl/api/exchangerates/rates/a/usd/'))->rates[0]->mid;
break;
case 2:
$przelicznik = json_decode(file_get_contents('http://api.nbp.pl/api/exchangerates/rates/a/eur/'))->rates[0]->mid;
break;
case 3:
$przelicznik = json_decode(file_get_contents('http://api.nbp.pl/api/exchangerates/rates/a/jpy/'))->rates[0]->mid;
break;
case 4:
$przelicznik = json_decode(file_get_contents('http://api.nbp.pl/api/exchangerates/rates/a/gbp/'))->rates[0]->mid;
break;
case 5:
$przelicznik = json_decode(file_get_contents('http://api.nbp.pl/api/exchangerates/rates/a/aud/'))->rates[0]->mid;
break;
default:
$przelicznik = 1;
}

$wynik = $_POST['kwota']/$przelicznik;
echo $wynik;
}

?>

The API is public, so you tecnically don't need PHP to do so, you can fetch the exchange rate and show the results using javascript/jQuery directly. 该API是公开的,因此您通常不需要PHP就能这样做,您可以获取汇率并直接使用javascript / jQuery显示结果。 Here's an example on how to do so using jQuery: 这是有关如何使用jQuery的示例:

<form id="exchange">
    <input type="text" name="price" title="price">
    <select name="currency" title="currency">
        <option value="1">USD</option>
        <option value="2">EUR</option>
        <option value="3">JPY</option>
        <option value="4">GBP</option>
        <option value="5">AUD</option>
    </select>
    <input type="submit" value="calculate">
</form>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
    $('#exchange').on('submit',function(e){
        e.preventDefault();
        var value = $(this).find('[name="price"]').val();
        if(!value) {
            alert("Insert a valid value");
            return false;
        }
        switch ($(this).find('[name="currency"]').val()) {
            case "1":
                $link = 'http://api.nbp.pl/api/exchangerates/rates/a/usd/';
                break;
            case "2":
                $link = 'http://api.nbp.pl/api/exchangerates/rates/a/eur/';
                break;
            case "3":
                $link = 'http://api.nbp.pl/api/exchangerates/rates/a/jpy/';
                break;
            case "4":
                $link = 'http://api.nbp.pl/api/exchangerates/rates/a/gbp/';
                break;
            case "5":
                $link = 'http://api.nbp.pl/api/exchangerates/rates/a/aud/';
                break;
            default:
                alert('Error');
                return false;
        }
        console.log($link);
        $.getJSON($link,function(result){
            alert(value/result.rates[0].mid);
        });
    });
</script>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM