[Pedido Script]Mandar e-mail pelo GMS

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

[Pedido Script]Mandar e-mail pelo GMS

Mensagem por Rodrigo Santiago em Seg 18 Ago 2014, 11:24

Eu achei esse assunto muito controverso.

Estou criando um pequeno jogo online, e dentro do programa preciso mandar um email para confirmação.

Mas ... não consigo sem dll ... na verdade existe uma dll mas eu não quero usar dll no game maker studio.

Anteriormente tinha um modo de enviar usando VB , mas o game maker não executa mais isso, pelo que sei.

Porém eu sei que isso também pode ser usado para envio massivo de emails  Exclamation , por isso não tem muita ajuda diretamente no game maker studio.

Tem alguma forma de fazer isso sem violar nenhuma lei ou dar margem pra isso?

Rodrigo Santiago

Ranking : Nota B
Número de Mensagens : 1281
Idade : 20
Data de inscrição : 28/07/2012
Notas recebidas : C + C + B
Reputação : 73
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 1
   : 3

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Isaque Onix em Seg 18 Ago 2014, 13:19

php é a resposta que voce procura!
existem muitos sistemas e scripts online gratis...

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Rodrigo Santiago em Seg 18 Ago 2014, 18:44

Mas como vou usar isso no game maker?

Rodrigo Santiago

Ranking : Nota B
Número de Mensagens : 1281
Idade : 20
Data de inscrição : 28/07/2012
Notas recebidas : C + C + B
Reputação : 73
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 1
   : 3

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por ChicoGamer em Seg 18 Ago 2014, 19:32

O certo,se tratando de um jogo online,seria o uso de um banco de dados (Eu gosto do SQL)  e do C#,por questões de segurança,facilidade,eficiência, etc .Seu eu fosse fazer um jogo online,o sistema de login e tudo relacionado seria feito assim...Mas enfim, como prevejo que não saiba C#,  eu diria que a resposta é o Wufoo! Eu já usei essa ferramenta para envios de e-mail com base no formulário,não sei se servirá para você,não tenho grandes habilidades nela,a conta gratuita é um pouco restrita,mas para pequenos volumes,tudo sendo feito manualmente eu acho que "quebra o galho".

http://www.baixaki.com.br/download/wufoo.htm

ChicoGamer

Número de Mensagens : 23
Data de inscrição : 07/07/2014
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Rodrigo Santiago em Seg 18 Ago 2014, 21:30

Vamos dizer que ... (vou tentar ser franco e razoável)

Eu já sou acostumado a programar a muitos anos, aprendi dos melhores métodos para criar jogos onlines mas eu estava querendo usar a linguagem do gamemaker par enviar um email... não adianta usar programas externos . Eu tenho que usar gml ou uma dll.

O gamemaker studio não usa mais a função de programas externos, se funcionasse eu usava VB .

ok

Rodrigo Santiago

Ranking : Nota B
Número de Mensagens : 1281
Idade : 20
Data de inscrição : 28/07/2012
Notas recebidas : C + C + B
Reputação : 73
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 1
   : 3

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por ChicoGamer em Ter 19 Ago 2014, 22:22

Entendi...
Sem o uso de arquivos externos não tenho a mínima idéia,se pelo menos pudesse usar as TAG's do HTML 5 do gml kkk O jeito é a dll msm...

Vamos dizer que ... (vou tentar ser franco e razoável)

Parece que te ofendi de alguma forma,me desculpe se ocorreu,algo pode ter soado mal pra você,mas enfim,não foi a minha intenção.

ChicoGamer

Número de Mensagens : 23
Data de inscrição : 07/07/2014
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Gabreel em Qua 20 Ago 2014, 00:08

Bom, um usuário há algum tempo me perguntou como fazer isso.
Eu estou esse tempo afastado do fórum pois ando estudando várias linguagens diferentes para mim, então acho que posso te ajudar.

Primeiramente não é possível fazer isso só com o GML. Você será obrigado à usar um programa externo (ou ao menos, uma página).

Eu conheço dois métodos de fazer isso, talvez os colegas conheçam mais, ou melhorem a minha ideia.

1 - Usar o PHP (ou ASP) + a função do GML $http_post_string() ou $http_get_string() (recomendando totalmente a primeira função). O que você precisaria fazer? Basicamente ter um script PHP em mãos para enviar e-mails, e ter uma hospedagem (gratuita) que aceite esse tipo de prática. A segunda parte demanda um pouco mais de conhecimento. Get e post são dois dos principais métodos de comunicação HTTP. A grande diferença entre as duas é que uma é quase anônima (post) e outra não (get), mas ambas passam informações de mesma forma. Quando você acessa uma url do tipo: http://url.com.br/index.php?a=Gabreel , a parte "a=Gabreel" está sendo passada pelo método GET. Da mesma forma quando você se registra em um site, quando você clica em registrar o programador, ao enviar o formulário tem a opção de enviar os dados pelo método GET ou POST. Obviamente eles escolhem o método POST, por estarem camuflados no código e não aparecerem na barra de endereços. Isso é de você pesquisar e aprender como fazer.

