
07/12/2008, 13:51
|
| | Fecha de Ingreso: diciembre-2008
Mensajes: 9
Antigüedad: 16 años, 3 meses Puntos: 0 | |
Respuesta: Problema enviar/recibir formulario Banorte Y finalmente este es el código de la página donde debería de venir la respuesta:
Código:
<?php
require_once("../common/common.php");
require_once("../common/class.template.php");
require_once("../common/class.user.php");
require_once("../common/dbinfo.php");
require_once("../common/class.pedido.php");
require_once("../common/class.productos.php");
require_once("../common/class.session_timer.php");
@session_name('portal');
session_start();
$timer = new SessionManger();
$timer->update_session($_SESSION);
function insert_cat_answer_payworks ($dbh,$data){
$SQL = "INSERT INTO respuestas_banco (id_pedido,id_user,Status,MaxSev,TimeIn,TimeOut,ProcReturnMsg,ProcReturnCode,Text,CcReturnMsg,Total,E1,E2,E3,AuthCode,Cvv2Resp,CcErrCode,OrderId) VALUES
(".intval($_GET["OrderId"]).",".$_SESSION["id_user"].",'".$_GET["Status"]."','".$_GET["MaxSev"]."','".$_GET["TimeIn"]."','".$_GET["TimeOut"]."','".$_GET["ProcReturnMsg"]."','".$_GET["ProcReturnCode"]."','".$_GET["Text"]."','".$_GET["CcReturnMsg"]."','".$_GET["Total"]."','".$_GET["E1"]."','".$_GET["E2"]."','".$_GET["E3"]."','".$_GET["AuthCode"]."','".$_GET["Cvv2Resp"]."','".$_GET["CcErrCode"]."','".$_GET["OrderId"]."')";
mysql_query($SQL,$dbh);
}
function insert_pago($dbh,$id_pedido){
$SQL = "INSERT INTO pagos (id_paymentgw,fecha,confirmacion,monto) VALUES (1,".intval($_GET["OrderId"]).",'".$_GET["AuthCode"]."','".$_GET["Total"]."')";
mysql_query($SQL,$dbh);
$SQL = "SELECT LAST_INSERT_ID() AS id_pago";
$res = mysql_query($SQL);
$row = mysql_fetch_object($res);
$id_pago = $row->id_pago;
$SQL = "UPDATE pedidos SET id_pago=".$id_pago." WHERE id_pedido=".$id_pedido;
mysql_query($SQL);
return $id_pago;
}
$pedido = new pedido();
if ($pedido->check_sig($dbh,intval($_GET["OrderId"]),$_GET["E1"])){
insert_cat_answer_payworks($dbh,$_GET);
if ($_GET["CcErrCode"]=="1"){ //Cargo aprobado
insert_pago($dbh,intval($_GET["OrderId"]));
$params = base64_encode("id_pedido=".intval($_GET["OrderId"])."&auth_code=".$_GET["AuthCode"]);
$tail = md5("421dc46fdbbd5f12577e0cec24be3f");
$params .= $tail . "Me";
$params = str_replace("=","M",$params);
header("Location: confirm.php?sess=".$params);
}else{ //Cargo denegado
header("Location: denied.php?id_pedido=".$_GET["OrderId"]."&total=".$_GET["Total"]);
}
} else {
echo "Error en firma de validación electrónica";
}
?>
Cualquier comentario se los agradeceré ya que llevo días tratando de cambiar cosas y la verdad es que no me sale nada. |