Скрытое значение PayPal `rm` не возвращает данные POST

<form action=" https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" id="paypalform" name="paypalform">
    <input type="hidden" name="cmd" value="_cart">
    <input type="hidden" name="business" value="[email protected]">
    <input type="hidden" name="no_shipping" value="1">
    <input type="hidden" name="upload" value="1">
    <input type="hidden" name="currency_code" value="<?php echo $currency ?>">
    <input type="hidden" name="rm" value="2">
    <input type="hidden" name="country" value="US">
    <input type="hidden" name="return" value="http://abc-return.com">
    <input type="hidden" name="cancel_return" value="http://abc-cancel.com">
    <input type="hidden" name="item_name_1" value="Recharge">
    <input type="hidden" name="item_number_1" value="<?php echo $user_id  ?>">
    <input type="hidden" name="amount_1" value="<?php echo $price ?>">
</form>

<script type="text/javascript">document.paypalform.submit();</script>

Я использую PayPal Payments Standard через скрытую пару имя-значение HTML.

Оплата работала отлично и гладко, как по маслу, до 9-го числа этого месяца, когда дела пошли еще хуже. Метод возврата rm = 2 возвращал данные сообщения на мою страницу возврата до этой даты, но когда я проверил 9-го числа, данные сообщения не возвращались на мою страницу.

Я потратил больше недели и до сих пор не могу понять, как один и тот же код может работать сегодня, а не днем ​​позже.

Я применил этот метод во многих других моих проектах, которые могут вызвать у меня проблемы, если данные не отправляются обратно на мою страницу возврата. С моими HTML-формами все в порядке, и я также получаю платеж в песочнице PayPal.

Единственная проблема в том, что я не получаю данные сообщения на моей странице возврата.

Пожалуйста, помогите мне решить эту проблему.


person Bibek    schedule 16.08.2017    source источник
comment
Когда вы говорите, что он больше не возвращает данные POST, какие данные вы ожидаете вернуть? Вы установили какие-либо данные о самом платеже PayPal? Если да, выполнили ли вы отладку, чтобы подтвердить, что данные действительно существуют на кнопке PayPal в самом PayPal?   -  person Obsidian Age    schedule 16.08.2017
comment
я ожидаю получить данные, отправленные в PayPal, такие как txn_id и т. д., и все остальные параметры   -  person Bibek    schedule 16.08.2017


Ответы (2)


Да, я также подтверждаю эту проблему. Я не уверен, является ли это изменением Paypal или ошибкой Paypal - трудно найти авторитетные ответы от них.

У меня также есть форма, которая раньше возвращала данные POST на возвращаемый URL-адрес, однако недавно она перестала работать, и я смог снова заставить ее работать, используя вместо этого метод GET, следуя эту полезную статью.

Однако для этого потребуются некоторые изменения в вашем IPN и страницах успеха.

Интересно узнать, как вы решили свою проблему. Пожалуйста, обновите нас.

person SolaceBeforeDawn    schedule 01.09.2017
comment
теперь у меня все заработало. Я добавил еще одну переменную notify_url и указал путь к файлу (не URL-адрес), где я хочу получить $_POST. Но вы не можете получить его мгновенно. Просто проверьте txn_id, а затем выполните SQL-запросы, в которые будут вставлены ваши данные. но вы не можете повторить $_POST. - person Bibek; 01.09.2017
comment
Как они снова начали работать? Получаете ли вы данные POST на обратный URL? Если да, то это должно быть довольно мгновенно! Расскажите, что вы сделали, чтобы снова начать получать данные POST по обратному URL-адресу. Я могу получать только данные GET! Разочарован PayPal. - person SolaceBeforeDawn; 01.09.2017
comment
да, я начал получать почтовые данные, просто зайдите в свой бизнес-аккаунт через PayPal и в профиле › мгновенное уведомление об оплате включите, чтобы получать сообщение ipn, а в URL-адресе файла просто укажите путь к файлу, где вы хотите отправить данные. - person Bibek; 02.09.2017

Спасибо за ваше обновление, однако, я думаю, что здесь есть некоторая путаница. URL-адрес IPN называется notify_URL, и он должен получать отправленные данные обратно для проверки транзакции. Страница «Спасибо» (или страница успеха) называется обратным URL-адресом — именно туда ведет ваш автовозврат. Я всегда без проблем получал данные POST на свою страницу IPN И данные POST на мой обратный URL. Однако только за последние несколько недель данные POST перестали поступать на мой успешный (возвратный) URL-адрес, но нет никакого объяснения, почему они внезапно остановились. Теперь я могу получать данные GET только на своей странице успеха/возврата, включив PDT. Но это нормально — я переписал свой скрипт страницы благодарности, чтобы вместо этого использовать переменные GET. PayPal, должно быть, изменил это без какого-либо уведомления - они очень раздражены.

person SolaceBeforeDawn    schedule 03.09.2017