【问题标题】:cc avenue php integration not workingcc avenue php集成不起作用
【发布时间】:2012-12-01 06:51:46
【问题描述】:

我正在使用 ccavenue php 集成演示文件。当我填写商家 ID 和 32 位工作密钥并提交数据时没有响应返回。只有空白页面带有以下网址

http://www.ccavenue.com/shopzone/cc_details.jsp

我无法理解集成出了什么问题。

这是我填写的表格的代码:

<form method="post" action="checkout.php">
    <table>
        <tr>
            <td>Merchant Id : </td><td><input type="text" name="Merchant_Id" value=""></td>
        </tr>
        <tr>
            <td>Amount : </td><td><input type="text" name="Amount" value="10.00"></td>
        </tr>
        <tr>
            <td>Order Id : </td><td><input type="text" name="Order_Id" value="test_r1234"></td>
        </tr>
        <tr>
            <td>Redirect URL : </td><td><input type="text" name="Redirect_Url" value="redirect.php"></td>
        </tr>

        The Billing details of the customer have to be mandatorily sent via the below mentioned parameters. Please note this has to be authentic data else the transaction would be rejected by the risk team.

        <tr>
            <td>Bill Name : </td><td><input type="text" name="billing_cust_name" value="sachin tyagi"></td>
        </tr>
        <tr>
            <td>Bill Address : </td><td><input type="text" name="billing_cust_address" value="sector 20- g158 , noida"></td>
        </tr>
        <tr>
            <td>Bill Country : </td><td><input type="text" name="billing_cust_country" value="india"></td>
        </tr>
        <tr>
            <td>Bill State : </td><td><input type="text" name="billing_cust_state" value="UP"></td>
        </tr>
        <tr>
            <td>Bill City : </td><td><input type="text" name="billing_city" value="Noida"></td>
        </tr>
        <tr>
            <td>Bill Zip : </td><td><input type="text" name="billing_zip" value="201301"></td>
        </tr>
        <tr>
            <td>Bill Tel : </td><td><input type="text" name="billing_cust_tel" value="08826483709"></td>
        </tr>
        <tr>
            <td>Bill Email : </td><td><input type="text" name="billing_cust_email" value="sachin.tyagi@flashonmind.com"></td>
        </tr>
        <tr>
            <td>Ship Name : </td><td><input type="text" name="delivery_cust_name" value="sachin tyagi"></td>
        </tr>
        <tr>
            <td>Ship Address : </td><td><input type="text" name="delivery_cust_address" value="sector 20- g158 , noida"></td>
        </tr>
        <tr>
            <td>Ship Country : </td><td><input type="text" name="delivery_cust_country" value="India"></td>
        </tr>
        <tr>
            <td>Ship State : </td><td><input type="text" name="delivery_cust_state" value="UP"></td>
        </tr>
        <tr>
            <td>delivery city : </td><td><input type="text" name="delivery_city" value="Noida"></td>
        </tr>
        <tr>
            <td>Ship Zip : </td><td><input type="text" name="delivery_zip" value="201301"></td>
        </tr>
        <tr>
            <td>Ship Tel : </td><td><input type="text" name="delivery_cust_tel" value="08826483709"></td>
        </tr>
        <tr>
            <td>Delivery Notes : </td><td><input type="text" name="delivery_cust_notes" value="test Notes"></td>
        </tr>
         <tr>
            <td>PayType: [dummy values, please contact service@ccavenue.com for actual bank short codes]: </td><td><input type="text" name="payType" value=""></td>
        </tr>
        <tr>
            <td>Billing Page Heading : </td><td><input type="text" name="billingPageHeading" value=""></td>
        </tr>

        <tr>
            <td colspan='2' align='center'>
                <INPUT TYPE="submit" value="submit">
            </td>
        </tr>
    </table>
</form>

【问题讨论】:

  • plzzz 伙计们帮帮我,这对我来说太紧急了..我从我的 ccavenue 帐户中填写了我的商家 ID 和工作密钥。

标签: php payment-gateway ccavenue


【解决方案1】:

用于集成 CCAvenue 支付网关的 PHP 脚本

CCavenue 是印度最受欢迎的在线购物支付网关。它通过使用您银行的国际信用卡(与CCavenue有联系)在线账户或使用它的借记卡(ATM卡)提供付款。它是向网上商店提供资金的最安全的地方之一。

为了将其与您的网站集成,您应该拥有 CCavenue 帐户,他们会为您提供商家 ID 和您网站的唯一密钥,这对于货币交易最重要。

PHP 函数的 Require TO Validate Require Value for CCAvenue Payment。

一般需要2个文件,比如

文件 #1: ccavenueValidate.php

<?php

    function getCheckSum($MerchantId,$Amount,$OrderId ,$URL,$WorkingKey)
    {
        $str ="$MerchantId|$OrderId|$Amount|$URL|$WorkingKey";
        $adler = 1;
        $adler = adler32($adler,$str);
        return $adler;
    }

    function verifyCheckSum($MerchantId,$OrderId,$Amount,$AuthDesc,$CheckSum,$WorkingKey)
    {
        $str = "$MerchantId|$OrderId|$Amount|$AuthDesc|$WorkingKey";
        $adler = 1;
        $adler = adler32($adler,$str);

        if($adler == $CheckSum)
            return "true" ;
        else
            return "false" ;
    }

    function adler32($adler , $str)
    {
        $BASE =  65521 ;

        $s1 = $adler & 0xffff ;
        $s2 = ($adler >> 16) & 0xffff;
        for($i = 0 ; $i < strlen($str) ; $i++)
        {
            $s1 = ($s1 + Ord($str[$i])) % $BASE ;
            $s2 = ($s2 + $s1) % $BASE ;
            //echo "s1 : $s1 <BR> s2 : $s2 <BR>";

        }
        return leftshift($s2 , 16) + $s1;
    }

    function leftshift($str , $num)
    {

        $str = DecBin($str);

        for( $i = 0 ; $i < (64 - strlen($str)) ; $i++)
            $str = "0".$str ;

        for($i = 0 ; $i < $num ; $i++)
        {
            $str = $str."0";
            $str = substr($str , 1 ) ;
            //echo "str : $str <BR>";
        }
        return cdec($str) ;
    }

    function cdec($num)
    {

        for ($n = 0 ; $n < strlen($num) ; $n++)
        {
            $temp = $num[$n] ;
            $dec =  $dec + $temp*pow(2 , strlen($num) - $n - 1);
        }

        return $dec;
    }
