ビットコインの支払いを受け入れるスクリプトを書いています。私の $json 変数は null を返します。var_dump() は NULL を返します。
私が試したこと: 1. $callbackurl の値を取得し、URL をブラウザーに直接貼り付けた $recifyingaddress で、JSON 応答を取得しました。
json_last_error を使用しましたが、「エラーなし」の応答を受け取りました
magic_quotes をエスケープしましたが、これは効果がありません
私は何を間違っていますか?
$receiving_address = BITCOIN_ADDRESS;
if(get_magic_quotes_gpc()){
$callback_url = urlencode(stripslashes(CALLBACK_URL));
} else {
$callback_url = urlencode(CALLBACK_URL);
}
$ch = curl_init("https://blockchain.info/api/receive?method=create&address=$receiving_address&shared=false&callback=$callback_url");
curl_setopt($ch, CURLOPT_PROXY, '127.0.0.1:8888');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$json=json_decode(curl_exec($ch),true);
var_dump($json);
echo $json[0]->text;
修正されたコードは次のとおりです。
$receiving_address = BITCOIN_ADDRESS;
if (get_magic_quotes_gpc()) {
$callback_url = urlencode(stripslashes(CALLBACK_URL));
} else {
$callback_url = urlencode(CALLBACK_URL);
}
$ch = curl_init("https://blockchain.info/api/receive?method=create&address=$receiving_address&shared=false&callback=$callback_url");
curl_setopt($ch, CURLOPT_PROXY, '127.0.0.1:8888');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CAINFO, "C:\Program Files\BitNami WAMPStack\apache2\htdocs\coming\cacert.pem");
$res = curl_exec($ch);
if ($res === FALSE) {
die("Curl failed with error: " . curl_error($ch));
}
//var_dump($res);
$json = json_decode($res, true);