Jump to content

Website [My AAC 0.8.6] Problema para fazer o SMTP funcionar na seção LostAccount


Go to solution Solved by pollux,

Recommended Posts

.Qual servidor ou website você utiliza como base?

OtserverGlobal, TFS 1.3+, Tibia 12.72, My AAC, Uniserver

 

Qual o motivo deste tópico? 

 

 

Estou tendo problemas para fazer com que meu SMTP envie os emails para recuperação na seção LostAccount do website.

O erro encontrado no website se trata do seguinte: 

Está surgindo algum erro? Se sim coloque-o aqui. 

[spoiler]

Citar

image.thumb.png.95fb04618394b88fe2449068e928985c.png

[/spoiler]

No cujo "mailer-error.log" podemos encontrar a seguinte falha:

 

[Mon, 17 Jan 2022 13:59:03 -0300] 
The following From address failed: email@noreply.com(no meu arquivo tem meu email do gmail sem autenticador e permitindo aplicativos menos seguros) : MAIL FROM command failed,Authentication Required. Learn more at
https://support.google.com/mail/?p=WantAuthError 12sm5780904otu.9 - gsmtp
,530,5.7.0SMTP server error: MAIL FROM command failed Detail: Authentication Required. Learn more at
https://support.google.com/mail/?p=WantAuthError 12sm5780904otu.9 - gsmtp
 SMTP code: 530 Additional SMTP info: 5.7.0SMTP server error: MAIL FROM command failed Detail: Authentication Required. Learn more at
https://support.google.com/mail/?p=WantAuthError 12sm5780904otu.9 - gsmtp
 SMTP code: 530 Additional SMTP info: 5.7.0

 

E eu descobri que esse "email@noreply.com" está localizado na "config.local.php" no diretório www do MyAAC. Sendo definido por $config['mail_address'] =' '

 

Você tem o código disponível? Se tiver publique-o aqui: 

config.local.php

<?php
// place for your configuration directives, so you can later easily update myaac
$config['installed'] = true;
$config['env'] = 'prod'; // dev or prod
$config['mail_enabled'] = true;
$config['server_path'] = 'C:/Users/igorf/Desktop/otservbr-global/';
$config['mail_admin'] = 'mailadmin@';
$config['mail_address'] = 'email@noreply.com'; -- O problema aparentemente parece ser aqui (Não sou programador, mas é daqui que a mensagem de erro pega o email aparentemente)
$config['date_timezone'] = 'America/Sao_Paulo';
$config['client'] = '1272';
$config['anonymous_usage_statistics'] = false;
$config['session_prefix'] = 'myaac_4xz6pgfz_';
$config['cache_prefix'] = 'myaac_7nsmwqyx_';
$config['status_ip'] = '127.0.0.1';

$config['highscores_ids_hidden'] = array(1, 2, 3, 4, 5);

 

