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 ferreiradealmeida
      Prezados(as), boa tarde.
       
      Já trabalhei com webdesign e desenvolvimento frontend, mas faziam anos que não mexia com isso. Hoje sou advogado.
       
      Elaborei uma assinatura para e-mail em HTML, que quando aberta no navegador é exibida corretamente:
       

       
      Ocorre que quando a assinatura é inserida na mensagem (Microsoft Outlook 2016) a disposição dos elementos se mostra desconfigurada, assim permanecendo se a mensagem for enviada:
       

       
      Devem ter notado que a imagem que fica acima das informações é uma imagem de fundo. Já tentei também "background" na <table>, mas neste caso, apesar de aparecer no navegador a imagem sequer aparece na assinatura:
       
      <div style="max-width:716px; max-height:200px; position:relative;"> <img src="http://www.fafadv.com.br/images/assinatura.jpg" alt="imagem-assinatura" /> <div style="position:absolute; top:0px; bottom:0px; left:0px; right:0px;"> <table border="0" cellpadding="0" cellspacing="0" width="716" height="200" style="max-width:716px; max-height:200px;"> <tr> <td rowspan="3" style="width:242px;"></td> <td rowspan="3" style="width:340px; font-family:Gadugi; font-size:14px; padding:5px;"> <p><strong><span style="font-size:18px;">Daniel A. Ferreira de Almeida</span></strong><br> <span style="font-size:16px;">Advogado - OAB/SP 424.237</span></p> <p style="margin-top:-7px;">(16) 9 9373-2552<br> (16) 3421-7783</p> <p style="margin-top:-7px;"><a href="mailto:ferreiradealmeida@fafadv.com.br" style="font-family:Gadugi; font-size:14px; color:#000;"> ferreiradealmeida@fafadv.com.br</a><br> <a href="http://www.fafadv.com.br" style="font-family:Gadugi; font-size:14px; color:#000;">www.fafadv.com.br</a></p> <p style="margin-top:-7px;">Rua Marino Bruno Regini, nº 270, Sala 02<br> Nova Ribeirânia - Ribeirão Preto/SP, CEP 14096-710</p> </td> <td style="width:125px; height:67px; text-align:center;"> <a href="https://www.facebook.com/adv.faf/"> <img src="http://www.fafadv.com.br/images/logo-facebook.png" alt="logo-facebook" style="margin-top:10px;"> </a> </td> </tr> <tr> <td style="width:125px; height:66px; text-align:center;"> <a href="https://www.instagram.com/faf.adv/"> <img src="http://www.fafadv.com.br/images/logo-instagram.png" alt="logo-instagram" style="margin-top:10px;"> </a> </td> </tr> <tr> <td style="width:125px; height:67px; text-align:center;"> <a href="https://www.linkedin.com/company/faf-adv"> <img src="http://www.fafadv.com.br/images/logo-linkedin.png" alt="logo-linkedin" style="margin-bottom:5px;"> </a> </td> </tr> </table> </div> </div> Serei grato se alguém souber o que ocorre e puder colaborar.
       
      Obrigado.
    • By Kefatif
      Prezados boa tarde.
       
      Preciso bloquear a edição de um date input de forma que só seja possível selecionar a data através do calendário.
       
      Alguém pode me ajudar?
       
      Utilizo php, html e js.
       
      <input type="date" value="<?php echo $data ?>" name="datacoleta" class="form-control" required style="width:100%;">  
      Agradeço desde já.
    • By Kefatif
      Prezados boa tarde.
       
      Preciso bloquear a edição de um date input de forma que só seja possível selecionar a data através do calendário.
       
      Alguém pode me ajudar?
       
      Utilizo php, html e js.
       
      <input type="date" value="<?php echo $data ?>" name="datacoleta" class="form-control" required style="width:100%;">  
      Agradeço desde já.
    • By Thiago Duarte
      Eu tenho uma página que abri um alert ao clicar no link , só que nao cadastra e nem funciona o login.
       
       <div class="btn-box">          <a class="btn btn-color venobox vbox-item" data-toggle="modal" href="javascript:void(0)" onclick="openRegisterModal();">Start now Free </a>             <img src="images/seta.png"> </div>  
      <div class="modal-body">                               <div class="box">                                  <div class="content">                                     <!-- Login Form -->                                     <div class="loginBox">                                        <form id="login-modal" role="form"  method="post" action="#">                                           <input type="hidden" name="param" value="logar" />                                           <!-- Success/Alert Notification -->                                           <p class="lm-success"><i class="icon icon_check_alt2"></i> <strong>Congratulation! Login modal validation is working. Implement your code.</strong></p>                                           <p class="lm-failed"><i class="icon icon_close_alt2"></i><strong> Something went wrong! Insert correct value.</strong></p>                                           <!-- Input Fields -->                                           <input id="lm-email" class="form-control input-lg" type="text" placeholder="Email" name="email" required="">                                           <input id="lm-password" class="form-control input-lg" type="password" placeholder="Password" name="senha" required="">                                           <!-- Login Button -->                                           <input type="submit" class="btn btn-color" value="Login">                                           <!-- <button class="btn btn-color">Login</button> -->                                        </form>                                     </div>                                     <!-- /End Login Form -->                                  </div>                               </div>                               <!-- /End Login Form Box -->                               <div class="box">                                  <!-- Signup Form -->                                  <div class="content registerBox" style="display:none;">                                     <form id="signup-modal" role="form" method="post" action="?go=cadastrar">                                        <!-- Success/Alert Notification -->                                        <p class="sm-success"><i class="icon icon_check_alt2"></i> <strong>Congratulation! Signup modal validation is working. Implement your code.</strong></p>                                        <p class="sm-failed"><i class="icon icon_close_alt2"></i><strong> Something went wrong! Insert correct value.</strong></p>                                        <!-- Input Fields -->                                        <input id="sm-email" class="form-control input-lg" type="text" placeholder="Email" name="email" required="">                                        <input id="sm-password" class="form-control input-lg" type="password" placeholder="password" name="password">                                        <input id="sm-confirm" class="form-control input-lg" type="password" placeholder="Repeat password" name="senha-confirm">                                        <!-- Signup Button -->                                        <!--  <button class="btn btn-color">Create an account</button> -->                                        <input type="submit" class="btn btn-color" value="Create an account">                                     </form>                                  </div>                                  <!-- /End Signup Form -->                               </div>                               <!-- /End Signup Form Box -->                            </div>  
      e em baixo do </html> coloquei
        <?php           $param = (empty($_POST['param'])) ? 'error' : $_POST['param'];           if($param == 'logar'){       //if($_POST['param'] == 'logar'){             $email = $_POST['email'];             $password = $_POST['password'];             $query1 = mysql_num_rows(mysql_query("SELECT * FROM usuario WHERE email = '$email' AND password = '$password'")) or die(mysql_error());             if($query1 == 1){           // print "<script>alert('logou');</script>";              print "<script>window.location.replace('dashboard/index.php');</script>";           }else{              echo "<script>alert('User and password do not match.'); history.back();</script>";           }        }        if(@$_GET['go'] == 'cadastrar'){           // $dominio_gratis = $_POST['dominio_gratis'];          $email = $_POST['email'];          $password = $_POST['password'];          $date_register = date("m-d-Y");                // if(empty($dominio_gratis)){           //     echo "<script>alert('Preencha todos os campos para se cadastrar.'); history.back();</script>";           // }else          if(empty($email)){           echo "<script>alert('Fill in all the fields to register.'); history.back();</script>";            }elseif(empty($password)){           echo "<script>alert('Fill in all the fields to register.'); history.back();</script>";        }else{           $query1 = mysql_num_rows(mysql_query("SELECT * FROM usuario WHERE email = '$email'"));           if($query1 == 1){            echo "<script>alert('User already exists.'); history.back();</script>";          }else{            mysql_query("insert into usuario (email, password, date_register, plan) values ('$email','$password','$date_register', '0')");            header("Location: dashboard/dashboard.php");         }      }   }   ?>  
      Alguem pode ajudar?
    • By 4Unknow
      Boa tarde pessoal, como estão?
       
      Gostaria de uma ajudinha aqui. A forma mais prática e com um layout bacana, um pop-up toda vez(ou não) que o usuário abrir o site, um informativo que é importante.
      Tenho um site que vende algo muito específico e preciso deixar claro sobre meu produto como um informativo. Ou um banner/popup que abre quando o usuário entra no site para deixar claro.

      Ou um footer bonito que deixa claro essa informação.

      Se alguém tiver uma ideia ou puder ajudar, eu agradeceria.
×

Important Information

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