![]() |
[Pedido] Sistema de recuperação de senha e envio de email automático - Versão de Impressão +- Portal SAMP (https://portalsamp.com) +-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5) +--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6) +--- Tópico: [Pedido] Sistema de recuperação de senha e envio de email automático (/showthread.php?tid=3523) |
Sistema de recuperação de senha e envio de email automático - Slach - 15/04/2023 Olá a todos os membros! Estou desenvolvendo a muito tempo uma GM do 0 que está ficando gigante, está bem feito e organizado. Sempre sanei várias dúvidas referente a códigos e desenvolvimeto no portal samp, por isso só tenho a agradecer o mesmo, mas eu nunca pensei que algum dia eu pudesse criar um tópico aqui, pois bem esse dia chegou! Venho aqui pedir a ajuda de todos, porque não estou coseguindo de jeito nenhum e nem sei por onde começar com um sistema de enviar E-Mail automático ao jogador. Por exemplo: Quando ele quiser redefinir a senha, será enviado um E-Mail automático pelo sistema. Eu já pesquisei em todos os foruns, inclusive em outras linguas. Tem alguns tópicos aqui no portal samp mesmo, mas estão desatualizados, que usam o próprio Gmail do google e o google desativou a função em 2022, com isso, não sendo possível mais usar. Eu já entendi que devo deixar o mailer.php online, usar o mailer.inc e dentro do GM usar a função SendMail para enviar o E-Mail, porém não sei por onde começar. Eu não sei onde eu encontro o mailer.php que funcione e nem ao menos onde eu posso hospeda-lo, no caso em todos os tutoriais que vi, só mostraram os arquivos que devem ser usados, porém nenhum mostrava o passo a passo, desde baixar os arquivos até configura-los corretamente. EU RELMENTE necessito da ajuda de todos, quem puder me ajudar, vou agradecer de coração mesmo! Estou quase no fim do meu projeto e uma das unicas coisas que ainda faltam é um sistema que envie E-Mail automático aos jogadores, de resto, não tenho mais nenhuma dúvida, são 7 anos desenvolvendo esse GM, claro, não foram 7 anos interruptos mas é um tempo considerável. Se enviar algum tutorial desatualizado, peço que se puder me explicar o passo a passo do tutorial, me mostrar uma direção clara, ficarei grato! Desde já muito obrigado a todos pela atenção! Ficarei aguardando uma resposta. RE: Sistema de recuperação de senha e envio de email automático - Dr Editor - 16/04/2023 https://portalsamp.com/showthread.php?tid=676 Nesse link você encontra referência para utilização do serviço de e-mail de um domínio que possui esta funcionalidade habilitada. Caso não, é necessário aprender a utilizar PHPMailer e configurar uma conta através do gmail, outlook... @EDIT Esqueci que havia criado um sistema de token com PHPMailer. Não é pra recuepração de senha, mas pode utilizar esta base pra fazer algo relacionado: https://github.com/eduardocoracini/Login-com-Validacao-via-Email RE: Sistema de recuperação de senha e envio de email automático - Slach - 06/05/2023 (16/04/2023 19:09)@EDIT Escreveu: Esqueci que havia criado um sistema de token com PHPMailer. Não é pra recuepração de senha, mas pode utilizar esta base pra fazer algo relacionado: Achei bem interessante esse @EDIT com esse link que você disponibilizou, parece ser bem simples de usar. Porem não manjo nada de PHP, você não conseguiria me auxiliar na instalação desse sistema PHPMailer? Um passo á passo ou se você tiver algum video que explique a instalação corretamente ( Em um servidor SA:MP obviamente ). Realmente estou pedindo a sua ajuda desesperadamente, pois só falta esse sistema para o meu servidor ficar totalmente completo. Se puder me ajudar, ficarei extremamente grato pela sua ajuda meu amigo ou de alguém que possa me auxiliar nessa questão! RE: Sistema de recuperação de senha e envio de email automático - Dr Editor - 09/05/2023 Perdão pela demora. Estou fora do SA:MP, mas como é algo relativamente simples e não preciso jogar para testar vou te fazer o meio de campo e se tiver alguma dúvida pode ir perguntando que eu ou outro membro vai ajudar. Vou anexar os arquivos do PHPMailer para fazer funcionar este sistema e abaixo vou colocar o script pawn e o PHP. O sistema funciona, PORÉM, não está pronto para uso. Deve adicionar onde salvar o token e onde carregar para fazer a verificação ingame, bem como como o jogador deve fazer para digitar o token. Este código é apenas o pontapé inicial para fazer esse sistema, mas a parte que você possui dificuldade está pronta. Pawn: (feito em forma de gamemode, mas você vai precisar apenas da função EnviarTokenRecuperacao e a definição PHP_URL) Código: #include <a_samp> PHP: (Altere o e-mail e senha do outlook ou outro serviço de e-mail) Código PHP: <?php PHPMailer: em anexo Como fazer:
Espero ter ajudado! RE: Sistema de recuperação de senha e envio de email automático - Slach - 12/05/2023 (09/05/2023 11:20)Dr Editor Escreveu: Perdão pela demora. Mano, eu só tenho a te agradecer pela sua ajuda! Você sinceramente salvou o meu projeto, era o único sistema que faltava para o meu projeto ficar completo, mas como não manjo nada de PHP e essas outras coisas, encontrei muita dificuldade em desenvolver algo! Assisti muitos videos, até russos e americanos e nada, mas com o seu breve tutorial e a disponibilização do seu script para estudo eu FINALMENTE consegui! Muito obrigado mesmo! Eu só tenho mais algumas duvidas bobas agora. Que não atrapalha em nada no projeto, mas com toda certeza deixaria mais profissional, bom vamos lá: 1° - Perg.: Como eu faço para colocar acentos na mensagem que será enviada pelo URL, não consegui resolver esse pequeno problema, vou dar um exemplo. format(MsgEmail,sizeof(MsgEmail),"Olá+<b>%s</b>,<br>Seja+muito+Bem+Vindo(a)+ao+servidor<br><br>", NomeInserido[playerid]); format(url, sizeof url, PHP_URL, EmailInserido[playerid], AssuntoE, MsgEmail); NO EMAIL A MENSAGEM CHEGARÁ ASSIM: "Ol[font=Graphik, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif]� [Fulano], Seja muito Bem Vindo(a) ao servidor..." Com esse simbolo ( [font=Graphik, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif]� )[/font] que não reconheceu o acento ( á ). Se eu enviar o URL direto pela internet, ele reconhece normal os acentos e simbolos, agora se for enviado pelo sistema do servidor, ai acontece isso! Teria como resolver isso direto pelo código ou algo do tipo? Se for enviado pelo sistema do servidor, não reconhece simbolos também. 2° - Perg.: Os emails que serão enviados diariamente por esse sistema PHPMailer são ilimitados, né? Ou existe algum limite diário? - Mais uma vez, meus sinceros agradecimentos! Desde já obrigado pela atenção![/font] RE: Sistema de recuperação de senha e envio de email automático - Dr Editor - 12/05/2023 (12/05/2023 16:07)Slach Escreveu: Mano, eu só tenho a te agradecer pela sua ajuda! Você sinceramente salvou o meu projeto, era o único sistema que faltava para o meu projeto ficar completo, mas como não manjo nada de PHP e essas outras coisas, encontrei muita dificuldade em desenvolver algo! Assisti muitos videos, até russos e americanos e nada, mas com o seu breve tutorial e a disponibilização do seu script para estudo eu FINALMENTE consegui! Muito obrigado mesmo! Os acentos podem ser em função da codificação do seu arquivo pawn compilado. Se você usar UTF-8, mesma codificação do arquivo PHP deveria dar certo. Se estiver usando alguma ocidental mude também no arquivo PHP: Código PHP: $mail->CharSet = "Windows-1252"; @EDIT Sobre limitação: PHPMailer não é serviço de e-mail. O que pode limitar é o serviço você configurou nele e também a quantidade de requisições no servidor pode afetar a velocidade de resposta, mas estamos falando de muitas requisições constantes em pouco intervalo de tempo, como um ataque. Fico feliz por ter ajudado. Abraço! RE: Sistema de recuperação de senha e envio de email automático - Slach - 13/05/2023 (12/05/2023 17:43)Dr Editor Escreveu:(12/05/2023 16:07)Slach Escreveu: Mano, eu só tenho a te agradecer pela sua ajuda! Você sinceramente salvou o meu projeto, era o único sistema que faltava para o meu projeto ficar completo, mas como não manjo nada de PHP e essas outras coisas, encontrei muita dificuldade em desenvolver algo! Assisti muitos videos, até russos e americanos e nada, mas com o seu breve tutorial e a disponibilização do seu script para estudo eu FINALMENTE consegui! Muito obrigado mesmo! O arquivo que você me mandou "send-mail.php", que eu estudei e dei um modificada. O código está assim: <?php if(empty($_GET["Email"]) || empty($_GET["Assunto"]) || empty($_GET["Msg"])) die(0); $Email = $_GET["Email"]; $Assunto = $_GET["Assunto"]; $Msg = $_GET["Msg"]; require "PHPMailer/PHPMailer.php"; require "PHPMailer/SMTP.php"; require "PHPMailer/Exception.php"; $mail = new \PHPMailer\PHPMailer\PHPMailer(); $mail->isSMTP(); $mail->Host = "smtp.office365.com"; $mail->SMTPAuth = true; $mail->SMTPSecure = \PHPMailer\PHPMailer\PHPMailer::ENCRYPTION_STARTTLS; $mail->setLanguage("pt"); $mail->CharSet = PHPMailer\PHPMailer\PHPMailer::CHARSET_UTF8; $mail->Username = "E-Mail que enviará os emails"; $mail->Password = "Senha do E-Mail"; $mail->Port = 587; $mail->setFrom("E-Mail que enviará os emails"); $mail->addAddress($Email); $mail->isHTML(true); $mail->Subject = "{$Assunto}"; $mail->Body = "{$Msg}"; if(!$mail->send()) echo 0; else echo 1; Como você pode ver, o CharSet está dessa forma: "$mail->CharSet = PHPMailer\PHPMailer\PHPMailer::CHARSET_UTF8;" 1° Perg.: Como eu faço para saber a codificação do meu "arquivo pawn compilado" que você citou acima? 2° Perg.: E quando eu achar, se for diferente a codificação no "arquivo pawn compilado", no "$mail->CharSet" eu mantenho esses "PHPMailer\PHPMailer\PHPMailer:"? Ficaria tipo: $mail->CharSet = PHPMailer\PHPMailer\PHPMailer::Windows-1252; 3° Perg.: Ultima pergunta, meu amigo. No código que mandei logo acima, mais especificamente no "$mail->Subject =" e "$mail->Body =", é correto eu deixar o "$Assunto" e "$Msg" daquela forma? Tipo, dentro de Aspas ( " " ) e dentro de Colchetes ( { } ). - Tomara que seja meu último tópico e eu consiga sanar minhas dúvidas, já estou te chateando eu acho. Kkk RE: Sistema de recuperação de senha e envio de email automático - Dr Editor - 15/05/2023 (13/05/2023 14:51)Slach Escreveu: O arquivo que você me mandou "send-mail.php", que eu estudei e dei um modificada. O código está assim: 1 - Provavelmente com o IDE nativo não seja possível. Para isso terá que usar um IDE mais "profissional" para definir a codificação ou usar algum outro programa que realize isso sem precisar configurar o compilador. 2 - Pode substituir essa linha conforme o que respondi anteriormente: Código PHP: $mail->CharSet = "Windows-1252"; 3 - Não há necessidades de chaves nesta situação. Pode remover. |