config.php (parte que trata do email //mail)

    // mail
    'mail_enabled' => false, // is aac maker configured to send e-mails?
    'mail_address' => 'smtp.gmail.com', // server e-mail address (from:)
    'mail_admin' => 'email@noreply.com', // admin email address, where mails from contact form will be sent
    'mail_signature' => array( // signature that will be included at the end of every message sent using _mail function
        'plain' => ""/*"--\nMy Server,\nhttp://www.myserver.com"*/,
        'html' => ''/*'<br/>My Server,\n<a href="http://www.myserver.com">myserver.com</a>'*/
    ),
    'smtp_enabled' => true, // send by smtp or mail function (set false if use mail function, set to true if you use GMail or Microsoft Outlook)
    'smtp_host' => 'smtp.gmail.com', // mail host. smtp.gmail.com for GMail / smtp-mail.outlook.com for Microsoft Outlook
    'smtp_port' => 465, // 25 (default) / 465 (ssl, GMail) / 587 (tls, Microsoft Outlook)
    'smtp_auth' => false, // need authorization?
    'smtp_user' => 'email@noreply.com', // here your email username
    'smtp_pass' => 'noreplypass',
    'smtp_secure' => 'ssl', // What kind of encryption to use on the SMTP connection. Options: '', 'ssl' (GMail) or 'tls' (Microsoft Outlook)
    'smtp_debug' => false, // set true to debug (you will see more info in error.log)

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

Bom coloquei a imagem lá em cima não sei se estará no lugar certo ou não.

 

Link to post
Share on other sites
  • Solution

Pessoal, encontrei a solução, nem acredito, foi tão de repente mas vou listar aqui pra esse tópico servir de arquivo no futuro.

O config.local.php está 100% correto.

 

O Script do MyAAC afirma na linha do 'smtp_enabled' o seguinte: set false if use mail function

send by smtp or mail function (set false if use mail function, set to true if you use GMail or Microsoft Outlook)

O que te faz pensar que ao deixar o smtp como "true" o mail function deve ser "false", mas na realidade AMBOS PRECISAM SER TRUE!

Eu deixei o 'smtp_auth' como false, porque com ele ligado estava dando um erro maior ainda no mailer-error.log.

 

mas a questão é, do meu exemplo para fazer funcionar no seu, basta colocar true em tudo.
'mail_enabled';
'smtp_auth';
'smtp_enabled'

 

É a config que FUNCIONA no gmail.

Lembra de no config.local.php colocar o mesmo email do gmail em :

$config['mail_address'] =
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.


  • Similar Content

    • By Bruno Rezende
      .Qual servidor ou website você utiliza como base? 
      OTX 2
       
      Qual o motivo deste tópico? 
      Meu Gesior 2012 tem o shop admin onde coloco oferta de vários itens, porém ele tem a opção de addons/outfits, se eu seleciono a oferta simplesmente não aparece no site. Queria organizar os outfits numa aba diferente das de itens (vendo os dolls que dão outfits completos), poderiam me ajudar a arrumar ou criar uma nova categoria?
       

       

      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
       <!-- /****************************************************************** * SYSTEMA DE ADMINISTRAÇÃO ONLINE DO WEBSHOP GESIOR 2012 BY DEZON * * TODOS OS DIREITOS, POR FAVOR, NÃO REMOVER ESSES CRÉDITOS * * FEITO EXCLUSIVAMENTE PARA O SITE WWW.TIBIAKING.COM * ******************************************************************/ --> <style type="text/css"> hr{border:0;border-bottom:1px solid #D4C0A1;padding:3px;} h1.admshop{margin:0;padding:0;} label.admshop{float:left;width:100px;} div.clear{clear:both;} p.border{border-bottom:1px solid #D4C0A1;padding:3px;} form input, form select, form button, form reset{padding:3px;} input.bt{padding:3px 20px;cursor:pointer;} .success{color:green;} .error{color:red;} .bt2{padding:5px 30px;cursor:pointer;} </style> <script type="text/javascript"> function _delete(id) { if( confirm('Confirma a exclusão do item selecionado?') ) { location.href='?subtopic=shopadmin&action=delete&id=' + id + ''; } return false; } </script> <?php /** * Systema By Dezon */ if(!defined('INITIALIZED')) exit; /* * Variável SQL */ $SQL = $GLOBALS['SQL']; /* * Funções */ function dropdown_offer_type($selected='item') { $return = null; if($selected == 'item') { $return = '<select name="offer_type"> <option value="item" selected="selected">Item</option> <option value="container">Container</option> <option value="mount">Mounts</option> <option value="addon">Addons</option> </select>'; } else if($selected == 'container') { $return = '<select name="offer_type"> <option value="item">Item</option> <option value="container" selected="selected">Container</option> <option value="mount">Mounts</option> <option value="addon">Addons</option> </select>'; } else if($selected == 'mount') { $return = '<select name="offer_type"> <option value="item">Item</option> <option value="container">Container</option> <option value="mount" selected="selected">Mounts</option> <option value="addon">Addons</option> </select>'; } else if($selected == 'addon') { $return = '<select name="offer_type"> <option value="item">Item</option> <option value="container">Container</option> <option value="mount">Mounts</option> <option value="addon" selected="selected">Addons</option> </select>'; } else { $return = '<select name="offer_type"> <option value="item" selected="selected">Item</option> <option value="container">Container</option> <option value="mount">Mounts</option> <option value="addon">Addons</option> </select>'; } return $return; } if($group_id_of_acc_logged >= $config['site']['access_admin_panel']) { #################### # ATUALIZAÇÃO 2015 # #################### $items_menu = '<p><a href="?subtopic=shopadmin">Shop admin</a> | <a href="?subtopic=shopadmin&action=new">Nova oferta</a> | <a href="?subtopic=shopadmin&action=list">Listar ofertas</a> | <a href="?subtopic=shopadmin&action=points">Adicionar pontos</a></p><hr />'; switch($action) { /******************************************************************************************/ // Essa ação, vai listar todos os registros do que está // sendo vendido no seu shopping (as ofertas) /******************************************************************************************/ case 'list': $ofertas = $SQL->query('SELECT * FROM '.$SQL->tableName('z_shop_offer').' ORDER BY id DESC;'); $result .= $items_menu; $result .= '<TABLE BGCOLOR="#D4C0A1" BORDER="0" CELLPADDING="4" CELLSPACING="1" WIDTH="100%">'; $result .= '<tr bgcolor="#505050"><td class="white"><strong>Items cadastrados no \'Shop Offer\'</strong></td><tr>'; $result .= '<TABLE BORDER="0" CELLPADDING="2" CELLSPACING="1" WIDTH="100%">'; $result .= '<TR BGCOLOR="#F1E0C6"><td><strong>ID</strong></td><td><strong>Nome da oferta</strong></td><td><strong>Imagem</strong></td><td><strong>Ações</strong></td></TR>'; while($data = $ofertas->fetch()) { $result .= '<tr BGCOLOR="#F1E0C6">'; $result .= '<td>'.$data['id'].'</td>'; $result .= '<td>'.$data['offer_name'].'</td>'; $result .= '<td align="center"><img src="./images/items/'.$data['itemid1'].$config['site']['item_images_extension'].'" /></td>'; $result .= '<td><a href="?subtopic=shopadmin&action=edit&id='.$data['id'].'">[editar]</a>&nbsp;<a href="javascript:void( _delete('.$data['id'].') );">[excluir]</a></td>'; $result .= '</tr>'; } $result .= '</table>'; $result .= '</table>'; $main_content .= $result; break; //lista as ofertas /******************************************************************************************/ // Essa ação é chamada quando abre a tela // de edição da oferta selecionada /******************************************************************************************/ case 'edit': $main_content .= $items_menu; $id = is_numeric($_GET['id']) ? $_GET['id'] : header('Location: ?subtopic=shopadmin'); // anti-inject simples by Dezon $dados = $SQL->query('SELECT * FROM '.$SQL->tableName('z_shop_offer').' WHERE id='.$id)->fetch(); /* if($dados['offer_type'] == 'item') { $dropdown = '<select name="offer_type"><option value="item" selected="selected">Item</option><option value="container">Container</option></select>'; } else if($dados['offer_type'] == 'container') { $dropdown = '<select name="offer_type"><option value="item">Item</option><option value="container" selected="selected">Container</option></select>'; } */ $dropdown = dropdown_offer_type($dados['offer_type']); $main_content .= <<<EOD <h1 class="admshop"><strong>Editar/Atualizar oferta</strong></h1> <form method="post" action="?subtopic=shopadmin&action=shop_edit"> <input type="hidden" name="id_offer" value="{$dados['id']}" /> <p class="border"><strong>Nome / Descrição da oferta</strong></p> <p><label class="admshop">Oferta: </label><input type="text" name="offer_name" size="50" maxlength="100" value="{$dados['offer_name']}" /></p> <p><label class="admshop">Descrição: </label><input type="text" name="offer_description" size="50" maxlength="1000" value="{$dados['offer_description']}" /></p> <p><label class="admshop">Qtde. pontos: </label><input type="text" name="points" size="5" maxlength="9" value="{$dados['points']}" /></p> <p class="border"><strong>Tipo da oferta</strong></p> <p><label class="admshop">Tipo: </label>{$dropdown}</p> <p class="border"><strong>Configuração de item normal, armor, shield, legs, etc</strong></p> <p><label class="admshop">ID Item 1: </label><input type="text" name="itemid1" size="10" value="{$dados['itemid1']}" /></p> <p><label class="admshop">Qtde. Item 1: </label><input type="text" name="count1" size="10" value="{$dados['count1']}" /></p> <p class="border"><strong>Configuração de item container, BP com Runas, BP com Small Stones, etc</strong></p> <p><label class="admshop">ID Item 2: </label><input type="text" name="itemid2" size="10" value="{$dados['itemid2']}" /></p> <p><label class="admshop">Qtde. Item 2: </label><input type="text" name="count2" size="10" value="{$dados['count2']}" /></p> <p class="border"><br /></p> <input type="submit" value="Salvar edição" class="bt" /> </form> <div class="clear"></div> EOD; #/\ Deixe assim !!! break; //edita a oferta selecionada /******************************************************************************************/ // Ação chamada quando você for salvar a edição da oferta /******************************************************************************************/ case 'shop_edit': $id = $_POST['id_offer']; $points = trim($_POST['points']); $itemid1 = trim($_POST['itemid1']); $count1 = trim($_POST['count1']); $itemid2 = trim($_POST['itemid2']); $count2 = trim($_POST['count2']); $offer_type = trim($_POST['offer_type']); $offer_description = trim($_POST['offer_description']); $offer_name = trim($_POST['offer_name']); if(empty($points) && empty($itemid1) && empty($offer_name)) { $main_content .= '<strong class="error">Você deve preencher pelo menos os pontos, id item 1 e o nome da oferta!</strong><p><hr /></p><a href="javascript:void(history.go(-1));">Voltar</a>'; } else { $sql_edit = sprintf( "UPDATE {$SQL->tableName('z_shop_offer')} SET points=%s, itemid1=%s, count1=%s, itemid2=%s, count2=%s, offer_type='%s', offer_description='%s', offer_name='%s' WHERE id=%s", $points, $itemid1, $count1, $itemid2, $count2, $offer_type, $offer_description, $offer_name, $id ); $SQL->query($sql_edit); $main_content .= '<strong class="success">Oferta editada com sucesso!</strong><br /><br /><a href="?subtopic=shopadmin&action=list">Voltar</a>'; } break; /******************************************************************************************/ // Essa ação só é chamada caso, você queira excluir uma oferta // confirmar a exclusão no prompt e, só assim então a sua // oferta será excluída do BD /******************************************************************************************/ case 'delete': $id = is_numeric($_GET['id']) ? $_GET['id'] : header('Location: ?subtopic=shopadmin'); $SQL->query('DELETE FROM '.$SQL->tableName('z_shop_offer').' WHERE id='.$id); header('Location: ?subtopic=shopadmin&action=list'); break; //exclui items /******************************************************************************************/ // Ação que é chamada quando você salva uma nova oferta /******************************************************************************************/ case 'shop_save': $points = trim($_POST['points']); $itemid1 = trim($_POST['itemid1']); $count1 = trim($_POST['count1']); $itemid2 = trim($_POST['itemid2']); $count2 = trim($_POST['count2']); $offer_type = trim($_POST['offer_type']); $offer_description = trim($_POST['offer_description']); $offer_name = trim($_POST['offer_name']); if(empty($points) && empty($itemid1) && empty($offer_name)) { $main_content .= '<strong class="error">Você deve preencher pelo menos os pontos, id item 1 e o nome da oferta!</strong><p><hr /></p><a href="javascript:void(history.go(-1))">Voltar</a>'; } else { $sql_save = sprintf( "INSERT INTO `z_shop_offer` (points,itemid1,count1,itemid2,count2,offer_type,offer_description,offer_name)VALUES('%s','%s','%s','%s','%s','%s','%s','%s')", (empty($points) ? 0 : $points), (empty($itemid1) ? 0 : $itemid1), (empty($count1) ? 0 : $count1), (empty($itemid2) ? 0 : $itemid2), (empty($count2) ? 0 : $count2), $offer_type, $offer_description, $offer_name ); $SQL->query($sql_save); $main_content .= '<strong class="success">Oferta salva com sucesso!</strong><br /><br /><a href="?subtopic=shopadmin">Voltar</a>'; } break; //salva a oferta no banco de dados /******************************************************************************************/ // Essa ação é chamada na tela de nova oferta, // é nela que o formulário de cadastro é // gerado e exibido na tela /******************************************************************************************/ case 'new': $main_content .= $items_menu; $dropdown = dropdown_offer_type(null); $main_content .= <<<EOD <h1 class="admshop"><strong>Cadastrar nova oferta</strong></h1> <form method="post" action="?subtopic=shopadmin&action=shop_save"> <p class="border"><strong>Nome / Descrição da oferta</strong></p> <p><label class="admshop">Oferta: </label><input type="text" name="offer_name" size="50" maxlength="100" /></p> <p><label class="admshop">Descrição: </label><input type="text" name="offer_description" size="50" maxlength="1000" /></p> <p><label class="admshop">Qtde. pontos: </label><input type="text" name="points" size="5" maxlength="9" /></p> <p class="border"><strong>Tipo da oferta</strong></p> <p><label class="admshop">Tipo: </label>{$dropdown} <p class="border"><strong>Configuração de item normal, armor, shield, legs, etc</strong></p> <p><label class="admshop">ID Item 1: </label><input type="text" name="itemid1" size="10" /></p> <p><label class="admshop">Qtde. Item 1: </label><input type="text" name="count1" size="10" /></p> <p class="border"><strong>Configuração de item container, BP com Runas, BP com Small Stones, etc</strong></p> <p><label class="admshop">ID Item 2: </label><input type="text" name="itemid2" size="10" /></p> <p><label class="admshop">Qtde. Item 2: </label><input type="text" name="count2" size="10" /></p> <p class="border"><br /></p> <input type="submit" value="Salvar" class="bt" /> </form> <div class="clear"></div> EOD; #/\ Deixe assim !!! break; //form de cadastro para nova oferta /******************************************************************************************/ // Ação responsável por abrir a tela de pontos /******************************************************************************************/ case 'points': $main_content .= $items_menu; $main_content .= <<<EOD <h1 class="admshop"><strong>Adicionar pontos à um Character <small><i>(Char)</i></small></strong></h1> <form method="post" action="?subtopic=shopadmin&action=points_add"> <p class="border"><strong>Entre com o nome do Char</strong></p> <p><label class="admshop">Character <small><i>(Char)</i></small>: </label><input type="text" name="char_name" size="30" maxlength="50" /></p> <p class="border"><strong>Entre a quantidade de pontos</strong></p> <p><label class="admshop">Qtde. pontos: </label><input type="text" name="char_points" size="5" maxlength="9" /></p> <p class="border"><br /></p> <input type="submit" value="Salvar" class="bt" /> </form> <div class="clear"></div> EOD; #/\ Deixe assim !!! break; case 'points_add': $player = stripslashes(ucwords(strtolower(trim($_POST['char_name'])))); $points = is_numeric($_POST['char_points']) ? $_POST['char_points'] : 0; if(strlen($player) > 0){ $data = $SQL->query("SELECT * FROM players WHERE name = ".$SQL->quote($player))->fetch(); if($data['account_id']){ $SQL->query("UPDATE `accounts` SET `premium_points` = `premium_points` + '".$points."' WHERE `id` = '".$data['account_id']."'"); $SQL->query("UPDATE `accounts` SET `backup_points` = `backup_points` + '".$points."' WHERE `id` = '".$data['account_id']."'"); $main_content .= '<strong class="success">Pontos adicionados com sucesso à: <i>'.$player.'</i>. Obrigado pelo apoio ao servidor!</strong><br /><br /><a href="?subtopic=shopadmin">Voltar</a>'; }else{ $main_content .= '<strong class="error">O character indicado não existe.</strong><br /><br /><a href="?subtopic=shopadmin&action=points">Voltar</a>'; } }else{ $main_content .= '<strong class="error">Preencha o nome do Character.</strong><br /><br /><a href="?subtopic=shopadmin&action=points">Voltar</a>'; } break; /******************************************************************************************/ // Por padrão, essa ação é chamada e exibe somente // os botões para cada ação do sistema /******************************************************************************************/ default: $main_content .= <<<EOD <h1 class="admshop" align="center"><strong>Bem vindo ao Administrador do Shop!</strong></h1> <hr /> <center> <button type="button" class="bt2" onclick="location.href='?subtopic=shopadmin&action=new'">Nova oferta</button> <button type="button" class="bt2" onclick="location.href='?subtopic=shopadmin&action=list'">Listar ofertas</button> <button type="button" class="bt2" onclick="location.href='?subtopic=shopadmin&action=points'">Adicionar pontos</button> <p>&nbsp;</p> <small><i>Sistema desenvolvido por Dezon para o TibiaKing.com<br />© 2015</i></small> </center> EOD; #/\ Deixe assim !!! break; } //Fim do sistema } else { // Caso o usuário tente usar o administrador e esse, // não tiver acesso, será exibido na tela essa mensagem: $main_content .= 'Sorry, you have not the rights to access this page.'; } /****************************************************************** * SYSTEMA DE ADMINISTRAÇÃO ONLINE DO WEBSHOP GESIOR 2012 BY DEZON * * TODOS OS DIREITOS, POR FAVOR, NÃO REMOVER ESSES CRÉDITOS * * FEITO EXCLUSIVAMENTE PARA O SITE WWW.TIBIAKING.COM * ******************************************************************/  
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • By kronos789
      .Qual servidor ou website você utiliza como base? 
      Pokedash website 10.98
      Qual o motivo deste tópico? 
      ajudar trocar ou remover imagem do site logo principal
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       

      esses sao os arquivos do site,ignorem o wordpress
       
      Estou usando o site do pokedash base 10.98 
       
       

      essa imagem pkd que quero remover
       
    • By Gustavo0098
      Estou com um problema no meu servidor, quando morre fica morrendo infinitas vezes quando tenta logar. Se alguem poder ajudar, agradeço!! está dando o seguinte erro na distro: 
      mysql_real_query(): UPDATE `player_skills` SET `value` = 185, `count` = 2028732713576770 WHERE `player_id` = 39 AND `skillid` = 4 LIMIT 1; - MYSQL ERROR: Out of range value for column 'count' at row 1 (1264)
    • By BrunoWots
      Olá comunidade, eu gostaria de saber o porquê do bug no gesior, por exemplo eu faço  o login no site e quando eu clico nas abas caracter ou shop ou my account do canto direito o site atualiza e pede para fazer o login novamente, a versão do geisor é 0.4 a mesma versão da distro e proria do servidor, sei que é antiga mas como eu disse já é própria... Eu eu já tentei de tudo, testei todas as versões do xampp compatível do 1.6.5 ao 1.8.0 e inclusive os xampp atuais e o bug persiste, eu estou usando vps e os players não conseguem fazer donate por conta disso, eu já testei tanto meu PC também e o bug continua fazendo a acc desligar instantaneamente, com muitos testes eu apenas descobri que o IP que eu instalo o site fica um tempo sem o bug e eu posso usar a store normal por exemplo localhost ou 127.0.0.1 ficam sem o bug mas o quando acesso pelo site do IP daí o bug acontece, se eu instalo o site usando o IP do vps o bug some somente na vps dai quando eu tento fazer o login pelo celular ou PC o bug também acontece... Mas daí passa um tempo o bug de deslogar acontece no IP que instalou o site também, eu queria saber se tem como tirar o auto logout do site ou onde posso resolver esse bug?
    • By XxDarkeeSupremexX
      Ola a Todos pesso ajuda de voces para arrumar esse não manjo nisso que puder me ajudar agradeço muito


       
×
×
  • Create New...

Important Information

Confirmação de Termo