Ir para conteúdo

Aksz

Moderador
  • Registro em

  • Última visita

Tudo que Aksz postou

  1. Aksz postou uma resposta no tópico em Suporte Tibia OTServer
    Teria que ver aonde está fazendo esse update, se é direto na source ou em scripts dentro da pasta do servidor. Mas acredito eu que isso é um erro de comando pois está usando SQLITE, se estiver usando mysql, acredito eu que não daria. tenta achar essa query e trocar por essa. (UPDATE "players" SET "broadcasting" = 0, "viewers" = 0 WHERE "id" in (SELECT "id" FROM "players" WHERE "id" = 1 LIMIT 1);)
  2. Pelo que vi no script voce deu um print na função ball sem antes definir ela. print("Tentando invocar Pokémon com a ball ID: " .. ball:getId()) Está bem no começo, e não tem nenhuma definição ali de ball, por isso o erro que está recebendo valor nulo
  3. Verifica se tem a tabela player_autoloot se tiver, ela esta faltando colunas, Caso tenha essa tabela apaga ela e executa esse script. CREATE TABLE player_autoloot ( id int NOT NULL AUTO_INCREMENT, player_id int NOT NULL, autoloot_list blob, PRIMARY KEY (id) );
  4. <?php /** * Automatic Mercadopago payment system gateway. * * @name pix-myaac-mercadopago * @author Rafhael Oliveira <[email protected]> * @website github.com/thetibiaking/ttk-myaac-plugins * @website github.com/underewarrr/ * @version 1.0.0 */ require_once(SYSTEM . 'functions.php'); require_once(SYSTEM . 'init.php'); require_once(PLUGINS . 'mercadopago/pix/config.php'); // Set debug mode based on the query parameter // use debug true in url to get more infos $debug = isset($_REQUEST['debug']) && $_REQUEST['debug'] === 'true'; // Verify if the collector_id is present in the request if (isset($_REQUEST['id'])) { $collector_id = $_REQUEST['id']; // Initialize cURL $curl = curl_init(); // Set cURL options curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.mercadopago.com/v1/payments/' . $collector_id, CURLOPT_RETURNTRANSFER => true, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_HTTPHEADER => array( 'accept: application/json', 'content-type: application/json', 'Authorization: Bearer ' . $authorizationToken, ), )); // Execute cURL request $response = curl_exec($curl); // Check if cURL request was successful if ($response === false) { // Handle cURL error echo 'Error fetching payment details from Mercado Pago API.'; if ($debug) { echo '<br>Debug Mode: ON'; echo '<br>Status from Mercado Pago API: ' . $resultado->status; echo 'Total Paid Amount or Transaction Amount: ' . $resultado->transaction_amount * $conversionRate; echo '<br>Status from Mercado Pago API: <pre>' . print_r($resultado, true) . '</pre>'; echo '<br>CURL Error: ' . curl_error($curl); } } else { // Decode the JSON response $resultado = json_decode($response); // Check if the payment status is 'approved' or 'paid' // Check if the payment status is approved or paid // Check if the payment status is approved or paid if ($resultado->status === 'approved' || $resultado->status === 'paid') { // Verifique se o pagamento já foi processado $check_processed = "SELECT processed FROM status WHERE codigo = ?"; $stmt_check = mysqli_prepare($conexao, $check_processed); mysqli_stmt_bind_param($stmt_check, "i", $collector_id); mysqli_stmt_execute($stmt_check); mysqli_stmt_bind_result($stmt_check, $processed); mysqli_stmt_fetch($stmt_check); mysqli_stmt_close($stmt_check); // Adicionar uma verificação extra para garantir que o pagamento não foi processado if ($processed === 0 || $processed === null) { // Pagamento não processado ainda // Iniciar uma transação para garantir que as atualizações sejam feitas de forma atômica mysqli_begin_transaction($conexao); try { // Marcar o pagamento como processado $update_processed = "UPDATE status SET processed = 1 WHERE codigo = ?"; $stmt_processed = mysqli_prepare($conexao, $update_processed); mysqli_stmt_bind_param($stmt_processed, "i", $collector_id); mysqli_stmt_execute($stmt_processed); mysqli_stmt_close($stmt_processed); // Atualizar o status $new_status_value = 'delivered'; $update_status = "UPDATE status SET status = ? WHERE codigo = ?"; $stmt_status = mysqli_prepare($conexao, $update_status); mysqli_stmt_bind_param($stmt_status, "si", $new_status_value, $collector_id); mysqli_stmt_execute($stmt_status); mysqli_stmt_close($stmt_status); // Calcular o valor de pontos premium com base na transação $conversionValue = $resultado->transaction_amount * $conversionRate; // Obter a conta da sessão $current_session = getSession('account'); // Atualizar a tabela de contas com os pontos premium $update_accounts = "UPDATE accounts SET $donationType = $donationType + ? WHERE id = ?"; $stmt_accounts = mysqli_prepare($conexao, $update_accounts); mysqli_stmt_bind_param($stmt_accounts, "di", $conversionValue, $current_session); mysqli_stmt_execute($stmt_accounts); mysqli_stmt_close($stmt_accounts); // Confirmar a transação mysqli_commit($conexao); echo "Premium points updated successfully in accounts table"; } catch (Exception $e) { // Se algo falhar, faz o rollback da transação mysqli_roll_back($conexao); echo "Error processing payment: " . $e->getMessage(); } } else { echo 'Payment already processed.'; } } else { echo 'Payment status is not "approved" or "paid". No database update performed.'; } if ($debug) { echo '<br>Debug Mode: ON'; echo '<br>Status from Mercado Pago API: ' . $resultado->status; echo 'Total Paid Amount or Transaction Amount: ' . $resultado->transaction_amount * $conversionRate; echo '<br>Status from Mercado Pago API: <pre>' . print_r($resultado, true) . '</pre>'; echo '<br>CURL Error: ' . curl_error($curl); } } // Close cURL curl_close($curl); } else { echo 'Invalid or missing collector_id in the request.'; if ($debug) { echo '<br>Debug Mode: ON'; // Add more debug information as needed } } ?> Não cheguei a testar, verifica se vai corrigir esse problema de apertar o F5
  5. Ai depende muito do website que você está utilizando, versões mais antigas de websites ( que eu me lembre só rodam em php 5.6 ) pra rodar nessa versão atual, teria que mexer em bastante coisa, tem alguns websites novos ai que já estão rodando nessas novas versões. Ai depende muito do website que ele está utlizando ( modernacc só roda no 5.6, isso aqueles antigos sem alterações), mas esses novos ai já estão rodando nessas novas versões tranquilo.
  6. Vai em /var/www/html cria um arquivo de teste la com qualquer nome pode ser versao.php dentro dele coloca isso <?php phpinfo(); ?> E veja qual versão vai retornar. Geralmente se utiliza php 5.6
  7. O Erro do site ali, é que não foi encontrada a rota principal do site, por esse motivo o erro, Se não me engano o ModernACC e os outros websites, rodam no php 5.6 Verifica se é esse PHP também, mas a mensagem ali não é referente ao PHP e sim a configuração do site.
  8. Está usando o Apache2 + PHP ? Qual WebSite está utlizando ? Modern, MyAcc, Gensior.
  9. Olá, bom dia tudo bem? Fez toda a instalação, do PHP para poder rodar o site etc? Habilita o modo de erros, para mostrar se for erro relacionado ao php ou algo do tipo.
  10. Rode essas aqui, foram atualizadas para o SQLite. CREATE TABLE IF NOT EXISTS z_ots_guildcomunication ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, type TEXT NOT NULL, action TEXT NOT NULL, param1 TEXT NOT NULL, param2 TEXT NOT NULL, param3 TEXT NOT NULL, param4 TEXT NOT NULL, param5 TEXT NOT NULL, param6 TEXT NOT NULL, param7 TEXT NOT NULL, delete_it INTEGER NOT NULL DEFAULT 1 ); CREATE TABLE IF NOT EXISTS z_ots_comunication ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, login TEXT NOT NULL, type TEXT NOT NULL, action TEXT NOT NULL, param1 TEXT NOT NULL, param2 TEXT NOT NULL, param3 TEXT NOT NULL, param4 TEXT NOT NULL, param5 TEXT NOT NULL, param6 TEXT NOT NULL, param7 TEXT NOT NULL, delete_it INTEGER NOT NULL DEFAULT 1 );
  11. Olá, está faltando duas tabelas, no seu banco de dados. Creio eu que rodando essas querys já resolva. CREATE TABLE `z_ots_guildcomunication` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `type` varchar(255) NOT NULL, `action` varchar(255) NOT NULL, `param1` varchar(255) NOT NULL, `param2` varchar(255) NOT NULL, `param3` varchar(255) NOT NULL, `param4` varchar(255) NOT NULL, `param5` varchar(255) NOT NULL, `param6` varchar(255) NOT NULL, `param7` varchar(255) NOT NULL, `delete_it` int(2) NOT NULL DEFAULT '1' ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1; E esse outro aqui CREATE TABLE IF NOT EXISTS `z_ots_comunication` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `login` varchar(255) NOT NULL, `type` varchar(255) NOT NULL, `action` varchar(255) NOT NULL, `param1` varchar(255) NOT NULL, `param2` varchar(255) NOT NULL, `param3` varchar(255) NOT NULL, `param4` varchar(255) NOT NULL, `param5` varchar(255) NOT NULL, `param6` varchar(255) NOT NULL, `param7` varchar(255) NOT NULL, `delete_it` int(2) NOT NULL DEFAULT '1', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;
  12. Sim, ou você pode ir criando manualmente, mas se executar ele sera criado automaticamente.
  13. Olá, bom dia tudo bem? Pelo erro, está faltando a coluna reset, segue a query, para adicionar. ALTER TABLE players ADD reset INTEGER not null default 0 O segundo erro é que está faltando a tabela z_ots_comunication, verifica se instalou certinho, o sistema, qualquer coisa roda novamente as querys, mas pra desencargo, segue a query. CREATE TABLE "z_ots_comunication" ( "id" INTEGER PRIMARY KEY NOT NULL, "name" VARCHAR(255) NOT NULL, "type" VARCHAR(255) NOT NULL, "action" VARCHAR(255) NOT NULL, "param1" VARCHAR(255) NOT NULL, "param2" VARCHAR(255) NOT NULL, "param3" VARCHAR(255) NOT NULL, "param4" VARCHAR(255) NOT NULL, "param5" VARCHAR(255) NOT NULL, "param6" VARCHAR(255) NOT NULL, "param7" VARCHAR(255) NOT NULL, "delete_it" INTEGER(2) NOT NULL DEFAULT '1' )
  14. Usa a porta 8090, geralmente a porta 80 é utilizada pelo roteador. Pra acessar o site configura ele com a porta 8090, ai voce vai acessar, IP:8090
  15. Olá! Só pra lembrar, os provedores de emails, lançaram uma atualização nas opções de envio de emails, por dentro de aplicativos, seja sites ou programas, agora não é possivel mais configurar email e senha no smtp, no gmail, precisa estar ativado a autenticação de dois fatores, e criar uma senha de aplicativo, ai sim vai funcionar, pode ser por conta disso que não esteja funcionando certinho.
  16. Olá, bom dia tudo bem? Nesse caso, o erro é que não existe a database 'ndbo' criada.
  17. Olá, bom dia tudo bem? Sobre o primeiro erro, Está usando hospedagem / servidor, ou está rodando em localhost com xampp, ou algo do gênero? Como está a configuração do SMTP, dependendo de qual serviço esteja usando pra rodar o site, não esteja ativo a função de email, SMTP ou o MAIL. Manda como está a configuração do SMTP, do MyACC por gentileza.
  18. Aksz postou uma resposta no tópico em OTServer Derivados
    Segue o scan do arquivo. SCAN VIRUS TOTAL
  19. Olá, bom dia! Então, no select que você fez, você pediu pra puxar somente a coluna guild_id, onde a guild_id for maior que 0. Se você puxar todos dados da tabela, troca o select `guild_id` por select * a condição where se quiser pegar somente de uma guild especifica, seria where guild_id = id_guild
  20. Olá, bom dia tudo bem? Pelo que vi, não sei se foi o proprio forum aqui que colocou, mas tem um emoji ali, na query, Vê o script que salva o player ao deslogar e me manda, para eu dar uma analisada
  21. Olá, boa tarde, tudo bem? Poste aqui o problema que deu, para tentarmos lhe ajudar
  22. Esse erro é por que está entrando com a porta errada, por isso essa mensagem, la no arquivo de configuração verifica qual porta está, tanto no servidor, quanto no cliente.
  23. Se não me engano, está faltando a tag SqlType, acho que é assim que escreve, tem que por que é MYSQL, pelo que vi, parece que falta algumas tags nesse config.lua Não me lembro, faz uma copia, do servidor.lua e Renomeia pra config.lua também pra ver.
  24. Se puder, coloca o script por gentileza, que ficou certinho, pois também pode ser que alguma outra pessoa precise também, e já ajudaria a comunidade
  25. Olá, bom dia tudo bem? Primeiramente vamos lá, Download das DLL's Scan das DLL's Dowload Servidor Scan Servidor Caso você queira, pode usar suas proprias DLL's, mas recomendos DLL's, limpas, sem modificações. Para ligar, utilize o mapa lite, que está na pasta world, ou seja, mova os arquivos que está na pasta WORLD, para uma pasta de backup, e use a versão do mapa light, para testar, lembrando que essa versão que compilei, não vai rodar o mapa full. Outra coisa que detectei, que aparentemente, parece que falta algumas tags nesse Servidor.lua, a source original, estava puxando ainda o config.lua, alterei para puxar o servidor.lua Mas ta faltando algumas outras tags ai só da uma olhadinha que vai conseguir identificar. Pelo menos nos meus testes eu vi que precisava de algumas coisas a mais no Servidor.lua Como a tag do tipo de conexão de base, para mysql ou sqlite, e a tag de diretorio, aonde puxa os dados do servidor. Lembrando, o scan está ai acima, eu não parei pra analisar toda a source em si, para ver se tinha algo incomum no código.

Informação Importante

Confirmação de Termo