制作返回网址,以便从银行/支付网关获取回复

时间:2013-11-17 09:43:08

标签: php payment-gateway payment-processing

我需要创建一个返回网址,我已将其提供给付款网关,他们会在其中发布响应参数:

status
customerReferenceNo    
referenceNo
merchantId
amount
checkSum

到我给出的URL。我想要的只是一个HTML页面,它可以接受这些参数并将它们存储到数据库中,我可以做数据库部分。

但接受他们的价值观的PHP代码,我不能这样做。我不知道他们是使用POST还是GET:

status-4N
customerReferenceNo    -  30An
referenceNo  - 32 AN
merchantId  - 10AN
amount  - 9.2AN
checkSum - 64AN

这是他们在文档中给出的参数,他们也给出了相应的字段规范(我不知道字段规格是什么)。

状态' 0'将成功交易,如果是负值,则表示交易失败。

 <?php
    require("./connect.php");

    if (count($_GET)==0 && count($_POST)==0)
    {  
    ?> 
         <h1 style="font-weight:bold; font-family:'RobotoThin' align='center';">ERROR. NO DATA FOUND</h1>
    <?php
    }
    else
    {

        if($_SERVER['REQUEST_METHOD']=='POST')
        {

         $status    = $_REQUEST['Status'];
         $essrefno= $_REQUEST['TransactionId'];
         $ref_no= $_REQUEST['ReferenceNo']; 

         $sql = "update `tablename` set `ess_ref_no`= '$essrefno',status='$status' where ref_no ='$ref_no'";

         mysql_query($sql);
         }
         if($_SERVER['REQUEST_METHOD']=='GET')
        {

         $status    = $_REQUEST['Status'];
         $essrefno= $_REQUEST['TransactionId'];
         $ref_no= $_REQUEST['ReferenceNo'];

          //echo $status+$essrefno+$ref_no;
         $sql = "update `tablename` set `ess_ref_no`= '$essrefno',status='$status' where ref_no ='$ref_no'";

         mysql_query($sql);
         }
        //echo $sql;
    ?>
    <?php
        if ($status==0 )
        {
    ?>
            <h1 style="font-weight:normal; font-family:'RobotoThin';">Your transaction is successful and your transaction reference no for any further communication is  <?php echo $ref_no; ?> .</h1>
     <?php
        }
        else
        {
     ?>
            <h1 style="font-weight:normal; font-family:'RobotoThin';">Your transaction failed and your transaction reference no for any further communication is  <?php echo $ref_no; ?>.</h1>
     <?php
        } 
    }
?>

这是我制作的PHP,但它不起作用。此外,我已向他们提供了某个页面,我不知道如何使用JavaScript或其他东西将这个PHP集成到该HTML页面?有人可以帮助我吗?

1 个答案:

答案 0 :(得分:2)

超全局$ _REQUEST将包含两个POST作为GET数据,所以如果他们POST或获取数据,不要太担心(还)。

执行var_dump($_REQUEST);查看已发布的数据。从那时起应该很容易。