Помощь с php скриптом

Discussion in 'Песочница' started by LeninDie, 26 Oct 2016.

  1. LeninDie

    LeninDie Member

    Joined:
    26 Dec 2015
    Messages:
    60
    Likes Received:
    7
    Reputations:
    2
    Извиняюсь за нубский вопрос, но в php я ноль. Суть в том что необходимо подключиться с удаленному хосту и вывести данные биткоин кошелька. использую вот такой скрипт:
    PHP:
    <?php
    require_once 'easybitcoin.php';
    $rpc_host 'YOUR_IP';
    $rpc_port 'YOUR_PORT';
    $rpc_user 'YOUR_USER';
    $rpc_pass 'YOUR_KEY';
    $bitcoin = new Bitcoin($rpc_user$rpc_pass$rpc_host$rpc_port);
    print_r($bitcoin->getinfo());
    print_r($bitcoin->listaccounts());
    print_r($bitcoin->listreceivedbyaddress(0true));
    ?>
    запрашиваемый файл на гитхабе

    не выводит ни ошибку, вообще ничего. порт на сервере открыт. остальные данные верны. запускаю у себя на компе в xampp.

    хотел сделать как здесь

    но ни с одним jsonRPCClient.php найденным так ничего и не заработало. может у кого есть решение готовое или кто-то подскажет как сделать первый вариант рабочим буду признателен.
     
  2. t0ma5

    t0ma5 Reservists Of Antichat

    Joined:
    10 Feb 2012
    Messages:
    831
    Likes Received:
    817
    Reputations:
    90
    по сути вся либа там один curl запрос, в браузере перейди по урлу и посмотри что отдаётся сервером
    ошибки могут быть из за ssl, или то что сервер данные отдаёт не в json
     
    _________________________
  3. LeninDie

    LeninDie Member

    Joined:
    26 Dec 2015
    Messages:
    60
    Likes Received:
    7
    Reputations:
    2
    в браузере если http то Forbidden, если https - ERR_SSL_PROTOCOL_ERROR.
     
  4. t0ma5

    t0ma5 Reservists Of Antichat

    Joined:
    10 Feb 2012
    Messages:
    831
    Likes Received:
    817
    Reputations:
    90
    это у тебя локально всё поднято или что это вообще? что за сайт то
     
    _________________________
  5. AntiduPb

    AntiduPb Member

    Joined:
    27 Apr 2013
    Messages:
    95
    Likes Received:
    90
    Reputations:
    0
    А можете сказать к какому сайту идет подключение?
    А вообще там есть такой коммент
    PHP:
    // If you wish to make an SSL connection you can set an optional CA certificate or leave blank
    // This will set the protocol to HTTPS and some CURL flags
    $bitcoin->setSSL('/full/path/to/mycertificate.cert');
    Не пробовали?
     
  6. t0ma5

    t0ma5 Reservists Of Antichat

    Joined:
    10 Feb 2012
    Messages:
    831
    Likes Received:
    817
    Reputations:
    90
    так у него и броузер сайт открыть не может) либо сайт закрыт своим сертификатом, либо 443 там вообще не работает
     
    _________________________
  7. AntiduPb

    AntiduPb Member

    Joined:
    27 Apr 2013
    Messages:
    95
    Likes Received:
    90
    Reputations:
    0
    Точно. Блин.
     
  8. LeninDie

    LeninDie Member

    Joined:
    26 Dec 2015
    Messages:
    60
    Likes Received:
    7
    Reputations:
    2
    локально работает только скрипт. сайт на своей впс. 443 работает и сертификат норм работает. вопрос в том почему скрипт не отдает ни одну ошибку?!
     
  9. t0ma5

    t0ma5 Reservists Of Antichat

    Joined:
    10 Feb 2012
    Messages:
    831
    Likes Received:
    817
    Reputations:
    90
    то работает 443 то не работает)
    хм а AntiduPb похоже прав, по дефолту скрипт ведь не https протокол выбирает, надо вызвать
    $bitcoin->setSSL();
    если сертификат настоящий, то можно посмотреть его сорцы(линк влом искать, есть онлайн), в сорцах есть линк на корневой сертификат, скачать его и передать параметром
    $bitcoin->setSSL('ca_sert.crt');


    вначале скрипта добавь error_reporting(E_ALL); да всякий, вдруг ошибки какие будут

    так что там ещё.. проверка сертификата выключена, кулл, меньше ошибок и меньше безопасности)

    а ещё желательно бы заменить чуть код

    Code:
    elseif ($this->status != 200) {
    // If bitcoind didn't return a nice error message, we need to make our own
    switch ($this->status) {
    
    на

    Code:
    elseif ($this->status != 200) {
    // If bitcoind didn't return a nice error message, we need to make our own
    var_dump($this->status);
    switch ($this->status) {
    [/SIZE]
    

    понятно хоть будет подключается он вообще или нет
     
    _________________________
Loading...