Settings
/*--- REALS -----------------------------------------------------------------*/ //$url_tpvv = 'https://sis.sermepa.es/sis/realizarPago'; //$clave = 'XXXXXXXXXXXXXX'; /*--- PROVA -----------------------------------------------------------------*/ $url_tpvv = 'https://sis-t.sermepa.es:25443/sis/realizarPago'; $clave = 'qwertyasdf0123456789'; $precio = '1000'; // 1000 -> 10,00 $name = 'Nom Empresa'; $code = 'XXXXX'; $terminal = '1'; $currency = '978'; $transactionType = '0'; $urlMerchant = 'http://ultracavallsdelvent.com/new/public/scripts/pasarela-respuesta.php'; $url_OK = 'http://ultracavallsdelvent.com/new/inscripciones.php' . $idioma . '&r=ok'; $url_KO = 'http://ultracavallsdelvent.com/new/inscripciones.php' . $idioma . '&r=ko';
Html/php
<div> <div><?=NOMBRE?>*</div> <div><input type="text" id="nombre" style="width:270px;" /></div> </div> <div> <div><?=APELLIDOS?>*</div> <div><input type="text" id="apellidos" style="width:264px;" /></div> </div> <div> <div>NIF (?)*</div> <div><input type="text" id="nif" style="width:277px;" /></div> </div> <form name="pago" id="pago" action="<?=$url_tpvv?>" method="post"> <input type="hidden" name="Ds_Merchant_Amount" id="Ds_Merchant_Amount" value='<?=$precio?>'> <input type="hidden" name="Ds_Merchant_Currency" id="Ds_Merchant_Currency" value='<?=$currency?>'> <input type="hidden" name="Ds_Merchant_Order" id="Ds_Merchant_Order" value=''> <input type="hidden" name="Ds_Merchant_MerchantCode" id="Ds_Merchant_MerchantCode" value='<?=$code?>'> <input type="hidden" name="Ds_Merchant_Terminal" id="Ds_Merchant_Terminal" value='<?=$terminal?>'> <input type="hidden" name="Ds_Merchant_TransactionType" id="Ds_Merchant_TransactionType" value='<?=$transactionType?>'> <input type="hidden" name="Ds_Merchant_MerchantURL" id="Ds_Merchant_MerchantURL" value='<?=$urlMerchant?>'> <input type="hidden" name="Ds_Merchant_MerchantSignature" id="Ds_Merchant_MerchantSignature" value=''> <input type="hidden" name="Ds_Merchant_UrlOK" id="Ds_Merchant_UrlOK" value='<?=$url_OK?>'> <input type="hidden" name="Ds_Merchant_UrlKO" id="Ds_Merchant_UrlKO" value='<?=$url_KO?>'> </form>
Archivo js
function validaForm(){
arrErrores = new Array();
var focusing = "";
if(nombre == ""){ errores("Indica tu nombre"); if(focusing == "") focusing = "nombre"; }
if(apellidos == ""){ errores("Indica tus apellidos"); if(focusing == "") focusing = "apellidos"; }
if(nif == ""){ errores("Indica tu nif"); if(focusing == "") focusing = "nif"; }
var longitudErrores = arrErrores.length;
if(longitudErrores < 1){
$("#enviar").hide();
$("#loader").show();
var dataString = "nombre=" + nombre + "&apellidos=" + apellidos + "&nif=" + nif;
$.ajax({
type: "POST",
url: 'public/scripts/guardar-inscritos.php',
data: dataString,
success: function() {
$.post('public/scripts/pasarela-get-id.php,{ email:email,rand:Math.random() } ,function(id){
$("#Ds_Merchant_Order").val(id);
$.post('public/scripts/pasarela-genera-signature.php',{ order:id,rand:Math.random() } ,function(signature){
$("#Ds_Merchant_MerchantSignature").val(signature);
$("#pago").submit();
})
});
}
});
}else{
var texto = "";
for(a=0;a<longitudErrores;a++){
texto += arrErrores[a];
texto += "<br />";
}
Sexy.alert(texto, { onComplete:
function(){
if(focusing != "") $("input#" + focusing).focus();
}}
);
}
}
pasarela-get-id.php
include('../../privat/ucvconfig/config.inc.php');
include('../../privat/clases/sqlConnect.class.php');
include('../../privat/clases/inscripciones.class.php');
$inscripciones = new inscripciones($mysql);
echo str_pad($inscripciones->getLastId(utf8_decode($_REQUEST['email'])), 4, "0", STR_PAD_LEFT)
pasarela-genera-signature.php
include('../../privat/ucvconfig/settings.inc.php');
$message = $precio . $_REQUEST['order'] . $code . $currency . $transactionType .$urlMerchant . $clave;
echo strtoupper(sha1($message));
pasarela-respuesta.php
include("../../privat/ucvconfig/config.inc.php");
include("../../privat/clases/sqlConnect.class.php");
include("../../privat/clases/inscripciones.class.php");
$inscripciones = new inscripciones($mysql);
$id = (utf8_decode($_REQUEST['Ds_Order']) + 1) - 1;
$datos['respuesta'] = utf8_decode($_REQUEST['Ds_Response']);
$datos['pagado'] = 1;
$datos['precio'] = substr(utf8_decode($_REQUEST['Ds_Amount']), 0, 2);
$inscripciones->editarInscripcio($datos, $id);
