someguy123 / -coin Goto Github PK
View Code? Open in Web Editor NEW+Coin is a web interface in PHP for Bitcoin based daemons released under the public domain (UNLICENSE)
License: The Unlicense
+Coin is a web interface in PHP for Bitcoin based daemons released under the public domain (UNLICENSE)
License: The Unlicense
With PHP 5.6 and Bitcoin 0.10.0, +Coin is sending incorrect headers to bitcoind resulting in an 500 response. I beleive this may be down to recent changes in PHP 5.6 which means that cookies are being sent with fopen by default now. I could be wrong but I don't know much about the bitcoind RPC spec.
Installed today. Works well after manually creating the address book file (#3).
However, the UI offers no options to initiate transactions. Maybe this is because the backend bitcoind
is still synching?
-Coin makes it extremely difficult using standard command line tools on Linux and OSX if you clone the repo directly in to a directory "-Coin". Is there significance to having the dash?
I obtain frequently errors like :Failed to retrieve data from the daemon, please check your configuration, and ensure that your coin daemon is running:
exception 'Exception' with message 'Unable to connect to http://bitcoinrpc:password@localhost:1234' in /var/www/jsonRPCClient.php:140 Stack trace: #0 /var/www/header.php(19): jsonRPCClient->__call('getinfo', Array) #1 /var/www/header.php(19): jsonRPCClient->getinfo() #2 /var/www/index.php(10): include('/var/www/header...') #3 {main}
The app has working fine some hours with one wallet, and failed when adding a second. Now it dosent work with only the original account.
When I test with curl, the daemons are responding fine.
From jsonRPCClient.php, line 132:
if ($fp = fopen($this->url, 'r', false, $context)) {
$response = '';
while($row = fgets($fp)) {
$response.= trim($row)."\n";
}
$this->debug && $this->debug.='***** Server response *****'."\n".$response.'***** End of server response *****'."\n";
$response = json_decode($response,true);
} else {
throw new Exception('Unable to connect to '.$this->url);
}
the exception is thrown by simply invoking $ php5 index.php
from the console.
The output I get is;
$ php5 index.php
PHP Warning: fopen(http://...@localhost:8332): failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error
in /var/www/pluscoin/jsonRPCClient.php on line 132
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='utf-8'>
... /* etcetera */
The credentials are set and the daemon is running. Fore reference, with curl I get:
$ curl http://...@localhost:8332
{"result":null,"error":{"code":-32700,"message":"Parse error"},"id":null}
The getbalance
lines from index.php
are modified as suggested here.
+Coin needs some form of authentication. Maybe start using an SQLite database to store some things such as the address book ( PLEASE, if you're going to add this yourself, USE PDO) , as well as user isolation ( restricting a user to certain accounts/addresses on the daemon ) to help with public facing +Coin's
+Coin needs to be cleaned up a little, e.g. fix some of the random PHP errors on some of the pages. Errors should really be turned off by default.
It also looks like the most recent commit which added address books brought along a bunch of bugs, e.g. the .csv is not automatically created, so the PHP errors cause the addressbook dependent pages to spew errors, messing up the design. Not even sure how functional the address book system is.
I added support for signing text messages with an address from the address book, via page address.php
.
Before adding the feature, I reverted the full codebase to commit 7c092ca as later commits introduced bugs both in JS and PHP.
So far all performs well and I found no bugs.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.