Ir para conteúdo
Fórum Script Brasil

Rodrigo da Cruz

Membros
  • Total de itens

    6
  • Registro em

  • Última visita

Tudo que Rodrigo da Cruz postou

  1. Sim, entendi e já me fiz a tal pergunta...porém esse exemplo que enviei, foi feito pelo pagseguro, está lá na documentação inclusive, outros exemplos que tem lá tipo c# e Python compilei aqui, e funcionaram super bem, só esse em C q realmente estava precisando, n ta rolando!
  2. Amigo, segue a URL https://1drv.ms/u/s!Ai4uDiRgKmnjg1uyTLp_UiL-MApx p você baixar todos que adquiri do Pag Seguro, o exemplo oficial em C p windows não ta funcionando, p isso resolvi refaze-lo, mas não da certo!
  3. Olá amigo, obrigado por responder, o projeto está criado e os arquivos .h .dll estão no mesmo diretório, criei o projeto da mesma maneira que criei outros projetos pequenos, inclusive testei outros tipos de códigos e compilam tranquilo, porém esse ta dando isso, segue abaixo o arquivo PPPagSeguro.h #ifndef _PPPAGSEGURO_H_ #define _PPPAGSEGURO_H_ #if !defined(IOS) #pragma pack(push,1) #endif #ifdef __cplusplus extern "C" { #endif #if defined(ANDROID) || defined(__linux__) || defined(IOS) #define LIBRARY_API //JNIEXPORT #else //ANDROID #if COMPILING_DLL #define LIBRARY_API __declspec(dllexport) #else //COMPILING_DLL #define LIBRARY_API __declspec(dllimport) #endif //COMPILING_DLL #endif //ANDROID /* Codigos de retorno */ #define PPPS_RET_OK 0 #define PPPS_ERR_BASE -1000 #define PPPS_BUFF_SIZE PPPS_ERR_BASE-1 #define PPPS_NULL_PTR PPPS_ERR_BASE-2 #define PPPS_POS_NOT_READY PPPS_ERR_BASE-3 #define PPPS_TRANS_DENIED PPPS_ERR_BASE-4 #define PPPS_DATA_INV_RESULT_MESSAGE PPPS_ERR_BASE-5 // Buffer de resposta da transacao invalido ao obter as informacoes de resultado da transacao #define PPPS_INV_AMOUNT_PARAM PPPS_ERR_BASE-6 #define PPPS_INV_TOT_AMOUNT_PARAM PPPS_ERR_BASE-7 #define PPPS_INV_USER_REF_PARAM PPPS_ERR_BASE-8 #define PPPS_INV_TRS_RESULT_PARAM PPPS_ERR_BASE-9 // Parametro invalido: Transaction Result #define PPPS_DRIVER_NOT_FOUND PPPS_ERR_BASE-10 // não encontrou dll de driver #define PPPS_DRIVER_FUNCTION_ERROR PPPS_ERR_BASE-11 #define PPPS_INV_FORMAT_AMOUNT_PARAM PPPS_ERR_BASE-12 #define PPPS_INV_LEN_USER_REF_PARAM PPPS_ERR_BASE-13 #define PPPS_INVALID_BUFFER PPPS_ERR_BASE-14 #define PPPS_INV_APP_NAME_PARAM PPPS_ERR_BASE-15 #define PPPS_INV_APP_VERSION_PARAM PPPS_ERR_BASE-16 #define PPPS_APP_NAME_VERSION_NOT_SET PPPS_ERR_BASE-17 #define PPPS_TRANS_NODATA PPPS_ERR_BASE-18 // sem dados da transa��o #define PPPS_COMMUNICATION_ERROR PPPS_ERR_BASE-19 #define PPPS_SHARE_MODE_NOT_ALLOWED PPPS_ERR_BASE-20 #define PPPS_ERR_UNKNOW PPPS_ERR_BASE-999 /* Definicao de tamanhos dos campos da estrutura de dados de resultado de transacao */ #define PPPS_COMPORT_LEN 8 + 1 #define PPPS_ERROR_CODE_LEN 4 + 1 #define PPPS_MESSAGE_LEN 1023 + 1 #define PPPS_USER_REFERENCE_LEN 10 + 1 #define PPPS_AMOUNT_LEN 13 + 1 #define PPPS_TRS_CODE_LEN 32 + 1 #define PPPS_DATE_LEN 10 + 1 #define PPPS_TIME_LEN 8 + 1 #define PPPS_TRS_HOSTNSU_LEN 12 + 1 #define PPPS_CARD_BRAND_LEN 30 + 1 #define PPPS_BIN_LEN 6 + 1 #define PPPS_HOLDER_LEN 4 + 1 #define PPPS_RAW_BUFFER_LEN 65542 + 1 #define PPPS_TERMINAL_SERIAL_NUMBER_LEN 65 + 1 #define PPPS_APP_NAME_LEN 25 + 1 #define PPPS_APP_VERSION_LEN 10 + 1 /* Definicao do tipos dos parametros */ typedef enum { PPPAGSEGURO_CREDIT = 1, PPPAGSEGURO_DEBIT = 2, PPPAGSEGURO_VOUCHER = 3 } enPPPSPaymentMethod; typedef enum { PPPAGSEGURO_A_VISTA = 1, PPPAGSEGURO_PARC_VENDEDOR = 2 } enPPPSInstallmentType; typedef char tyComPort [PPPS_COMPORT_LEN]; typedef char tyAmount [PPPS_TRS_CODE_LEN]; typedef char tyUserReference [PPPS_USER_REFERENCE_LEN]; typedef char tyAppName[PPPS_APP_NAME_LEN]; typedef char tyAppVersion[PPPS_APP_VERSION_LEN]; /* Definicao da estrutura de dados de resultado da transacao */ typedef struct { char rawBuffer [PPPS_RAW_BUFFER_LEN]; char message [PPPS_MESSAGE_LEN]; char transactionCode [PPPS_TRS_CODE_LEN]; char date [PPPS_DATE_LEN]; char time [PPPS_TIME_LEN]; char hostNsu [PPPS_TRS_HOSTNSU_LEN]; char cardBrand [PPPS_CARD_BRAND_LEN]; char bin [PPPS_BIN_LEN]; char holder [PPPS_HOLDER_LEN]; char userReference [PPPS_USER_REFERENCE_LEN]; char terminalSerialNumber [PPPS_TERMINAL_SERIAL_NUMBER_LEN]; } stPPPSTransactionResult; /* GetVersionLib Retorna uma string null terminated com a vers�o da biblioteca de integracao Parametros: nenhum Retorno: const char* - string null terminated com a versao da biblioteca de integracao */ LIBRARY_API const char *GetVersionLib (void); /* InitBTConnection Configura a porta com que est� pareada com a Moderninha Parametros: const char* comport - Porta COM mapeada para Bluetooth e já pareada com a Moderninha Retorno: nenhum */ LIBRARY_API int InitBTConnection (const tyComPort* comport); /* SimplePaymentTransaction Inicia a transacao de venda. Em caso de sucesso, retorna os dados da transacao numa estrutura Parametros: enPPPSTansType transtype - Tipo de transacao, credito, debito, voucher enPPPSInstallmentType installmenttype - Tipo de parcelamento, a vista, parcelado const char* amount - Valor da transacao, com 2 para centavos, sem pontos e virgulas. Ex: "R$ 1.234,56" deve ser passado como "123456" unsigned int installments - Numero de parcelas. Caso a vista, valor deve ser 1 const char* userreference - Codigo de venda, definido pelo aplicativo stPPPSTransactionResult* transactionResult - Estrutura com os dados de resultado da transacao Retorno: int - De acordo com a lista de codigos de retorno possiveis */ LIBRARY_API int SimplePaymentTransaction ( enPPPSPaymentMethod paymentMethod, enPPPSInstallmentType installmentType, unsigned int installments, const tyAmount* amount, const tyUserReference* userreference, stPPPSTransactionResult* transactionResult ); /* CancelTransaction Inicia a transacao de estorno. Em caso de sucesso, retorna os dados da transacao numa estrutura Parametros: stPPPSTransactionResult* transactionResult - Estrutura com os dados de resultado da transacao Retorno: int - De acordo com a lista de codigos de retorno possiveis */ LIBRARY_API int CancelTransaction (stPPPSTransactionResult* transactionResult); /* GetLastTransactionStatus Inicia a transacao de consulta da ultima transacao realizada com sucesso. Em caso de sucesso, retorna os dados da transacao numa estrutura Parametros: stPPPSTransactionResult* transactionResult - Estrutura com os dados de resultado da transacao Retorno: int - De acordo com a lista de codigos de retorno possiveis */ LIBRARY_API int GetLastApprovedTransactionStatus (stPPPSTransactionResult* transactionResult); LIBRARY_API void UnloadDriverConnection(void); LIBRARY_API void InitIOSDummyConnection(void); LIBRARY_API int SetVersionName(tyAppName appName, tyAppVersion version); #ifdef __cplusplus } #endif #if !defined(IOS) #pragma pack(pop) #endif #endif // _PPPAGSEGURO_H_
  4. Olá vangodp, muito obrigado pela resposta, o código do main.cpp é todo esse que coloquei aqui, o restante é só lib que incluí no cabeçalho do main, já tentei rodar ele no dev C++, Visual Studio 2017, OnlineGBD e todas estas IDE,s dão o mesmo erro!
  5. Olá amigos, sou novo em programação C/C++, estou integrando uma solução de pagamento do pagseguro, o PlugPag com meu sistema, porém segui todos os passos da documentação fornecida pelo pagseguro e mesmo assim ta dando um problema na hora de compilar! O erro é o seguinte: main.c:(.text.startup+0x85): undefined reference to `SimplePaymentTransaction' Segue o código do main.cpp abaixo: #include "PPPagSeguro.h" #include <stdio.h> #include <string.h> #include <stdlib.h> int main (int argc, char *argv[]){ int ret; tyComPort comPort; enPPPSPaymentMethod paymentMethod; enPPPSInstallmentType installmentType; unsigned int installment; tyAmount amount; tyUserReference userReference; stPPPSTransactionResult transactionResult; memset ((void *) comPort, 0, sizeof (tyComPort)); memset ((void *) amount, 0, sizeof (tyAmount)); memset ((void *) userReference, 0, sizeof (tyUserReference)); // Porta COM11 estC! com a Moderninha pareada no Bluetooth memcpy (comPort, "COM7", 5); // Pagamento no crC)dito paymentMethod = PPPAGSEGURO_CREDIT; //(7 parcelas) installmentType = PPPAGSEGURO_PARC_VENDEDOR; installment = 7; // R$ 200,00 Reais memcpy (amount, "200", 4); // Meu cC3digo de venda C) "CODIGVENDA" memcpy (userReference, "CODIGVENDA", 10); int InitBTConnection (const tyComPort * comport); ret = SimplePaymentTransaction (paymentMethod, installmentType, installment, &amount, &userReference, &transactionResult ); return ret; } Desde já agradeço quem puder me dar uma luz!
  6. Olá amigos tenho um laço de repetição for, preciso inserir no banco de dados MySqL os resultados desse laço, porém não estou conseguindo, por favor peço ajuda, pois sou novo com php e mysql. Segue código abaixo, desde já obrigado! <?php $special=$total; $maximo_parcelas = 12; $parcela_minima = 5; $parcelas_sem_juros = 1; $juros = 0.00; $moeda_da_loja = 'R$ '; $tipo_de_calculo = 0; if (!$special) { $preco_numero = str_replace(',','.',str_replace('.','', str_replace($moeda_da_loja,"",strip_tags($price)))); } else { $preco_numero = str_replace(',','.',str_replace('.','', str_replace($moeda_da_loja,"",strip_tags($special)))); } if ($preco_numero >= $parcela_minima*2) { // Titulo echo '<b>Parcelamento no cart&atilde;o de cr&eacute;dito</b><br />'; echo '<table width="100%">'; // Inicia a primeira coluna echo '<div style="width: 50%; float:left;">'; // Exibicao das parcelas for ($p = 2; $p <= $maximo_parcelas; $p++) { // Se a parcela nao tiver juros if ($p <= $parcelas_sem_juros) { $valor_parcela = $preco_numero / $p; } // Se a parcela tiver juros if ($p > $parcelas_sem_juros) { if ($tipo_de_calculo == 0) { $valor_parcela = ($preco_numero * pow(1+($juros/100), $p))/$p; } if ($tipo_de_calculo == 1) { $valor_parcela = ($preco_numero * ($juros/100))/(1-(1/(pow(1+($juros/100), $p)))); } } // Escreve a parcela se ela for maior do que a parcela minima if ($valor_parcela >= $parcela_minima) { $valor_parcela = number_format($valor_parcela, 2, ',', '.'); if ($p <= $parcelas_sem_juros) { echo '<span style="color: darkgreen;">' . $p . 'x de ' . $moeda_da_loja . $valor_parcela . ' sem juros</span><br />'; } else { echo $p . 'x de ' . $moeda_da_loja . $valor_parcela . ' com juros<br />'; } } // Fecha a primeira coluna e inicia a segunda if ($p == intval($maximo_parcelas/2)+1) { echo '</div><div style="width: 50%; float:right;">'; } } echo '</div>'; echo '</table><br />'; } //AQUI EU PRECISO ENVIAR O RESULTADO DO LAÇO ACIMA PARA O MYSQL ?>
×
×
  • Criar Novo...