Jump to content
rnpin

Resposta automática de quiz por e-mail

Recommended Posts

Olá!

Eu tenho um quiz já criado em web e quando as pessoas o respondem, a resposta chega no meu e-mail.
É um total de 12 questões múltipla escolha, e para cada resposta que a pessoa der, existe uma avaliação diferente que preciso enviar. Exemplo: Questão 1 - resposta a = avaliação x; reposta b = avaliação y; resposta c = avaliação z etc.
Eu precisava de um jeito pra automatizar o envio dessas avaliações para as pessoas, onde a avaliação correspondente ao que ela respondeu nas doze quetões fosse enviada junto por e-mail pra ela, seja num HTML, num PDF, Word... 

Alguém sabe se isso possível? Desse modo que preciso ou de algum outro?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By geoleandro
      O botão voltar funciona, mas ele adiciona uma questão na variável "numQ".
      Onde está o erro no código abaixo:
      <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <style> .imgbox { float: left; text-align: center; width: 150px; border: 1px solid #ddd; margin: 4px; padding: 5px; } #mylabel { text-align: left; } </style> <body onload="loadquestion()"> <p id="numQ"> <p id="mylabel" name="questao">Questões</p><br> <div class="imgbox" id="imgbox1"><br> <input type="image" src=" " width =auto height= 80px id="btn0" value="option0" name="opt0" onclick="checkans(1)"><br><br> </div> <div class="imgbox" id="imgbox2"><br> <input type="image" src=" " width =auto height= 80px id="btn1" value="option1" name="opt1" onclick="checkans(2)"><br><br> </div> <br><br><br><br><br><br><br><br><br> <div class="imgbox" id="imgbox3"><br> <input type="image" src=" " width =auto height= 80px id="btn2" value="option2" name="opt2" onclick="checkans(3)"><br><br> </div> <div class="imgbox" id="imgbox4"><br> <input type="image" src=" " width =auto height= 80px id="btn3" value="option3" name="opt3" onclick="checkans(4)"><br><br> </div> <br><br><br><br><br><br> <br><br><br><br> <input type="button" id="next" value="Próximo" name="nxtbtn" onclick="changequestion()"><br><br> <input type="button" id="back" value="voltar" name="bkbtn" onclick="backQ()"><br><br> <p id="erro"> <p id="pontos"> <p id="questAtual"> <script type="text/javascript"> i=0; var pontos = 0; var numQ = 1; myqs=[["Clique na foto 3 ?","img3.gif", "img2.gif","img1.gif","img1a.gif","3"], ["Clique na foto 2 ?","icone.png","icone2.png","certo.png","certo.png","2"], ["Clique na foto 4","icone.png","errado.png","certo.png","certo.png","4"] ]; function loadquestion() { document.getElementById("mylabel").innerHTML= myqs[i][0]; document.getElementById("btn0").src= myqs[i][1]; document.getElementById("btn1").src= myqs[i][2]; document.getElementById("btn2").src= myqs[i][3]; document.getElementById("btn3").src= myqs[i][4]; document.getElementById ("numQ").innerHTML = "Questão " + numQ + " de " + myqs.length; document.getElementById("next").value = "Próximo"; document.getElementById("next").style.backgroundColor = "lightgray"; numQ++; document.getElementById("imgbox1").style.backgroundColor = "white"; document.getElementById("imgbox2").style.backgroundColor = "white"; document.getElementById("imgbox3").style.backgroundColor = "white"; document.getElementById("imgbox4").style.backgroundColor = "white"; document.getElementById("erro").innerHTML = ""; document.getElementById("erro").style.color = ""; } function changequestion(){ i=i+1; loadquestion(); } function backQ(){ loadquestion(); i=i-1 } function checkans(a){ respostas =parseInt(myqs[i][5]); if(respostas==a && respostas==3){ pontos++; document.getElementById ("pontos").innerHTML = "Você acertou " + pontos ; document.getElementById("imgbox3").style.backgroundColor = "#99ff99"; } else if(respostas==a && respostas==2){ pontos++; document.getElementById ("pontos").innerHTML = "Você acertou " + pontos ; document.getElementById("imgbox2").style.backgroundColor = "#99ff99"; } else if(respostas==a && respostas==4){ pontos++; document.getElementById ("pontos").innerHTML = "Você acertou " + pontos ; document.getElementById("imgbox4").style.backgroundColor = "#99ff99"; } else { document.getElementById("erro").innerHTML = "Incorreta"; document.getElementById("erro").style.color = "red"; } } </script> </head> </body> </html>  
    • By Marcelbs
      Olá pessoal, td bem?
      Gostaria de saber se alguém faz idéia por que tem hora que o e-mail enviado via formulário chega e hora não chega. No Gmail e no Bol está tudo funcionando, porém é no e-mail Locaweb é que está acontecendo a confusão. Percebi que quando põe acento no campo do assunto, em um dos meus e-mails Locaweb, o e-mail vai pra spam. Em outro e-mail Locaweb simplesmente não chega em lugar nenhum. Todavia em todos os casos o formulário me avisa que foi enviado corretamente.
       
      Vou postar os códigos que programei:
       
      função javascript que valida o formulário:
      function validacaoContato(){ /* console.log('valida formulario'); */ $("#formulario").validate({ rules:{ nome: {required: true}, email: {required: true, email: true}, assunto: {required: true}, mensagem:{required: true} }, messages:{ nome: {required: "Favor informar o seu nome"}, email: {required: "Favor informar o seu e-mail", email:"favor preencher um e-mail válido"}, assunto: {required: "Favor preencher com um assunto"}, mensagem:{required: "Favor preencher com uma mensagem"}, }, errorElement:"div", wrapper:"div", errorPlacement: function(error, element) { error.appendTo(element.closest('div')); error.css({ "color":"red", "font-size":"14px", "position":"absolute", "top":element.closest("div").find(".contato_form_field").height()+50+"px", "text-align":"right" }); }, submitHandler: function(form) { var variaveis = $(form).serialize(); $.ajax({ url: "php/js_php/envia_email.php", type: "POST", data: variaveis+'&destinatario='+representante_email, dataType:"json", success: function(resposta_do_arquivo_php){ if (resposta_do_arquivo_php.sucesso == 1) { $("#formulario").prepend('<div id="form_sobrepoe" style="position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;background:none;"></div>'); $(".resposta").html(""); $(".resposta").html("e-mail enviado com sucesso").appendTo("#form_sobrepoe").css({'color':'green','margin':'5px 0 10px 0','display':'block','position':'absolute','bottom':'0px'}); $("#nome").val(""); $("#email").val(""); $("#assunto").val(""); $("#mensagem").val(""); } else { $(".resposta").html(""); $(".resposta").html("ops, ocorreu um erro, tente novamente mais tarde").css({'color':'red','margin':'5px 0 10px 0','display':'block'}); $("#nome").val(""); $("#email").val(""); $("#assunto").val(""); $("#mensagem").val(""); } }, error: function(a,b,c){ /* console.log(a,b,c); */ $(".resposta").html(""); $(".resposta").html("Ops, ocorreu um erro, tente novamente mais tarde").css({'color':'red','margin':'5px 0 10px 0','display':'block'}); } }); } }) } arquivo php que recebe as variáveis:
      <?php require_once "../classes/EnviaEmail.class.php"; $nome = $_POST['nome']; $email = $_POST['email']; $assunto = $_POST['assunto']; $mensagem = $_POST['mensagem']; $destinatario = $_POST['destinatario']; $texto = '<html> <head> </head> <body> contato: <br/><br/> De: '.$nome.' <br/><br/> E-mail: '.$email.' <br/><br/> Assunto: '.$assunto.' <br/><br/> Mensagem: '.$mensagem.'<br/><br/> </body> </html>'; $email_c = new EnviaEmail($email,$assunto,$destinatario,$texto,1); $email_c->enviaEmail(); ?> e a classe que envia o e-mail:
      <?php class EnviaEmail { private $_emailsender,$_email_remetente,$_destinatario,$_assunto,$_headers,$_mensagem,$_quebra_linha,$_array_resposta,$_r; public function __construct($email_p,$assunto_p,$destinatario_p,$mensagem_p,$r){ $this->_email_remetente = $email_p; $this->_assunto = $assunto_p; $this->_destinatario = $destinatario_p; $this->_mensagem = $mensagem_p; $this->_r = $r; } private function configuraVars(){ $this->_emailsender = "emailautomatico@" . str_replace('www.','',$_SERVER['HTTP_HOST']); if(PHP_OS == "Linux"){ $this->_quebra_linha = "\n"; //Se for Linux } elseif(PHP_OS == "WINNT"){ $this->_quebra_linha = "\r\n"; // Se for Windows } else { $this->_array_resposta['sucesso'] = 0; $this->_array_resposta['mensagem'] = 'erro'; exit($this->_array_resposta); } } private function montaHeaders(){ $headers = "MIME-Version: 1.1" .$this->_quebra_linha; $headers .= "Content-type: text/html; charset=utf-8" .$this->_quebra_linha; $headers .= "From: " . $this->_emailsender.$this->_quebra_linha; if(strlen($this->_destinatario) > 0) $headers .= "Cc: ".$this->_destinatario.$this->_quebra_linha; if(strlen($this->_destinatario) > 0) $headers .= "Bcc: ".$this->_destinatario.$this->_quebra_linha; $headers .= "Reply-To: " . $this->_email_remetente . $this->_quebra_linha; return $headers; } public function enviaEmail(){ /* header('Content-Type: text/html; charset=utf-8');*/ $this->configuraVars(); $this->_headers = $this->montaHeaders(); if(mail($this->_destinatario, $this->_assunto, $this->_mensagem, $this->_headers, "-r". $this->_emailsender)){ $this->_array_resposta['sucesso'] = 1; } else { $this->_array_resposta['sucesso'] = 0; }; if($this->_r == 1){ echo json_encode($this->_array_resposta); } } } ?> obrigado a todos
    • By geoleandro
      Boa tarde pessoal
       
      Eu gostaria de alterar o background das alternativas abaixo para a cor verde, senão para vermelho. Porém só consigo fazer para o formulário inteiro.
      Estou travado nessa parte, qualquer ajuda seria bem-vinda.
      Obrigado
       
       
       
       
       
       
       
       
       
      <!DOCTYPE html>
      <html>
      <body>
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <div style='line-height: 25px;font-family: arial;'
      <p align="justify">

      <br/>
      Responda as questões a seguir:
      <br/>

      <form id = "quiz" name = "quiz">
      <p>Qual é a capital do Peru?</p>
      <input id = "textbox" type = "text" name = "q1">
      <br>
      <p>Qual é a capital do Equador?</p>
      <input type = "radio" id = "multipla" name = "q2" value = "Quito"> Quito<br>
      <input type = "radio" id = "multipla" name = "q2" value = "Quieto"> Quieto<br>

      <p>Qual é a capital da Argentina?</p>
      <input type = "radio" id = "multipla" name = "q3" value = "Buenas tardes"> Buenas tardes<br>
      <input type = "radio" id = "multipla" name = "q3" value = "Buenos Aires"> Buenos Aires<br>
      <br><br>
      <input id = "button" type = "button" value = "Conferir" onclick = "checar()">
      </form>
      </div>

      <p id = "numeroCorreto"></p>
      <p id = "mensagem"></p>
      <img id = "imagem" style= width="300" height="150">
      <p id = "cor"></p>
      </div>

      <script>
      function checar() {

      var q1 = document.quiz.q1.value;
      var q2 = document.quiz.q2.value;
      var q3 = document.quiz.q3.value;
      var corretas = 0;
      var cor = ["#006400", "#006400","#FF0000" ];
          if (q1 == "Lima") {
          corretas++; 
          
          
      }    

          if (q2 == "Quito") {
          corretas++; 
          
      }    
          if (q3 == "Buenos Aires") {
          corretas++;
          
          
      }

      var mensagem = ["Parabéns!", "Foi bom!", "Melhor tentar novamente!"];
      var imagem = ["img1.gif", "img2.gif", "img3.gif"];
      var pontos;
          if (corretas < 1) {
              pontos = 2;
              
          }
          if (corretas > 0 && corretas < 3) {
              pontos = 1;
          }

          if (corretas > 2) {
              pontos = 0;
              
          }

          document.getElementById ("numeroCorreto").innerHTML = "Você acertou " + corretas + " de 3 perguntas.";
          document.getElementById ("mensagem").innerHTML = mensagem[pontos];
          document.getElementById ("imagem").src = imagem[pontos];
          document.getElementById("quiz").style.backgroundColor = cor [pontos];
          
      }
      </script>

      </div>

      </p>

      </div>
      </body>
      </html>
    • By MirukaBr
      Olá galera, sou bem iniciante em html, porém de pouco em pouco tô tentando aprender. Queria fazer uma espécie de checkout para uma loja que estou fazendo, e pra isso usei uma base de formulário para fazer isso, pois o Mercado Pago não salva seus dados de endereço, então achei melhor fazer uma página de checkout para isso. Com ajuda de um gerador que encontrei fuçando na net, consegui o código que colocarei abaixo, porém no mesmo site do gerador, não oferece o botão de enviar. Queria saber como faço para enviar o formulário para meu e-mail ou outro lugar e após isso redirecionar o comprador para o Mercado Pago para efetuar o pagamento, desde já fico agradecido !!!
       
      Código abaixo:
       
      <form class="form-horizontal">
      <fieldset>
      <!-- Form Name -->
      <legend>Checkout</legend>
      <!-- Text input-->
      <div class="form-group">
        <label class="col-md-4 control-label" for="Nome ">Nome</label>  
        <div class="col-md-4">
        <input id="Nome " name="Nome " type="text" placeholder="Seu nome" class="form-control input-md">
          
        </div>
      </div>
      <!-- Text input-->
      <div class="form-group">
        <label class="col-md-4 control-label" for="Sobrenome">Sobrenome</label>  
        <div class="col-md-4">
        <input id="Sobrenome" name="Sobrenome" type="text" placeholder="Seu sobrenome" class="form-control input-md">
          
        </div>
      </div>
      <!-- Text input-->
      <div class="form-group">
        <label class="col-md-4 control-label" for="Endereço">Endereço</label>  
        <div class="col-md-4">
        <input id="Endereço" name="Endereço" type="text" placeholder="Primeira linha do endereço" class="form-control input-md">
          
        </div>
      </div>
      <!-- Text input-->
      <div class="form-group">
        <label class="col-md-4 control-label" for="Endereço2">Nº, Complemento...</label>  
        <div class="col-md-4">
        <input id="Endereço2" name="Endereço2" type="text" placeholder="Informações adicionais do endereço" class="form-control input-md">
          
        </div>
      </div>
      <!-- Text input-->
      <div class="form-group">
        <label class="col-md-4 control-label" for="Cidade">Cidade</label>  
        <div class="col-md-4">
        <input id="Cidade" name="Cidade" type="text" placeholder="Sua cidade" class="form-control input-md">
          
        </div>
      </div>
      <!-- Multiple Checkboxes (inline) -->
      <div class="form-group">
        <label class="col-md-4 control-label" for="Estado">Estado</label>
        <div class="col-md-4">
          <label class="checkbox-inline" for="Estado-0">
            <input type="checkbox" name="Estado" id="Estado-0" value="AC">
            AC
          </label>
          <label class="checkbox-inline" for="Estado-1">
            <input type="checkbox" name="Estado" id="Estado-1" value="AL">
            AL
          </label>
          <label class="checkbox-inline" for="Estado-2">
            <input type="checkbox" name="Estado" id="Estado-2" value="AP">
            AP
          </label>
          <label class="checkbox-inline" for="Estado-3">
            <input type="checkbox" name="Estado" id="Estado-3" value="AM">
            AM
          </label>
          <label class="checkbox-inline" for="Estado-4">
            <input type="checkbox" name="Estado" id="Estado-4" value="BA">
            BA
          </label>
          <label class="checkbox-inline" for="Estado-5">
            <input type="checkbox" name="Estado" id="Estado-5" value="CE">
            CE
          </label>
          <label class="checkbox-inline" for="Estado-6">
            <input type="checkbox" name="Estado" id="Estado-6" value="DF">
            DF
          </label>
          <label class="checkbox-inline" for="Estado-7">
            <input type="checkbox" name="Estado" id="Estado-7" value="ES">
            ES
          </label>
          <label class="checkbox-inline" for="Estado-8">
            <input type="checkbox" name="Estado" id="Estado-8" value="GO">
            GO
          </label>
          <label class="checkbox-inline" for="Estado-9">
            <input type="checkbox" name="Estado" id="Estado-9" value="MA">
            MA
          </label>
          <label class="checkbox-inline" for="Estado-10">
            <input type="checkbox" name="Estado" id="Estado-10" value="MT">
            MT
          </label>
          <label class="checkbox-inline" for="Estado-11">
            <input type="checkbox" name="Estado" id="Estado-11" value="MS">
            MS
          </label>
          <label class="checkbox-inline" for="Estado-12">
            <input type="checkbox" name="Estado" id="Estado-12" value="MG">
            MG
          </label>
          <label class="checkbox-inline" for="Estado-13">
            <input type="checkbox" name="Estado" id="Estado-13" value="PA">
            PA
          </label>
          <label class="checkbox-inline" for="Estado-14">
            <input type="checkbox" name="Estado" id="Estado-14" value="PB">
            PB
          </label>
          <label class="checkbox-inline" for="Estado-15">
            <input type="checkbox" name="Estado" id="Estado-15" value="PR">
            PR
          </label>
          <label class="checkbox-inline" for="Estado-16">
            <input type="checkbox" name="Estado" id="Estado-16" value="PE">
            PE
          </label>
          <label class="checkbox-inline" for="Estado-17">
            <input type="checkbox" name="Estado" id="Estado-17" value="PI">
            PI
          </label>
          <label class="checkbox-inline" for="Estado-18">
            <input type="checkbox" name="Estado" id="Estado-18" value="RJ">
            RJ
          </label>
          <label class="checkbox-inline" for="Estado-19">
            <input type="checkbox" name="Estado" id="Estado-19" value="RN">
            RN
          </label>
          <label class="checkbox-inline" for="Estado-20">
            <input type="checkbox" name="Estado" id="Estado-20" value="RS">
            RS
          </label>
          <label class="checkbox-inline" for="Estado-21">
            <input type="checkbox" name="Estado" id="Estado-21" value="RO">
            RO
          </label>
          <label class="checkbox-inline" for="Estado-22">
            <input type="checkbox" name="Estado" id="Estado-22" value="RR">
            RR
          </label>
          <label class="checkbox-inline" for="Estado-23">
            <input type="checkbox" name="Estado" id="Estado-23" value="SC">
            SC
          </label>
          <label class="checkbox-inline" for="Estado-24">
            <input type="checkbox" name="Estado" id="Estado-24" value="SP">
            SP
          </label>
          <label class="checkbox-inline" for="Estado-25">
            <input type="checkbox" name="Estado" id="Estado-25" value="SC">
            SC
          </label>
          <label class="checkbox-inline" for="Estado-26">
            <input type="checkbox" name="Estado" id="Estado-26" value="SE">
            SE
          </label>
          <label class="checkbox-inline" for="Estado-27">
            <input type="checkbox" name="Estado" id="Estado-27" value="TO">
            TO
          </label>
        </div>
      </div>
      </fieldset>
      </form>
       
    • By paulo.e.monteiro2015
      Boa noite,
       
      Possuo o seguinte array
      Array ( [0] => Array ( [0] => 564 [IdPergunta] => 564 [1] => 66 [IdQuiz] => 66 [2] => A EMS é líder no mercado farmacêutico há quantos anos? [DescricaoPergunta] => A EMS é líder no mercado farmacêutico há quantos anos? [3] => 1 [NumeroPergunta] => 1 ) [1] => Array ( [0] => 565 [IdPergunta] => 565 [1] => 66 [IdQuiz] => 66 [2] => A cada 100 medicamentos vendidos no Brasil 13 são de qual laboratório? [DescricaoPergunta] => A cada 100 medicamentos vendidos no Brasil 13 são de qual laboratório? [3] => 2 [NumeroPergunta] => 2 ) [2] => Array ( [0] => 566 [IdPergunta] => 566 [1] => 66 [IdQuiz] => 66 [2] => Qual medicamento controlado e lançamento dos Genéricos EMS é indicado para alívio de dores e possui formato de fácil deglutição? [DescricaoPergunta] => Qual medicamento controlado e lançamento dos Genéricos EMS é indicado para alívio de dores e possui formato de fácil deglutição? [3] => 3 [NumeroPergunta] => 3 ) [3] => Array ( [0] => 567 [IdPergunta] => 567 [1] => 66 [IdQuiz] => 66 [2] => Os Genéricos EMS possuem o maior portfólio do Brasil, com 195 moléculas, que atendem 96% das classes terapêuticas. Qual o número total de apresentações? [DescricaoPergunta] => Os Genéricos EMS possuem o maior portfólio do Brasil, com 195 moléculas, que atendem 96% das classes terapêuticas. Qual o número total de apresentações? [3] => 4 [NumeroPergunta] => 4 ) [4] => Array ( [0] => 568 [IdPergunta] => 568 [1] => 66 [IdQuiz] => 66 [2] => A EMS possui quantos anos de história? [DescricaoPergunta] => A EMS possui quantos anos de história? [3] => 5 [NumeroPergunta] => 5 ) [5] => Array ( [0] => 569 [IdPergunta] => 569 [1] => 66 [IdQuiz] => 66 [2] => Qual lançamento Genéricos EMS é o primeiro genérico do mercado indicado para o tratamento do Transtorno do Déficit de Atenção e Hiperatividade? [DescricaoPergunta] => Qual lançamento Genéricos EMS é o primeiro genérico do mercado indicado para o tratamento do Transtorno do Déficit de Atenção e Hiperatividade? [3] => 6 [NumeroPergunta] => 6 ) ) Preciso criar uma navegação item a item deste, para que possa dar a opção do usuário responder ao Quiz.
      Preciso muito desta ajuda pois tenho muita urgência em resolver isso. É só isso que falta para terminar o Quiz.
       
      Att.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.