2 - Use o CMD. Não vou passar o código aqui, por questões que você mesmo já exaltou, qualquer pesquisinha meia boca no Google já acha. Se você usar o comando execute_program() com os argumentos certos você consegue, ou ainda criando um .bat (não recomendado). Nos dois casos desse tópico seria possível ver esse envio e no caso do .bat, o arquivo poderia ser alterado de forma maliciosa. Já vi que o GMS tá regredindo tirando funções essenciais. Smile

Espero ter ajudado! Smile

Gabreel

Número de Mensagens : 2227
Idade : 20
Data de inscrição : 02/10/2009
Reputação : 52
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Isaque Onix em Qua 20 Ago 2014, 00:30

bom, sem arquivos externos eu nao sei, mais com eles, ai e outra historia...

1: crie um arquivo enviar.php
2: esse e o codigo do enviar.php:
Código:
<?php

/**
 * @author Ahmet YUCEL
 * @copyright 2014
 */
$nome    = $_GET['nome'];
$email    = $_GET['email'];
$mensagem = $_GET['mensagem'];
$corpo  = "Nome: ".$nome."\n";
$corpo .= "Email: ".$email."\n";
$corpo .= "Mensagem: ".$mensagem."\n";
if(mail("EMAIL RECEBEDOR AQUI","ASSUNTO AQUI",$corpo)){
  echo("email enviado com sucesso");
} else {
  echo("Erro ao enviar e-mail");
}
echo($corpo)
?>

no game maker
Código:
http_get('SEUSITE.com.br/enviar.php?nome='+string(variavel_com_nome)+'&email='+string(variavel_com_email)+'&mensagem='+string(variavel_com_mensagem))

aonde esta "EMAIL RECEBEDOR AQUI", seria seu email, ou, a caixa de entrada pra qual o email sera enviado.
aonde esta "ASSUNTO AQUI", sera o assunto da mensagem.
aonde esta variavel_com_nome,variavel_com_email e variavel_com_mensagem, acho que nao preciso explicar ne!

desculpa a falta de pontuaçao, nao de proposito!
e desculpa a demora...
(so costuma a funcionar em servidores php online! nao funcionou com o easy php)

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Gabreel em Qua 20 Ago 2014, 01:01

Isaque, eu acabei de dar praticamente uma aula sobre o uso do GET e do POST e você usa o GET? Também achei alguns erros no seu código. Até por futura referência vou deixar aqui, talvez esteja cometendo um erro comigo mesmo ao fazer isso.

Código:

<?php
$nome    = $_POST['nome'];
$email    = $_POST['email'];

//Configs
$y_email = "Seu e-mail";
$mensagem = "Mensagem do e-mail. Ex: Olá ". $nome .", você jogou meu jogo, obrigado! ";
$assunto = "Assunto do e-mail";

$corpo  = "Nome: ".$nome."\n
Mensagem: ".$mensagem."\n";

if(mail($email,$assunto,$corpo, "From: $y_email")){
     echo("Enviado com sucesso!");
}else{
     echo("Ocorreu algum erro e o e-mail não foi enviado!");
}
?>
Você hospeda esse arquivo em algum site com suporte ao PHP e ao mail() e então, no GMS:

Código:

nome = url_encode(string(global.nome));
email = url_encode(string(global.email)); //Não vou explicar o que o encode faz nesse caso, mas na minha cabeça, isso aqui vai ser descodificado quando passa pelo POST, se não a mensagem não vai chegar por completo
http_post_string("http://seusite.com.br/site.php", "nome="+ nome +"&email="+email);

Taí, provavelmente o mais seguro método que você pode fazer com o GML para enviar dados. Talvez não funcione pois não testei. ;P


Última edição por Gabreel em Qua 20 Ago 2014, 10:28, editado 2 vez(es)

Gabreel

Número de Mensagens : 2227
Idade : 20
Data de inscrição : 02/10/2009
Reputação : 52
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Isaque Onix em Qua 20 Ago 2014, 01:50

se isso e um erro eu nao sei, mais funciona comigo perfeitamente!!!


