2015-05-20 6 views
1

Callback:blockchain платежная система, не могу заставить его работать

<?php 
$id =""; 
$pw = ""; 

$secret = "f8fe526080ec3366eddbb498c6df4e1a"; //md5 hash a unui cuvant 
$address = "1MBF4cGmVac3r561YYRcamqJKN269yk7aD"; 

if($_GET['secret'] != $secret){ 
echo "Invalid"; 
return; 
} 

if($_GET['mainaddress'] != $address){ 
echo "Invalid"; 
return; 
} 
if (!isset($_GET['btc'])){ 
echo "Invalid"; 
return; 
} 
if (!isset($_GET['value'])){ 
echo "Invalid"; 
return; 
} 

$price = $_GET['btc']; 
$value= $_GET['value']/10000000; 

if ($price >= $value){ 
$email = "[email protected]"; 
$subject = "Payment Received"; 
$body = "Payment received for invoice #". $_GET['invoice'] . "\r\n" . "Price: " . $price . " BTC" . "\r\n"; 
$headers = "From: GoBets <[email protected]>". "\r\n"; 
$headers .= "Content-type: text/html\r\n"; 

$mail = mail($email, $subject, $body, $headers); 

}else{ 
$mail2 = mail($email, "rekt","hdhdhd",$headers); 
} 

if($mail){ 
echo "*ok*"; // return code pentru blockchain 
} 

if ($mail2){ 
echo "*ok*"; 
} 


?> 

Путь им создания адреса и установки обратного вызова URL:

<?php 
session_start(); 
$secret = "f8fe526080ec3366eddbb498c6df4e1a"; //md5 hash a unui cuvant 
$address = "1MBF4cGmVac3r561YYRcamqJKN269yk7aD"; 

if ($_GET['test'] == true) { 
     echo 'Ignoring Test Callback'; 
     return; 
    } 

if(isset($_GET['key'])) { 


if ($_GET['key'] == "p1"){ 
$price_in_usd = 1; 
} elseif($_GET['key'] =="p2"){ 
$price_in_usd = 4.5; 
} elseif($_GET['key'] =="p3"){ 
$price_in_usd = 8; 
} elseif($_GET['key'] =="p4"){ 
$price_in_usd = 15; 
}elseif($_GET['key'] == "test"){ 
$price_in_usd = 0.3; 
}else{ 
echo "Invalid param. Please contact an administrator or try again later"; 
} 

if ($price_in_usd <> ""){ 

$price_in_btc = file_get_contents("https://blockchain.info/tobtc?currency=USD&value=" . $price_in_usd); 
$invoice = $_SESSION['s_ID'] . "-" . rand(); 
$callback = "http://gobets.pw/purchase/callback.php?invoice=".$invoice."&secret=".$secret."&mainaddress=".$address ."&btc=" . $price_in_btc; 
$result = json_decode(file_get_contents("https://blockchain.info/api/receive?method=create&address=".$address."&callback=" .urlencode($callback)), true); 
$qrcode = "https://blockchain.info/qr?data=bitcoin:". $result["input_address"]. "?amount=" . $price_in_btc; 
echo '<div align="center">'; 
echo '<img src="'.$qrcode.'"' . 'height="125" width="125"/>' . "</br>"; 
echo "Invoice #: " . $invoice . "<br>"; 
echo "Please send <b>" . $price_in_btc ."</b> BTC to <b>". $result["input_address"] . "</b></br>"; 
echo "</div>"; 
} 
} else { 
    echo "Something went wrong!"; 
} 
?> 

Ничего не происходит, когда им отправлять деньги на генерируемый адрес, за исключением блоксхемы, отправляющих эту сумму обратно на мой основной адрес. Что я делаю не так?

+0

Привет, я пару раз работал над blockchain api, я могу сказать, что он работает очень хорошо. Какой биткойн-адрес вы пытаетесь отправить, и действительно ли этот биткойн-адрес существует? –

+0

есть. im создать адрес, отправить деньги на него, а затем ждать ответа с моего сайта, который никогда не приходит. но блок-цепочка отправляет это количество btc из вновь созданного адреса на мой основной адрес. – Mike

+0

Помните, что звонок из блок-цепи приходит после многих часов. –

ответ

0

Я нашел проблему, это был сценарий callback.php. я проверял для этого:

if ($price >= $value) 

, который в основном означает

if price to be paid > price paid then payment is succesful 

, который был неправ, LMAO, изменил его:

if ($value >= $price) 

и теперь его работы.

 Смежные вопросы

  • Нет связанных вопросов^_^