Jump to content
Sylvio Ricardo Geraes

Help em Formulário HTML com PHP

Recommended Posts

Olá amigos, preciso muito de uma ajuda já pesquisei aqui no forum segui as instruções de vários e até agora não consegui resolver meu problema, não sei onde estou errando. Fiz um formulário de contato em html e preciso que as informações inseridas pelo usuário seja enviada por e-mail. Segue abaixo o form que está na página em html.

 

<h2>Entre em Contato</h2>
    <form name="tForm" method="post" action="enviar.php">
    <div class="one_third first">
        <label for="cNome">Nome: <span style="color: red">*</span></label>
        <input id="cNome" name="tNome" type="text" placeholder="Informe seu nome" required="required">
    </div>
    <div class="one_third">
        <label for="cEmail">E-mail: <span style="color: red">*</span></label>
        <input id="cEmail" name="tEmail" type="email" placeholder="mail@exemplo.com.br" required="required">
    </div>
    <div class="one_third">
        <label for="cFone">Fone/Whats: <span style="color: red">*</span></label>
        <input id="cFone" name="tFone" type="text" placeholder="(xx) xxxxx-xxxx" required="required">
    </div>
    <div class="one_third first">
        <label>Assunto:</label>
        <select style="color:red; Background:none" id="cAssunto" name="tAssunto" >
            <option style="color:red" value="assunto">Escolha o assunto</option>
            <option style="color:darkblue" value="vendas">Vendas</option>
            <option style="color:darkblue" value="faturamento">Faturamento</option>
            <option style="color:darkblue" value="financeiro">Financeiro</option>
            <option style="color:darkblue" value="reclamacao">Reclamação</option>
        </select>
    </div>
    <div class="block clear">
        <label for="cMsg">Mensagem:</label>
        <textarea class="text" id="cMsg" name="tMsg" placeholder="Deixe sua mensagem" rows="10" cols="40"></textarea>
    </div>
    <p><span style="color: red">*</span><strong> Campos obrigatórios</strong></p><br />
    <p class="submit">
        <input type="submit" value="Enviar" />
        <input type="reset" value="Limpar">
    </p>
    </form>

 

Este são as linhas de instrução em php.

 

<?php

//Quando apertar no botão enviar do formulário chama a instrução

if(isset($_POST['enviar'])){
}
//Email para onde vai o e-mail
$para = "contato@meudominio.com.br"; // "@meudominio.com.br" onde substitui pelo meu dominio
$assunto= "Contato pelo site";

//Dados vindos do formulário contato.html
$cnome= $_POST['tNome'];
$cemail= $_POST['tEmail'];
$cfone= $_POST['tFone'];
$cassunto= $_POST['tAssunto'];
$cmsg= $_POST['tMsg'];

//Montando o corpo do e-mail que vai receber todas as informações do formulário do site
$corpo ="Nome:".$cnome;
$corpo.="E-mail:".$cemail;
$corpo.="Fone/Whats:".$cfone;
$corpo.="Assunto:".$cassunto;
$corpo.="Mensagem:".$cmsg;

//headers responsável que prepara a mensagem 
$header= "MIME-Version: 1.0\r\n";
$header= "Content-Type: text/html; charset= utf-8\n";
$header.="From: $para Reply-to: $cemail\r\n";

//Envia o email
@mail($para, $assunto, $corpo, $header);

//Após o envio do formulário para qual página vai ser direcionada
header("location:contato.html? msg=Mensagem enviada");

?>

 

Acontece que não vai o e-mail nem para mim e nem uma cópia da pessoa que preencheu o formulário. Peço encarecidamente que alguém possa me ajudar.

Share this post


Link to post
Share on other sites

Teste esse código e veja se terá resultado e não esqueça de alterar o email da variável $para.

Utilizo este padrão em sites mais simples.

Estou a disposição para qualquer dúvida.

 

-------------------------

<?php
$msg=0;
@$msg= $_REQUEST['msg'];
?>

 

<!DOCTYPE html>
<html lang="pt-br">
<head>
    <meta charset="UTF-8">
    <title>Formulário de Contato</title>
