-1

嘿 Stackoverflow,

我为自己设定了一个小项目来庆祝加密货币的兴起(我自己刚刚被一家传统银行以一些令人难以置信的“非圣诞节”收费缝合,越来越多地使用去中心化货币是一个最受欢迎的启示)。

基本上,我希望能够通过以下 API 在我的网站上显示数据:

http://www.cryptocoincharts.info/v2/api/listCoins

因为(至少我相信)这将使我能够使用 javascript 使用在那里找到的数据作为基本汇率来执行我自己的汇率计算,然后我可以将其转换成一个表格来创建一个易于使用的汇率计算器。

这是我目前所拥有的......

来自 cryptocoincharts 的 PHP 示例:

// fetch data
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "http://www.cryptocoincharts.info/v2/api/listCoins");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$rawData = curl_exec($curl);
curl_close($curl);

// decode to array
$data = json_decode($rawData);

// show data
echo "<pre>";
foreach ($data as $row) echo $row->id." - ".$row->name."\n";
echo "</pre>";

用于交换计算的 Javascript:

    <script language="JavaScript">
    <!--
    function goldConverter(){
    document.converter.bitcoin.value = document.converter.gold.value * 0.05019370
    document.converter.litecoin.value = document.converter.gold.value * 1.56379100
    document.converter.peercoin.value = document.converter.gold.value * 7.52631578
    }
    function bitcoinConverter(){
    document.converter.gold.value = document.converter.bitcoin.value * 19.92281899
    document.converter.litecoin.value = document.converter.bitcoin.value * 0.03210000
    document.converter.peercoin.value = document.converter.bitcoin.value * 0.00667000
    }
    </script>

为了进一步阐明我的意图是使用来自 cyrptocoincharts 的数据启用(或多或少)实时自动更新交换价值,上面列出的数字是为了测试目的。

这是我的 HTML:

    <form name="converter">
    <table border="0">
    <tr>
    <td>Gold (g): </td><td><input type="text" name="gold" onChange="goldConverter()" /></td>
    </tr>
    <tr>
    <td>Bitcoin: </td><td><input type="text" name="bitcoin" onChange="bitcoinConverter()" /></td>
    </tr>
    <tr>
    <td>Litecoin:</td><td><input type="text" name="litecoin" onChange="litecoinConverter()" /></td>
    </tr>
    <tr>
    <td colspan="2" align="center"><input type="button" value="Convert" /></td>
    </tr>
    </table>
    </form>

概括:

如果有人可以为我指出正确的方向(特别是关于 API),或者帮助我让它作为一个整体工作,我将非常感激并给予应有的荣誉,我意识到我有很多学习要做并且这是我在stackoverflow上的第一篇文章,如果我违反了任何不成文的规则,请致歉。

更新:

我最近发现了可能解决我的问题的 money.js,我目前正在尝试将数据源从 OpenExchange Rates API 更改为 Cryptocoin Charts API。

更新 2.0:

现在使用 simple_html_dom.php 来抓取 HTML 页面,这似乎是最直接的方法,但是我收到以下错误:

警告:include_once(simple_html_dom.php) [function.include-once]:无法打开流:第 22 行的 /srv/disk13/1587290/www/bildungsroman.me.pn/index.php 中没有此类文件或目录

警告:include_once() [function.include]:无法在 /srv/disk13/1587290/ 中打开 'simple_html_dom.php' 以包含 (include_path='.:/usr/local/php-5.3.22/share/pear') www/bildungsroman.me.pn/index.php 第 22 行

致命错误:在第 25 行的 /srv/disk13/1587290/www/bildungsroman.me.pn/index.php 中调用未定义函数 file_get_html()

我的新代码如下:

<!DOCTYPE html>
<html lang="en">

  <head>

    <meta charset="utf-8">

    <title>title</title>

    <link rel="stylesheet" href="style.css">


  </head>

  <body>

    <!-- page content -->


    <?php
    include_once('simple_html_dom.php');

    $html = file_get_html('http://www.cryptocoincharts.info/v2/api/listCoins');

    $result = $html -> find('name');

    foreach($result as $element) {
        echo $element."<br/>";
    }
    ?>

  </body>

</html>
4

1 回答 1

0

上面的 PHP 脚本应该在 simple_html_dom.php 目录中,或者使用绝对路径而不是您使用的相对路径。

于 2014-01-03T00:33:12.607 回答