我需要创建一个返回网址,我已将其提供给付款网关,他们会在其中发布响应参数:
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页面?有人可以帮助我吗?
答案 0 :(得分:2)
超全局$ _REQUEST将包含两个POST作为GET数据,所以如果他们POST或获取数据,不要太担心(还)。
执行var_dump($_REQUEST);
查看已发布的数据。从那时起应该很容易。