</head>
<body>
    <?php if($msg=="enviado"): ?>
    <h1>Mensagem enviada, agradecemos seu contato!</h1>
    <?php else: ?>
    <fiedset>
        <legend><h3>Formulário de Contato</h3></legend>
        <form method="post" action="processa.php">
            <label for="nome"> Nome: </label><br>
            <input id="nome" name="tNome" type="text" required><br>
            <label for="telefone"> Telefone: </label><br>
            <input id="telefone" name="tFone" type="tel" required><br>
            <label for="email"> Email: </label><br>
            <input id="email" name="tEmail" type="email" required><br>
            <label for="nome"> Assunto: </label><br>
            <input id="assunto" name="tAssunto" type="text" required><br>
            <label for="mensagem"> Mensagem </label><br>
            <textarea name="tMsg" id="mensagem"> </textarea><br>
            <input type="submit" value="Submit" name="submit">
        </form>
    </fiedset>
    <?php endif; ?>
</body>
</html>

--------------------------------

 

<?php

$para =  "contato@seudominio.com";
$nome = $_REQUEST['tNome'];
$email = $_REQUEST['tEmail'];
$fone = $_REQUEST['tFone'];
$assunto = $_REQUEST['tAssunto'];
$msg = $_REQUEST['tMsg'];


            $corpo= "<strong> Mensagem de Contato</strong><br><br>";
            $corpo .="<strong> Nome: </strong> $nome";
            $corpo .="<br><strong> E-mail: </strong> $email";
            $corpo .="<br><strong> Telefone: </strong> $fone";
            $corpo .="<br><strong> Assunto: </strong> $assunto";
            $corpo .="<br><strong> Mensagem: </strong> $msg";

            $header= "Content-type: text/html; charset= utf-8\n";
            $header.="From: $email Reply-to: $email\n";

mail($para,$nome,$email,$header);

header("location:contato.php?msg=enviado");
?>

Share this post


Link to post
Share on other sites

pelo visto ou eu não tenha percebido onde o seu site está hospedado, ou se é localmente. Você está utilizando alguma classe para lhe ajudar a enviar o e-mail?

caso seja na própria hospedagem você precisa configurar o arquivo php.ini e inserir o seu e-mail cadastrado na hospedagem. Caso contrario esteja testando localmente, o seu php mailer ou classe que esteja utilizando não foi configurando corretamente, e você não forneceu mais descrições do seu erro. percebi ali que você não fez uma verificação ao enviar o email, oque pode ser isto.

 

tente: $retorno = mail($para,$nome,$email,$header);

 

agora que ja dei minha sugestão que tal me ajudar em minha questão ? 

