в настоящее время я пытаюсь реализовать функцию, позволяющую пользователям платить через PayPal на моем веб-сайте (чтобы разблокировать загрузки для комиссий, которые я делаю). Итак, я настроил HTML-форму с некоторыми скрытыми входными данными, такими как цена и прочее. Я хочу проверить $_POST после отправки на другой php-скрипт для модификаций. И если пользователь изменил какую-либо из записей, он должен получить предупреждение. Если все в порядке, этот $_POST должен быть перенаправлен в PayPal, как это обычно делается.
Поэтому я не хочу, чтобы пользователь мог изменять значение цены или любое другое значение (которое скрипт получает из моей базы данных) - Когда он нажимает «Оформить заказ», веб-сайт открывает php-скрипт, который проверяет значения из $_POST с помощью базы данных. Когда все в порядке, $_POST следует перенаправить на https://www.paypal.com/cgi-bin/webscr.
Есть идеи?
<?php
echo '
<form id = "paypal_checkout" action = "https://mywebsite/checkPOST.php" method = "post">
<input name = "cmd" value = "_cart" type = "hidden">
<input name = "upload" value = "1" type = "hidden">
<input name = "no_note" value = "0" type = "hidden">
<input name = "bn" value = "Get your commissioned Item" type = "hidden">
<input name = "tax" value = "0" type = "hidden">
<input name = "rm" value = "2" type = "hidden">
<input name = "business" value = "[email protected]" type = "hidden">
<input name = "handling_cart" value = "0" type = "hidden">
<input name = "currency_code" value = "USD" type = "hidden">
<input name = "lc" value = "DE" type = "hidden">
<input name = "return" value = "http://mysite/myreturnpage" type = "hidden">
<input name = "cbt" value = "Return to My Site" type = "hidden">
<input name = "cancel_return" value = "http://mysite/mycancelpage" type = "hidden">
<input name = "custom" value = "" type = "hidden">
<input name = "unlockcode" value = "'.$unlockcode.'" type = "hidden">
<div id = "item_1" class = "itemwrap">
<input name = "item_name_1" value = "'.$row['name'].'" type = "hidden">
<input name = "quantity_1" value = "1" type = "hidden">
<input name = "amount_1" value = "'.$price.'" type = "hidden">
<input name = "shipping_1" value = "0" type = "hidden">
</div>
<input id = "ppcheckoutbtn" value = "Checkout" class = "button" type = "submit">
</form>';
?>
В общем, все, что я хочу, это запретить пользователям изменять эти значения перед отправкой в paypal.
Технически вы не можете запретить людям изменять данные html. Если в вашей базе данных есть данные для проверки, вы можете проверить их одним из двух способов. Выполните запрос, чтобы загрузить все данные в массив, затем проверьте свой $_POST по этому массиву. Или создайте запрос, который проверяет все значения напрямую.
Эй, Рид, это то, чем я уже занимаюсь. Значения отправляются в другой php-скрипт через Submit. Там все значения $_POST проверяются на массив, который я получил из своей базы данных. Вот другой скрипт, проверяющий $_POST: pastebin.com/9sX31amZ Проверка работает, но я не знаю, как перенаправить $_POST в PayPal. Есть идеи?
Ох, ну ладно! Я не уверен. Прошли годы с тех пор, как я работал с Paypal. Я полагаю, что у них будет довольно хорошая документация. Они сделали назад, когда я использовал его раньше.
Только что нашел работающий метод x) $paypalUrl = 'paypal.com/cgi-bin/webscr'; $queryString = http_build_query($data); header('location:' . $paypalUrl . '?' . $queryString); выход();





Можете ли вы создать таблицу
Cartв своей базе данных, которая содержит все эти значения, а затем передаватьcart_id, а не все значения?