Ir para conteúdo

Posts Recomendados

Fala XTibianos!

Muitas pessoas me encheram o saco pediram o sistema pagseguro para znote 100% funcional.

 

 

Ai está, basta jogar o retpagseguro na pasta principal e integrar o forumulário nas paginas.

Dou suporte no topico, basta informar corretamente o erro.

 

RetPagseguro.php

<?PHP
$host = "localhost"; /* HOST */
$user = "root"; /* USER */
$passwd = ""; /* PASSWORD */
$db = ""; /* DB */
##############################################################
# CONFIGURAÇÕES
##############################################################
$retorno_token = ''; // Token gerado pelo PagSeguro
if (empty($_POST['Referencia'])) { header("Location http://pagseguro.com.br"); }
list($accname, $world) = explode('-', $_POST['Referencia']);
if ($world=='sv') {
$retorno_host = "$host"; // Local da base de dados MySql
$retorno_database = "$db"; // Nome da base de dados MySql
$retorno_usuario = "$user"; // Usuario com acesso a base de dados MySql
$retorno_senha = "$passwd"; // Senha de acesso a base de dados MySql
}
###############################################################
# NÃO ALTERE DESTA LINHA PARA BAIXOs#
$lnk = mysql_connect("$host", "$user", "$passwd") or die ('Nao foi possível conectar ao MySql: ' . mysql_error());
mysql_select_db("$db", $lnk) or die ('Nao foi possível ao banco de dados selecionado no MySql: ' . mysql_error());
// Validando dados no PagSeguro
$PagSeguro = 'Comando=validar';
$PagSeguro .= '&Token=' . $retorno_token;
$Cabecalho = "Retorno PagSeguro";
foreach ($_POST as $key => $value)
{
$value = urlencode(stripslashes($value));
$PagSeguro .= "&$key=$value";
}
if (function_exists('curl_exec'))
{
$curl = true;
}
{
$fsocket = true;
}
elseif ($fp = @fsockopen('pagseguro.uol.com.br', 80, $errno, $errstr, 30))
{
$fsocket = true;
}
if ($curl == true)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $PagSeguro);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($ch);
curl_close($ch);
$confirma = (strcmp ($resp, "VERIFICADO") == 0);
}
elseif ($fsocket == true)
{
$Cabecalho = "POST /Security/NPI/Default.aspx HTTP/1.0\r\n";
$Cabecalho .= "Content-Type: application/x-www-form-urlencoded\r\n";
$Cabecalho .= "Content-Length: " . strlen($PagSeguro) . "\r\n\r\n";
if ($fp || $errno>0)
{
fputs ($fp, $Cabecalho . $PagSeguro);
$confirma = false;
$resp = '';
while (!feof($fp))
{
$res = @fgets ($fp, 1024);
$resp .= $res;
if (strcmp ($res, "VERIFICADO") == 0)
{
$confirma=true;
break;
}
}
fclose ($fp);
}
else
{
echo "$errstr ($errno)<br />\n";
}
}
if ($confirma) {
## Recebendo Dados ##
$TransacaoID = $_POST['TransacaoID'];
$VendedorEmail = $_POST['VendedorEmail'];
$Referencia = $_POST['Referencia'];
$TipoFrete = $_POST['TipoFrete'];
$ValorFrete = $_POST['ValorFrete'];
$Extras = $_POST['Extras'];
$Anotacao = $_POST['Anotacao'];
$TipoPagamento = $_POST['TipoPagamento'];
$StatusTransacao = $_POST['StatusTransacao'];
$CliNome = $_POST['CliNome'];
$CliEmail = $_POST['CliEmail'];
$CliEndereco = $_POST['CliEndereco'];
$CliNumero = $_POST['CliNumero'];
$CliComplemento = $_POST['CliComplemento'];
$CliBairro = $_POST['CliBairro'];
$CliCidade = $_POST['CliCidade'];
$CliEstado = $_POST['CliEstado'];
$CliCEP = $_POST['CliCEP'];
$CliTelefone = $_POST['CliTelefone'];
$NumItens = $_POST['ProdValor_1'];
$ProdQuantidade_x = $POST['ProdQuantidade_1'];
# GRAVA OS DADOS NO BANCO DE DADOS #
mysql_query("INSERT into PagSeguroTransacoes SET
TransacaoID='$TransacaoID',
VendedorEmail='$VendedorEmail',
Referencia='$Referencia',
TipoFrete='$TipoFrete',
ValorFrete='$ValorFrete',
Extras='$Extras',
Anotacao='$accname',
TipoPagamento='$TipoPagamento',
StatusTransacao='$StatusTransacao',
CliNome='$CliNome',
CliEmail='$CliEmail',
CliEndereco='$CliEndereco',
CliNumero='$CliNumero',
CliComplemento='$CliComplemento',
CliBairro='$CliBairro',
CliCidade='$CliCidade',
CliEstado='$CliEstado',
CliCEP='$CliCEP',
CliTelefone='$CliTelefone',
NumItens='$NumItens',
Data=now(),
ProdQuantidade_x='$ProdQuantidade_x';");
if ($StatusTransacao == "Aprovado") {
mysql_query("UPDATE znote_accounts SET points = points + '$NumItens' WHERE id = '".htmlspecialchars($accname)."'");
mysql_query("UPDATE PagSeguroTransacoes SET StatusTransacao = 'Entregue' WHERE CONVERT( `PagSeguroTransacoes`.`TransacaoID` USING utf8 ) = '$TransacaoID' AND CONVERT( `PagSeguroTransacoes`.`StatusTransacao` USING utf8 ) = 'Aprovado' LIMIT 1 ;");
mysql_query('OPTIMIZE TABLE `pagsegurotransacoes`');
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Donate Server</title>
<style type="text/css">
body {
font-family: Tahoma, Geneva, sans-serif;
font-size: 16px;
width: 900px;
margin: 0px auto;
margin-top: 30px;
}
b {
font-size: 18px;
font-weight: bold;
}
</style>
</head>
<body>
<table width="100%" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td width="11%" align="center" valign="middle"><img src="images/true.png" height="auto" width="64" /></td>
<td width="89%"><p><b>S</b>ua compra está sendo processada por nossos sistemas de apuração, dentro de no máximo <u>1 hora seus pontos serão creditados</u>, caso o pagamento não for efetuado, ficará em aberto 1 ou mais pagamentos pendentes em sua conta. Caso você tenha mais de 3 pagamentos pendentes por falta de pagamento, sua conta será bloqueada temporariamente para efetuar pagamentos.</p></td>
</tr>
</table>
<!--p><b>ID de Transação:</b> <?php echo $_POST['TransacaoID']; ?></p-->
</body>
</html>

 

#Formulário

<form target="pagseguro" method="post" action="https://pagseguro.uol.com.br/checkout/checkout.jhtml">
<input type="hidden" name="email_cobranca" value="EMAIL PAGSEGURO">
<input type="hidden" name="tipo" value="CP">
<input type="hidden" name="moeda" value="BRL">
 
<input type="hidden" name="item_id_1" value="1">
<input type="hidden" name="item_descr_1" value="Premium Points">
 
<input type="hidden" name="item_frete_1" value="0">
<input type="hidden" name="item_quant_1" value="1">
<input type="hidden" name="item_peso_1" value="0">
<input type="hidden" name="ref_transacao" value="<?php echo $user_data['id']; ?>">
<select name="item_valor_1">
<option value="1000">10</option>
<option value="2000">20</option>
<option value="3000">30</option>
<option value="5000">50</option>
<option value="10000">100</option>
<option value="15000">150</option>
<option value="20000">200</option>
<option value="25000">250</option>
<option value="50000">500</option>
</select>
<input type="submit" value="comprar" />
</form>
Link para o comentário
Compartilhar em outros sites

  • 1 month later...
  • 2 months later...

No Começo do Código tem:

<?PHP
$host = "localhost"; /* HOST */
$user = "root"; /* USER */
$passwd = ""; /* PASSWORD */
$db = ""; /* DB */

Eu ponho a DB do meu OT?

 

Aguardo Resposta!

 

Obrigado!

Link para o comentário
Compartilhar em outros sites

No Começo do Código tem:

<?PHP
$host = "localhost"; /* HOST */
$user = "root"; /* USER */
$passwd = ""; /* PASSWORD */
$db = ""; /* DB */

Eu ponho a DB do meu OT?

 

Aguardo Resposta!

 

Obrigado!

 

 

Se pede, provavelmente voce deve colocar!

Como voce sabe, ele verifica se existe o pagamento e se está verificado (pago). Infelizmente não há sistemas inteligentes que leem pensamentos de OTs nem de hosters para identificar o banco de dados, sem mais.. atenciosamente, qualquer duvida estamos aer chapa.

Link para o comentário
Compartilhar em outros sites

  • 4 years later...
×
×
  • Criar Novo...