如何从$_POST['加密数据']获取以下数据
加密卡号
到期月份
到期年份
加密安全代码
我传递了一个输入“加密数据”,但我想要 加密卡号 ,到期月份 ,到期年份 ,加密安全代码
客户端
<script type="text/javascript" src="https://test.adyen.com/hpp/cse/js/HWC324534556545.shtml"></script>
<form method="POST" action="payment.php" id="adyen-encrypted-form">
<input placeholder="number" type="text" size="20" data-encrypted-name="number" value="2223520443560010" />
<input placeholder="holderName" type="text" size="20" data-encrypted-name="holderName" value="Ashok" />
<input placeholder="expiryMonth" type="text" size="2" data-encrypted-name="expiryMonth" value="10" />
<input placeholder="expiryYear" type="text" size="4" data-encrypted-name="expiryYear" value="2024" />
<input placeholder="cvc" type="text" size="4" data-encrypted-name="cvc" value="737" />
<input type="hidden" value="<?php echo date('Y-m-d\TH:i:sP'); ?>" data-encrypted-name="generationtime"/>
<input type="submit" value="Pay"/>
</form>
<script>
// The form element to encrypt.
var form = document.getElementById('adyen-encrypted-form');
var options = {};
// Bind encryption options to the form.
options.name = "encrypted-data";
options.onsubmit = function(e) {
e.preventDefault();
form.submit();
};
var key = "MY Key";
var result = adyen.encrypt.createEncryptedForm(form, key, options);
</script>
处理付款 payment.php
<?php
//echo $_POST['encrypted-data'];
require_once 'vendor/autoload.php';
$client = new \Adyen\Client();
$client->setXApiKey("my api key");
$client->setEnvironment(\Adyen\Environment::TEST);
$client->setTimeout(30);
$service = new \Adyen\Service\Checkout\PaymentsApi($client);
$requestOptions['idempotencyKey'] = "c3276329-1bb1-47dc-a19a-5cc87f79de11";
// Create a PaymentMethod object.
$paymentMethod = new \Adyen\Model\Checkout\CheckoutPaymentMethod();
$paymentMethod
->setType("scheme")
->setEncryptedCardNumber("test_4111111111111111")
->setEncryptedExpiryMonth("test_03")
->setEncryptedExpiryYear("test_2030")
->setEncryptedSecurityCode("test_737");
// Create an Amount object.
$amount = new \Adyen\Model\Checkout\Amount();
$amount
->setValue(10)
->setCurrency("EUR");
// Create the PaymentRequest object.
$paymentRequest = new \Adyen\Model\Checkout\PaymentRequest();
$paymentRequest
->setMerchantAccount("myMerchantAccountCOM")
->setPaymentMethod($paymentMethod)
->setAmount($amount)
->setReference("payment-test")
->setReturnUrl("");
// Make a /payments request.
$result = $service->payments($paymentRequest, $requestOptions);
//$pspReference = $result.pspReference;
如何替换此示例数据
test_4111111111111111
测试_03
测试_2030
测试_737
与客户端输入的加密数据
谢谢
使用 Adyen 进行卡付款时,您有 2 个选择。
使用 Adyen 客户端解决方案安全地收集和加密卡信息。您可以在 adyen-examples GitHub 存储库中找到 PHP 示例。
在上面的示例中,您将在客户端集成 Dropin。
通过发送原始(未加密)卡信息进行付款:在这种情况下,您需要完全PCI 合规。
在上面的示例中,您将使用购物者输入的信息填写表单中的数据。