Записать Moll ie платеж в базу данных через webhook - PullRequest
1 голос
/ 07 января 2020

Я пытаюсь получить moll ie платеж по его идентификатору платежа в моем пользовательском веб-крюке через:

$payment = $mollie->payments->get($_POST["id"]);

Чтобы проверить его (потому что я не могу var_dump webhook) Я записываю идентификатор платежа в файл request.log. Это делает запись правильного идентификатора платежа в файл журнала:

$fp = file_put_contents('request.log', $payment->id );

После этого я записываю этот идентификатор платежа и некоторые другие данные в базу данных через:

$conn = $GLOBALS['database']->dbconnect(); $webshopQuery = "INSERT INTO orders (userID, paymentID, paymentDateTime) VALUES (?,?,?)"; $stmt = $conn->prepare($webshopQuery); $stmt->bind_param("iss", $userID, $paymentID, $paymentDate); $stmt->execute();

(я получаю переменные параметров из параметров функций. Я не вставил эту функцию во фрагмент, потому что она не имеет к этому никакого отношения)

Это НЕ записывает ничего в моя база данных.

Когда я запускаю тот же кусок кода в моем файле перенаправления moll ie, он ДОЛЖЕН записывать в базу данных.

Я очень озадачен, почему он не работает , Что я делаю неправильно? И есть ли способ отладить запрос на странице веб-крючка?


РЕДАКТИРОВАТЬ (я столкнулся с более простой проблемой):

У меня есть веб-крючок, который получает paymentID из Moll ie платежного API.

$payment = $mollie->payments->get($_POST["id"]);

file_put_contents('request.log', $payment->id);

$Webshop_Service->service_savePayment($loggedInUser->userID, "testID");

Функция service_savePayment протестирована и работает. Только он не вызывается, пока file_put_contents('request.log', $payment->id); записывает moll ie $payment->id в текстовый файл.

...