?>

文件 #2: form.php

处理页面代码 完成购物所需的CCAvenue传递参数 此页面中的数据来自购物车的结账表格,根据CCAcenue规则收集和验证,并按照给定格式排列并发送给CCAenue服务器进行支付处理。

<?php
    include(ccavenueValidate.php);
    $ccavenuemerchantId= "";//This id(also User Id)  available at "Generate Working Key" of "Settings & Options"
    $Amount = $orderdata[5];//your script should substitute the amount in the quotes provided here
    $orderId= $orderdata[0];;//your script should substitute the order description in the quotes provided here
    $WorkingKey = "";//Given to merchant by ccavenue
    $returnUrl ="http://www.example.com/shopping.php"; //url of your successpage
    $Checksum = getCheckSum($Merchant_Id,$Amount,$orderId,$Redirect_Url,$WorkingKey); // Validate All value
?>

<p align="center" style="font-family:Calibri; font-size:24px;color:#3670A7;">Processing to CCAvenue..............</p>

<form id="submittoserver" method="post" action="https://www.ccavenue.com/shopzone/cc_details.jsp">
    <input type="hidden" name="Merchant_Id" value="<?php echo $ccavenuemerchantId; ?>">
    <input type="hidden" name="Amount" value="<?php echo $Amount; ?>">
    <input type="hidden" name="Order_Id" value="<?php echo $ orderId; ?>">
    <input type="hidden" name="Redirect_Url" value="<?php echo $ returnUrl; ?>">
    <input type="hidden" name="Checksum" value="<?php echo $Checksum; ?>">
    <input type="hidden" name="billing_cust_name" value="<?php echo $orderdata[7].$orderdata[8];?>"> <!--Pass Customer Full Name -->
    <input type="hidden" name="billing_cust_address" value="<?php echo $orderdata[9].$orderdata[10];?>"><!--Pass Customer Full Address-->
    <input type="hidden" name="billing_cust_country" value="<?php echo $orderdata[15];?>"> <!--Pass Customer Country -->
    <input type="hidden" name="billing_cust_state" value="<?php echo $orderdata[14];?>"><!--Pass Customer State -->
    <input type="hidden" name="billing_cust_city" value="<?php echo $orderdata[13];?>"> <!--Pass Customer City -->
    <input type="hidden" name="billing_zip" value="<?php echo $orderdata[16];?>"> <!--Pass Customer Zip Code-->
    <input type="hidden" name="billing_cust_tel" value="<?php echo $orderdata[11];?>"> <!--Pass Customer Phone No-->
    <input type="hidden" name="billing_cust_email" value="<?php echo $orderdata[12];?>"> <!--Pass Customer Email address-->
    <input type="hidden" name="delivery_cust_name" value="<?php echo $orderdata[7].$orderdata[8];?>"> <!--Pass Same or other other detail fill by customer-->
    <input type="hidden" name="delivery_cust_address" value="<?php echo $orderdata[9].$orderdata[10];?>">
    <input type="hidden" name="delivery_cust_country" value="<?php echo $orderdata[15];?>">
    <input type="hidden" name="delivery_cust_state" value="<?php echo $orderdata[14];?>">
    <input type="hidden" name="delivery_cust_tel" value="<?php echo $orderdata[11];?>">
    <input type="hidden" name="delivery_cust_notes" value="">
    <input type="hidden" name="Merchant_Param" value="">
    <input type="hidden" name="billing_zip_code" value="<?php echo $orderdata[16];?>">
    <input type="hidden" name="delivery_cust_city" value="<?php echo $orderdata[13];?>">
    <input type="hidden" name="delivery_zip_code" value="<?php echo $orderdata[16];?>">

</form>

请参考上面的例子,也可以参考下面的链接CCAvenue Integration PDF

我认为这可以帮助您解决问题。

【讨论】:

  • thnks john peter....但我只想知道 $orderdata 是从哪里来的???
  • 欢迎老兄。,你需要从你的购物车数据中传递值。,$orderdata 是我在编码中给出的一个示例。,所以你需要用你的购物车数据替换变量。
  • 你有没有参考我之前在上面发布的评论。
  • 非常感谢您的帮助,但由于我在学校网站上工作,我正在为在线提交费用而不是为购物车实施此网关。所以我想知道提交费用的简单流程。 – Manindra Singh 2 分钟前
  • 您需要从您的注册表单中获取金额和用户账单明细的发布数据,例如, 等等。
猜你喜欢
  • 2016-05-06
  • 2017-04-30
  • 2016-06-06
  • 2014-05-21
  • 1970-01-01
  • 2022-01-19
  • 2014-01-03
  • 2016-02-15
  • 1970-01-01
相关资源
最近更新 更多