Php SkipJack支付集成
我在我的电子商务应用程序中用作支付网关。我从互联网上下载了SkipJack类,然后我用自己的脚本调用函数,但在处理过程中出现了问题 有一个方法Php SkipJack支付集成,php,html,Php,Html,我在我的电子商务应用程序中用作支付网关。我从互联网上下载了SkipJack类,然后我用自己的脚本调用函数,但在处理过程中出现了问题 有一个方法getErrors()。当付款被拒绝时调用它,在此函数中,所有错误都被写入 但是,当支付进行时,将打印一个空数组,并且没有错误消息。我正在努力解决这个问题将近一个星期,但我不能解决它。请帮帮我 先谢谢你 这是我的代码: <?php require_once 'skipjack.php'; $sj = new Skipjack(); //$sj->
getErrors()
。当付款被拒绝时调用它,在此函数中,所有错误都被写入
但是,当支付进行时,将打印一个空数组,并且没有错误消息。我正在努力解决这个问题将近一个星期,但我不能解决它。请帮帮我
先谢谢你
这是我的代码:
<?php
require_once 'skipjack.php';
$sj = new Skipjack();
//$sj->setDeveloper(true); // use the development server address, remove this line to use the live server 4445999922225
if (isset($_POST['submit'])) {
$c_name = $_POST['c_name'];
$c_email = $_POST['c_email'];
$c_add = $_POST['c_add'];
$c_city = $_POST['c_city'];
$c_state = $_POST['c_state'];
$c_zip = $_POST['c_zip'];
$c_acc = $_POST['c_acc'];
$c_cvv = $_POST['c_cvv'];
$c_phone = $_POST['c_phone'];
$c_month = $_POST['c_month'];
$c_year = $_POST['c_year'];
$sj->addFields(array(
'OrderNumber' => '5',
'ItemNumber' => 'i5',
'ItemDescription' => 'Test Item',
'ItemCost' => '5.50',
'Quantity' => '1',
'Taxable' => '0',
'Streetaddress' => $c_add,
'City' => $c_city,
'State' => $c_state,
'Zipcode' => $c_zip,
'AccountNumber' => $c_acc,
'cvv2' => $c_cvv,
'SJName' => $c_name,
'Email' => $c_email,
'Month' => $c_month,
'Year' => $c_year,
'TransactionAmount' => '200.00'
));
$sub = "Your payment Transaction";
$msg = "<table width='50%'>
<tr>
<td>Order Number:</td><td>5</td>
</tr>
<tr>
<td>Quantity:</td><td>1</td>
</tr>
<tr>
<td>Name:</td><td>" . $c_name . "</td>
</tr>
<tr>
<td>City:</td><td>" . $c_city . "</td>
</tr>
<tr>
<td>Address:</td><td>" . $c_add . "</td>
</tr>
<tr>
<td>Zip Code:</td><td>" . $c_zip . "</td>
</tr>
<tr>
<td>Account Number:</td><td>" . $c_acc . "</td>
</tr>
<tr>
<td>Message:</td><td>Your transaction has been declined, Pos_error_Blind_Credits_Failed</td>
</tr>
</table>";
if ($sj->process() && $sj->isApproved()) {
echo "Transaction approved!" . "<br> Email has sent to your email address";
sendEmail($msg, $c_email, $sub);
} else {
echo "Transaction declined!\n";
echo ($sj->getErrors()) . "<br> Email has sent to your email address";
//echo $a;
}
}
?>
<h3 align="center" style="width:100%;">Skip Jack</h3>
<form method="post" action="">
<table width="1000" align="center" cellpadding="5" cellspacing="5">
<tr>
<td>Name:<br /></td>
<td><input type="text" name="c_name" id="c_name" /></td>
<td>Email:<br /></td>
<td><input type="text" name="c_email" id="c_email" /></td>
<td>Street Address:<br /></td>
<td><input type="text" name="c_add" id="c_add" /></td>
</tr>
<tr>
<td>City:<br /></td>
<td><input type="text" name="c_city" id="c_city" /></td>
<td>State:<br /></td>
<td><input type="text" name="c_state" id="c_state" /></td>
<td>Zip Code:<br /></td>
<td><input type="text" name="c_zip" id="c_zip" /></td>
</tr>
<tr>
<td>Credit Card Number:<br /></td>
<td><input type="text" name="c_acc" id="c_acc" /></td>
<td>Security code:<br /></td>
<td><input type="text" name="c_cvv" id="c_cvv" /></td>
<td>Phone:<br /></td>
<td><input type="text" name="c_phone" id="c_phone" /></td>
</tr>
<tr>
<td>Month:<br /></td>
<td>
<select name="c_month">
<option value="01">January</option>
<option value="02">February</option>
<option value="03">March</option>
<option value="04">April</option>
<option value="05">May</option>
<option value="06">June</option>
<option value="07">July</option>
<option value="08">August</option>
<option value="09">September</option>
<option value="10">October</option>
<option value="11">November</option>
<option value="12">December</option>
</select>
</td>
<td>Year:<br /></td>
<td>
<select name="c_year">
<option value="2014">2014</option>
<option value="2015">2015</option>
<option value="2016">2016</option>
<option value="2017">2017</option>
<option value="2018">2018</option>
<option value="2019">2019</option>
<option value="2020">2020</option>
</select>
</td>
<td> </td>
</tr>
<tr>
<td align="center" colspan="5"><input type="submit" name="submit" /></td>
</tr>
</table>
</form>
</body>
</html>
?>
添加
if(!empty($sj->getErrors())){
回显“已拒绝交易!\n”;
echo($sj->getErrors())。“
电子邮件已发送到您的电子邮件地址”;
}
而不是
echo "Transaction declined!\n";
echo ($sj->getErrors())."<br> Email has sent to your email address";
echo“交易已拒绝!\n”;
echo($sj->getErrors())。“
电子邮件已发送到您的电子邮件地址”;
根据此API页面上的评论,此PHP库存在以下问题:
这个API有漏洞。。对于第255行的一个,当它应该使用$this->errorCodes时,它使用$errorCodes。。花了一段时间想知道为什么我没有看到任何错误,但收到了一条事务失败的消息
示例代码不是现成的
发件人:
我建议您尝试一下,因为它比较新,可能会解决这个问题。(注意:我两个都没用过。)
(虽然看起来这个也被破坏了。在网上,它应该是$this->errorCodes[…]
,而不是$errorCodes[…]
)
如果您愿意尝试的话,我现在已经在一个分叉存储库中进行了修复:如果您不提供更多的信息,没有人可以帮助您。请添加一两个相关的代码示例
echo "Transaction declined!\n";
echo ($sj->getErrors())."<br> Email has sent to your email address";