Answer the question
In order to leave comments, you need to log in
Receiving HTTP Notifications from yandex about crediting the payment and sending a notification to the user at the specified mail?
Friends, we need help. I have a simple site and it implements a simple payment through Yandex, the user presses the "transfer" button, enters his mail and danatit a certain amount. The task is simple to receive an http notification from Yandex and send a notification to the user at the mail address specified by him
. Here is the script for receiving the notification
<?php
$secret = '000000000000000000000'; // секрет, который мы получили в первом шаге от яндекс.
// получение данных.
$r = array(
'notification_type' => $_POST['notification_type'], // p2p-incoming / card-incoming - с кошелька / с карты
'operation_id' => $_POST['operation_id'], // Идентификатор операции в истории счета получателя.
'amount' => $_POST['amount'], // Сумма, которая зачислена на счет получателя.
'withdraw_amount' => $_POST['withdraw_amount'], // Сумма, которая списана со счета отправителя.
'currency' => $_POST['intval'], // Код валюты — всегда 643 (рубль РФ согласно ISO 4217).
'datetime' => $_POST['datetime'], // Дата и время совершения перевода.
'sender' => $_POST['sender'], // Для переводов из кошелька — номер счета отправителя. Для переводов с произвольной карты — параметр содержит пустую строку.
'codepro' => $_POST['codepro'], // Для переводов из кошелька — перевод защищен кодом протекции. Для переводов с произвольной карты — всегда false.
'email' => $_POST['email'], // Email адрес отправителя
'label' => $_POST['label'], // Метка платежа. Если ее нет, параметр содержит пустую строку.
'sha1_hash' => $_POST['sha1_hash'] // SHA-1 hash параметров уведомления.
);
// проверка хеш
if (sha1($r['notification_type'].'&'.
$r['operation_id'].'&'.
$r['amount'].'&'.
$r['currency'].'&'.
$r['datetime'].'&'.
$r['sender'].'&'.
$r['codepro'].'&'.
$r['email'].'&'.
$secret.'&'.
$r['label']) != $r['sha1_hash']) {
exit('Верификация не пройдена. SHA1_HASH не совпадает.'); // останавливаем скрипт. у вас тут может быть свой код.
}
// Тут должен быть скрипт для отправки сообщения на email получиный из $r['email']
// Помогите допилить пожалуйста )
$to = данныйе из $r['email'] ;
$subject = "Robot - Робот";
$message = "Message, сообщение!";
mail ($to, $subject, $message);
?>
Answer the question
In order to leave comments, you need to log in
well, just:
$to = $r['email'] ;
$subject = "Robot - Робот";
$message = "Message, сообщение!";
if(mail($to, $subject, $message)) {
echo 'сообщение отправлено';
} else {
echo 'сообщение не отправлено.'; // проблема с настройкой mail
}
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question