a proposito, quando eu testei com $_POST deu erro e as mensagens nao chegaram por completo, logo, mudei para $_GET.
nao sou profissional em php, sou um completo iniciante. mais eu ja tinha esse sistema no meu servidor a algum tempo...!

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Rodrigo Santiago em Qua 20 Ago 2014, 07:13

Valew pessoal. Vou tentar os dois , apesar de que achei melhor esse negocio de encode...aprece menos inseguro.

ChicoGamer -> eu não fiquei ofendido, na verdade eu tava com medo de falar alguma coisa errada, eu sempre falo besteira clown .

[edit]
url_encode não é uma função do meu gms ! é 1.4 não tem um script ai q falto não?

Rodrigo Santiago

Ranking : Nota B
Número de Mensagens : 1281
Idade : 20
Data de inscrição : 28/07/2012
Notas recebidas : C + C + B
Reputação : 73
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 1
   : 3

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Gabreel em Qua 20 Ago 2014, 10:15

Isaque Onix escreveu:se isso e um erro eu nao sei, mais funciona comigo perfeitamente!!!


a proposito, quando eu testei com $_POST deu erro e as mensagens nao chegaram por completo, logo, mudei para $_GET.
nao sou profissional em php, sou um completo iniciante. mais eu ja tinha esse sistema no meu servidor a algum tempo...!

Tinha um erro. Você trocou o remetente com o seu e-mail. E não é por funcionar que é o melhor caso. E só não chegou por completo por falta do url_encode() Smile

@Rodrigo, sorry, tinha jogado ela dentro de uma lib e não percebi. kk

Código:
{
    /**
    url_encode(str): Encode the string <str> in x-www-form-urlencoded format.
    */
    var s, hex_digits, special_chars;
    s = "";
    hex_digits = "0123456789ABCDEF";
    special_chars = "$&+,/:;=?@ " + '"' + "'<>#%{}|\^~[]`!";
    
    //Main loop
    var i, l, c, o, escapes, escape_bytes;
    l = string_length(argument0);
    for (i=1; i<=l; i+=1) {
        c = string_char_at(argument0, i);
        o = ord(c);
        escapes = 0;
        //Single-byte characters
        if (o <= $7F) {
            if (string_pos(c, special_chars) != 0) || (o < 32) {
                escapes = 1;
                escape_bytes[0] = o;
            }
        }
        //2-byte characters
        else if (o <= $7FF) {
            escapes = 2;
            escape_bytes[0] = (o>>6)+192;
            escape_bytes[1] = (o&63)+128;
        }
        //3-byte characters
        else if (o <= $FFFF) {
            escapes = 3;
            escape_bytes[0] = (o>>12)+224;
            escape_bytes[1] = ((o>>6)&63)+128;
            escape_bytes[2] = (o&63)+128;
        }
        //Too long
        else {
            show_error("Invalid character.", true);
        }
        //Dump in escape characters, if any
        if (escapes == 0) {
            s += c;
        }
        else {
            var j;
            for (j=0; j<escapes; j+=1) {
                s += "%" + string_char_at(hex_digits, (escape_bytes[j]>>4)+1) + string_char_at(hex_digits, (escape_bytes[j]&15)+1);
            }
        }
    }
    
    //Done
    return s;
}

Gabreel

Número de Mensagens : 2227
Idade : 20
Data de inscrição : 02/10/2009
Reputação : 52
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Rodrigo Santiago em Qua 20 Ago 2014, 13:08

Deu certo valeu kara !!!

Mas eu achei isso bem perigoso. Eu poderia fingir ser qualquer pessoa, mandar infinitos emails... mas eu acho que o lugar onde se hospeda o *.php já deve ter alguma proteção contra isso.

Agora ó fazer meus testes, e aprontar o jogo que vai sair daqui a algum tempo, nada longo.
É porque eu nunca vi um jogo realmente online aki na gmbr, se tem deve ser só 1 ou 2 bem antigos.

Não pensem que vou esquecer dos créditos Smile

Rodrigo Santiago

Ranking : Nota B
Número de Mensagens : 1281
Idade : 20
Data de inscrição : 28/07/2012
Notas recebidas : C + C + B
Reputação : 73
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 1
   : 3

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Gabreel em Qua 20 Ago 2014, 15:40

Poder, até poderia (inclusive por isso esse assunto é proibido na GMC), mas convenhamos, a pessoa não precisa fazer tudo isso pra enviar spam, tem métodos mais fáceis, por isso decidi compartilhar e não censurar. Smile

Gabreel

Número de Mensagens : 2227
Idade : 20
Data de inscrição : 02/10/2009
Reputação : 52
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Pedido Script]Mandar e-mail pelo GMS

Mensagem por Conteúdo patrocinado Hoje à(s) 10:28


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum