Jump to content

Blockchain API - Callback


killik_23

Recommended Posts

Posted (edited)

Добрый день!
Пожалуйста подскажите, суть в следующем. Имеется 2 таблицы - в первую пишется для истории транзакций, во-второй обновляется `balance` для вывода баланса пользователя, но когда callback срабатывает, он пишет только в одну таблицу и не хочет добавлять во-вторую. Как реализовать такой механизм? Спасибо!

Callback:

 

if($_GET['confirmations'] >= 0)
	{
		$transaction_hash = $_GET['transaction_hash'];
		$value_in_btc = $_GET['value'] / 100000000;
		$user = $_GET['user'];
		$date = date("YmdHis");
		$destination_address = $_GET['destination_address'];
		$stmt = $db->prepare("replace INTO invoice_payments (login, destination_address, transaction_hash, value, date) values(?, ?, ?, ?, ?)");
		$stmt->bind_param("sssds", $user, $destination_address, $transaction_hash, $value_in_btc, $date);
		$result = $stmt->execute();
		
		//Add balance to the database
		$stmt = $db->prepare("UPDATE users SET balance = balance + ? WHERE login = ?");
		$stmt->bind_param("ds", $value_in_btc, $user);
		$result = $stmt->execute();

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

Edited by killik_23
Posted

UPDATE users SET balance = pm_balance + ? WHERE login = ?

 

может быть здесь должно быть так?

 

UPDATE users SET balance = balance + ? WHERE login = ?

Posted

Извиняюсь, это опечатка, у меня так же, как Вы написали. 

UPDATE users SET balance = balance + ? WHERE login = ?
Posted

А что говорят логи? и вывод ошибок?

 

он пишет только в одну таблицу и не хочет добавлять во-вторую. 

 

Надо подробней в какую пишет в какую нет

Posted

@4_tochka,

ооооооооо

а что с мегапроектом продажи битмайна за бесценок????????

Posted

За бесценок вроде никто никогда не продавал, видимо ты что то путаеш. Если ты про проект связанный с тем чтобы битмайн продавал без китайского НДС в Россию, то все обещания Шарифа из битмайна по этому поводу оказались пустыми.

Posted

А что говорят логи? и вывод ошибок?

 

он пишет только в одну таблицу и не хочет добавлять во-вторую. 

 

Надо подробней в какую пишет в какую нет

 

В логах чисто.

Проверил вот так работает (ниже код), обновляет баланс пользователя. Но не записывает в таблицу `invoice_payments`.

А он вообще должен же возвращать помимо $_GET['value'], $_GET['transaction_hash'] адрес с которого получено и куда отправлено - $_GET['destination_address'], $_GET['input_address'] ?

 

 

if($_GET['confirmations'] >= 0)
	{
		$transaction_hash = $_GET['transaction_hash'];
		$value_in_btc = $_GET['value'] / 100000000;
		$destination_address = $_GET['destination_address'];
		$input_address = $_GET['input_address'];
		$user = $_GET['user']; 
		$date = time();

		//Add the invoice to the database
		$stmt = $db->prepare("UPDATE users SET balance = balance + ? WHERE login = ?");
		$stmt->bind_param("ds", $value_in_btc, $user);
		$result = $stmt->execute();
		
		$stmt = $db->prepare("replace INTO invoice_payments (login, destination_address, input_address, transaction_hash, value, date) values(?, ?, ?, ?, ?, ?)");
		$stmt->bind_param("ssssds", $user, $destination_address, $input_address, $transaction_hash, $value_in_btc, $date);
		$result = $stmt->execute();

		if($result) {
			echo "*ok*";
		}
	}
Posted

Выведи в логи, ну или просто в локальный файл данные переменных перед вызовом статмента replace into

Выведи значение переменной result

 

Этим ты сможешь определить что ты подал на вход и что получил на выходе.

 

Так же я точно не незнаю как работает коллбэк в blockchain.info, но если он вызывается не 1 раз а каждое подтверждение до заданного количества, тогда  у тебя баланс пользователя столько же раз просуммируется исходя из твоего кода.

 

Если решишь использовать не blockchain.info а  наше АПИ (bitaps.com/api)  для приема платежей, мы тебе напишем обработчик коллбэка :)

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Similar Topics

    • MEGA KASSA- Примем Платеж любого вида/ API / -Не суём нос в происхождение средств

      Гео: Россия  — Поддержка платежей любого вида и «тематик» — Минимальный платёж 500 руб — Более 10 доступных способов оплаты — Максимальная проходимость транзакций — Простое и быстрое подключение API для вашего бизнеса — Удобный и интуитивно понятный бот — Круглосуточная работа без перерывов — Полностью автоматическая выдача карт https://megakassa.net/

      in Платежные решения

    • [DEV] Разработка для криптопроектов: Web3, Bots, Backend, API, Automation

      Здравствуйте! Предлагаю услуги по разработке программного обеспечения и веб-решений для криптовалютных проектов, финтех-сервисов и онлайн-бизнеса. Работаю самостоятельно, без посредников и лишней бюрократии. Большой опыт коммерческой разработки и собственная база готовых модулей позволяют быстрее запускать проекты, сохраняя качество, стабильность и возможность дальнейшего масштабирования. ⚡ Основные направления Криптовалютные решения Интеграция блокчейн-API, кошельков

      in Поиск блокчейн разработчиков

    • Вакансия Оператор чата, API разработчик

      1. Разработчик API Обязанности: Разработка и поддержка API. Интеграция с крипто- и платежными сервисами. Оптимизация и развитие функционала. Требования: Опыт разработки API. Знание современных технологий и баз данных. Ответственность и умение работать самостоятельно. 💰 Зарплата: по договоренности. 2. Оператор чата Обязанности: Общение с клиентами. Сопровождение обменов. Обработка заявок и решение

      in Работа

    • Cryptoway криптоплатежный шлюз для вашего бизнеса с API интеграцией

      Cryptoway — надёжный криптоплатежный шлюз нового поколения   Cryptoway — это современная платёжная инфраструктура, предназначенная для удобного хранения, отправки и приёма цифровых активов. Сервис поддерживает популярные криптовалюты: USDT, BTC, ETH, LTC, TON, TRX, BNB, позволяя управлять средствами быстро и безопасно в одном месте. Начните легко отправлять, принимать и контролировать операции с криптовалютой через единый удобный интерфейс.  

      in Кастодиальные кошельки

    • B2BWallet мультивалютный криптокошелек с API для бизнеса

      Приветствуем участников форума Bits Media!   Команда B2BWallet представляет профессиональное решение для работы с цифровыми активами — мультивалютный криптокошелек с акцентом на бизнес-задачи. Мы создали продукт, который решает главную проблему современного бизнеса — сложность и зарегулированность финансовых потоков. B2BWallet — это инструмент, позволяющий компаниям быстро и безопасно интегрировать криптовалюту в свои процессы.   Что мы предлагаем:   ✅ Готовое решение д

      in Кастодиальные кошельки

×
×
  • Create New...