https://forum.imasters.com.br/topic/581189-sessão-php-some-ao-relogar-página-na-hospedagem/

 

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 Marlonsantos
      Olá pessoal, eu estou começando meu curso de programação Full Stack e tive a tarefa de fazer uma página mais parecida possível com essa. Mas estou com muita dificuldade na hora de colocar essa <DIV> branca dentro dessa <DiV> preta. Eu já consegui colocar os links nas imagens do Facebook e do Instagram, porém não consigo alinhar elas no canto direito, meu <h1> vem junto... Muito obrigado pela atenção galera

    • By leandro123456789
      <div id="direito">
             
             <?php 
                      
                 $link = filter_input(INPUT_GET, 'link');
                 
                 $pag[1] = "../admin/home.php";
                 $pag[2] = "../admin/classes/Lista.php";
                 
              
              
                 if(!empty($link)){
                     
                     if(file_exists($pag[$link]))
                        
                      {
                         include $pag[$link];
                      
                      }
                        
                      else
                      { 
                         
                          include "home.php";
                      
                      }
                     
                 }else{
                     include "home.php";
                 }
              
              ?>
             
          </div>
       
       
      Estou tentando colocar a paginação do meu banco em $ pag [2] na minha página: ../admin/classes/Lista.php tem o seguinte código de paginação:

      <? php
          
          include_once ("../ admin / classes / ClassConexao.php");
          
          
          // verifique a página atual se informado no URL, caso contrário, ela será atribuída como 1ª página
          $ pagina = (isset ($ _ GET ['link = 2']))? $ _GET ['link = 2']: 1;
       
          // seleciona todos os itens da tabela
          $ cmd = "selecione * da categoria";
          $ produtos = mysqli_query ($ conn, $ cmd);
          
          // conta o total de itens
          $ total = mysqli_num_rows ($ produtos);
       
          // seta o número de itens por página, neste caso, 2 itens
          $ registros = 2;
       
          // calcula o número de páginas arredondando o resultado
          $ numPaginas = teto ($ total / $ registros);
       
          // variável para calcular o início da visualização com base na página atual
          $ inicio = ($ registros * $ pagina) - $ registros;
       
          // seleciona itens por página
          $ cmd = "selecione * da categoria limite $ inicio, $ registros";
          $ produtos = mysqli_query ($ conn, $ cmd);
          $ total = mysqli_num_rows ($ produtos);
           
          // exibe produtos selecionados
          while ($ produto = mysqli_fetch_array ($ produtos)) {
              echo $ produto ['id_categoria']. "-";
              echo $ produto ['categoria']. "-";
              echo $ produto ['ativo_categoria']. "<br />";
          }

      // Não sei como consertar esta parte para mostrar a paginação nesse $ pag [2] = "../admin/classes/Lista.php";
           
          // exibe paginação
          para ($ i = 1; $ i <$ numPaginas + 1; $ i ++) {
              
             echo "<a href='?pagina=$i'>". $ i. "</a>";
          }
                  
      ?>
      Meu menu fica assim:

      <div id = "sessao"> Categoria </div>
         <ul>
             
            
             <li> <a href="index.php?link=3"> Cadastro </a> </li>
             <li> <a href="index.php?link=2"> Listar / Editar </a> </li>
         
        </ul>
    • By Camilavip
      Oi, tenho um flip para virar a imagem, bem pequeno e funcional, mas ao colocar um rodapé, ele simplesmente invade esse rodapé
      Creio que tem haver alguma coisa com o position: absolute, mas não entendo nada de css
       
      <!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title></title> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css"> </head> <body> <!-- CSS DO FLIP --> <style> .flip-container:hover .flipper{ transform: rotateY(180deg); /* se quiser uma animação na vertical, troque por rotateX(180deg) */ } .flipper{ width: 100%; height: 100%; transition: transform 0.8s; transform-style: preserve-3d; } .front, .back{ position: absolute; width: 100%; height: 100%; } .back{ transform: rotateY(180deg); } </style> <center> <div class="flip-container"> <div class="flipper"> <div class="front"> <img src="https://d3mwk3f7r8fv9u.cloudfront.net/images/zohO24tyN2WB8etR3nhZPvhf.png" /> </div> <div class="back"> <img src="https://d3mwk3f7r8fv9u.cloudfront.net/images/XkAkTVqVPbLB3cK5njqdun66.png" /> </div> </div> </div> <!-- AQUI COMEÇA O RODAPÉ --> <!-- CSS DO RODAPÉ --> <style> @import url('https://fonts.googleapis.com/css?family=Poppins:400,500,600,700&display=swap'); *{ margin: 0; padding: 0; color: #d9d9d9; box-sizing: border-box; font-family: 'Poppins', sans-serif; } .content1{ position: relative; margin: 130px auto; text-align: center; padding: 0 20px; } .content1 .text{ font-size: 2.5rem; font-weight: 600; color: #202020; } .content1 .p{ font-size: 2.1875rem; font-weight: 600; color: #202020; } footer{ position: fixed; bottom: 0px; width: 100%; background: #111; } .main-content{ display: flex; } .main-content .box{ flex-basis: 50%; padding: 10px 20px; } .box h2{ font-size: 1.125rem; font-weight: 600; text-transform: uppercase; } .box .content{ margin: 20px 0 0 0; position: relative; } .box .content:before{ position: absolute; content: ''; top: -10px; height: 2px; width: 100%; background: #1a1a1a; } .box .content:after{ position: absolute; content: ''; height: 2px; width: 15%; background: #f12020; top: -10px; } .left .content p{ text-align: justify; } .left .content .social{ margin: 20px 0 0 0; } .left .content .social a{ padding: 0 2px; } .left .content .social a span{ height: 40px; width: 40px; background: #1a1a1a; line-height: 40px; text-align: center; font-size: 18px; border-radius: 5px; transition: 0.3s; } .left .content .social a span:hover{ background: #f12020; } .center .content .fas{ font-size: 1.4375rem; background: #1a1a1a; height: 45px; width: 45px; line-height: 45px; text-align: center; border-radius: 50%; transition: 0.3s; cursor: pointer; } .center .content .fas:hover{ background: #f12020; } .center .content .text{ font-size: 1.0625rem; font-weight: 500; padding-left: 10px; } .center .content .phone{ margin: 15px 0; } .right form .text{ font-size: 1.0625rem; margin-bottom: 2px; color: #656565; } .right form .msg{ margin-top: 10px; } .right form input, .right form .msgForm{ width: 100%; font-size: 1.0625rem; background: #151515; padding-left: 10px; border: 1px solid #222222; } .right form input:focus, .right form .msgForm:focus{ outline-color: #3498db; } .right form input{ height: 35px; } .right form .btn{ margin-top: 10px; } .right form .btn button{ height: 40px; width: 100%; border: none; outline: none; background: #f12020; font-size: 1.0625rem; font-weight: 500; cursor: pointer; transition: .3s; } .right form .btn button:hover{ background: #000; } .bottom center{ padding: 5px; font-size: 0.9375rem; background: #151515; } .bottom center span{ color: #656565; } .bottom center a{ color: #f12020; text-decoration: none; } .bottom center a:hover{ text-decoration: underline; } @media screen and (max-width: 900px) { footer{ position: relative; bottom: 0px; } .main-content{ flex-wrap: wrap; flex-direction: column; } .main-content .box{ margin: 5px 0; } } </style> <div class="content1"> <div class="text"> Fully Responsive Footer Section</div> <div class="p"> HTML and CSS (Flexbox)</div> </div> <footer> <div class="main-content"> <div class="left box"> <h2> About us</h2> <div class="content"> <p> CodinNepal is a YouTube channel where you can learn web designing, web development, ui/ux designing, html css tutorial, hover animation and effects, javascript and jquery tutorial and related so on.</p> <div class="social"> <a href="https://facebook.com/coding.np"><span class="fab fa-facebook-f"></span></a> <a href="#"><span class="fab fa-twitter"></span></a> <a href="https://instagram.com/coding.np"><span class="fab fa-instagram"></span></a> <a href="https://youtube.com/c/codingnepal"><span class="fab fa-youtube"></span></a> </div> </div> </div> <div class="center box"> <h2> Address</h2> <div class="content"> <div class="place"> <span class="fas fa-map-marker-alt"></span> <span class="text">Birendranagar, Surkhet</span> </div> <div class="phone"> <span class="fas fa-phone-alt"></span> <span class="text">+089-765432100</span> </div> <div class="email"> <span class="fas fa-envelope"></span> <span class="text">abc@example.com</span> </div> </div> </div> <div class="right box"> <h2> Contact us</h2> <div class="content"> <form action="#"> <div class="email"> <div class="text"> Email *</div> <input type="email" required> </div> <div class="msg"> <div class="text"> Message *</div> <!-- NOTE: Due to more textarea tag I got an error. So I changed the textarea name to changeit. Please change that changeit name to textarea --> <changeit id=".msgForm" rows="2" cols="25" required></changeit> <!-- replace this changeit name to textarea --> <br /> <div class="btn"> <button type="submit">Send</button> </div> <div class="bottom"> <center> <span class="credit">Created By <a href="https://youtube.com/c/codingnepal">CodingNepal</a> | </span> <span class="far fa-copyright"></span> 2020 All rights reserved. </center> </div> </body> </html>  
    • By Kemily
      Eu preciso de ajuda para poder publicar meu site.
      O professor mandou faze-lo em HTML e CSS e eu fiz mas eu não sei postar e manter as imagens.
      Quando consegui postar as imagens não foram junto.
      O link q consegui fazer sem as imagens ficou assim:
       
      http://hyundai.droppages.com/
    • By Kemily
      <? php /* 1 - Faça uma função que recebe 3 numeros e faça a média aritmética desses números e retorne o resultado. */ if (isset ($_POST['enviar'])); $valor1 = $_POST['valor1']; $valor2 = $_POST['valor2']; $valor3 = $_POST['valor3']; $media = ($valor1 + $valor2 + $valor3) / 3; endif; ?> <!DOCTYPE html> <html> <head> <meta charset = "Utf-8"> <title> Cálculo da média aritimética</title> </head> <body> <form method="post" action=""> <br> <label>Primeiro valor: </label> <input name="valor1" type="text"> <br> <label>Segundo valor: </label> <input name="valor2" type="text"> <br> <label> Terceiro valor: </label> <input name="valor3" type="text"> <br> <br> <button type="submit" name="enviar"> Calcular Média </button> <button type="reset"> Limpar </button> <br> <br> Valor da Média <? php echo "A média equivale a:<br>" . $media . " - "; ?> </form> </body> </html> Alguém pode me ajudar?
      Eu estou fazendo este programa para calcular a média aritmética de três número que serão digitados pelo usuário.
      Porém não estou conseguindo fazer o resultado ser apresentado na tela.
      Nem o ultimo "echo" aparece só o " " . $media . " - "; " literalmente é isso que aparece onde deveria mostrar o resultado.
      Sou iniciante na área de php e se puderem ajudar agradeço. 
×

Important Information

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