Zaira Amorim
unread,Jun 8, 2012, 9:38:39 AM6/8/12Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to list...@googlegroups.com, php...@googlegroups.com
Bom dia Gente,
Estou com um problema na página de retorno do pagseguro. Acontece que algumas vezes ele não ta fazendo atualização no meu banco de dados. Gostaria de saber o que ta acontecendo, se alguem puder me ajudar agradeço. Segue abaixo meu trecho do código.
<?php
if (count($_POST) > 0) {
// POST recebido, indica que é a requisição do NPI.
$npi = new PagSeguroNpi();
$result = $npi->notificationPost();
$transacaoID = isset($_POST['TransacaoID']) ? $_POST['TransacaoID'] : '';
if ($result == "VERIFICADO") {
$Referencia = $_POST['Referencia'];
$StatusTransacao = $_POST['StatusTransacao'];
list($idUsuario, $idCompra, $idcupom) = explode("-", $Referencia);
mysql_query("update compras set status='$StatusTransacao' where id='$idCompra' and usuario_id='$idUsuario'");
$compra = mysql_fetch_object(mysql_query("SELECT * FROM compras WHERE id='$idCompra' and usuario_id='$idUsuario'"));
$cupom = mysql_query("SELECT * FROM cupom WHERE compra_id='$compra->id'");
while($c=mysql_fetch_object($cupom)){
switch($compra->status){
case "Em Análise":
mysql_query("update cupom set status='0' where compra_id='$compra->id' and usuario_id='$idUsuario'");
break;
case "Aguardando Pagto":
mysql_query("update cupom set status='0' where compra_id='$compra->id' and usuario_id='$idUsuario'");
break;
case "Aprovado":
mysql_query("update cupom set status='1' where compra_id='$compra->id' and usuario_id='$idUsuario'");
break;
case "Completo":
mysql_query("update cupom set status='1' where compra_id='$compra->id' and usuario_id='$idUsuario'");
break;
case "Cancelado":
mysql_query("update cupom set status='2' where compra_id='$compra->id' and usuario_id='$idUsuario'");
break;
case "Devolvido":
mysql_query("update cupom set status='3' where compra_id='$compra->id' and usuario_id='$idUsuario'");
break;
}
}
$f=fopen ('pagseguro.log', 'a');
// fwrite($f, $idCli . "XXX" . $idCom . "\r\n");
fwrite($f, $idUsuario . "XXX" . $idCompra."\r\n");
fwrite($f, "\r\n---------\r\n\r\n");
fclose($f);
}
} else {
// POST não recebido, indica que a requisição é o retorno do Checkout PagSeguro.
// No término do checkout o usuário é redirecionado para este bloco.
?>
--
Zaira Amorim
Desenvolvedora de Sistemas