Jump to content
guikk

envio de e-mail com php

Recommended Posts

eu fiz um formulário para envio de e-mail com php e html, más não funciona, não aparece nenhuma mensagem de erro, apenas "erro ao enviar o e-mail" que eu defini para aparecer caso o e-mail não fosse enviado.

 

configurações que eu usei no sendmail.ini

 

smtp_server=smtp.gmail.com
smtp_port=587
smtp_ssl=auto
auth_username=meuemail@gmail.com
auth_password=minhasenha
configurações do php.ini
unica coisa que modifiquei foi o sendmail_path
sendmail_path = "C:\wamp\sendmail\sendmail.exe -t"
script
<?php
if(isset($_POST['enviar'])):
$nome = $_POST['nome'];
$email = $_POST['email'];
$assunto = $_POST['assunto'];
$mensagem = $_POST['mensagem'];
if(mail('guilhermekluge12@gmail.com', $assunto, $mensagem, 'From: '.$email)):
$aviso = 'Email enviado com sucesso';
else:
$aviso = 'Erro ao enviar o email';
endif;
endif;
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Envio de dados com GET e POST</title>
</head>
<body>
<?php if(isset($aviso)) echo $aviso; ?>
<form action="" method="post">
<p><label for="">Nome:</label><input type="text" name="nome"></p>
<p><label for="">Email:</label><input type="text" name="email"></p>
<p><label for="">Assunto:</label><input type="text" name="assunto"></p>
<p><label for="">Mensagem:</label><textarea name="mensagem" id="" cols="30" rows="10"></textarea></p>
<p><input type="submit" name="enviar"></p>
</form>
</body>
</html>
Se alguém souber a solução desde já obrigado.

 

 

Share this post


Link to post
Share on other sites

Ola Recomendo você a utilizar a classe phpmailer é melhor que usar esse mail do php aqui no forum tem varios topicos sobre ese assunto mas vou postar o codigo aqui:

 

Primeiramente, faça o download do PHPMailer no Github e extraia o conteúdo da pasta dentro do local de sua preferência (note que o local tem que estar acessível pelo PHP).

Segue o link para Download:

So clicar em download zip

Depois adapte seu codigo ao codigo abaixo:

<?php

/* Inclui a classe do phpmailer */				
require("caminho/do/arquivo/class.phpmailer.php");
 
/* Cria uma Instância da classe */
$mail = new PHPMailer();

/* #########################
 * # CONFIGURAÇÕES BÁSICAS # 
 * #########################
 */
$assunto = 'O ASSUNTO DO EMAIL';
$mensagem = 'A MENSAGEM DO EMAIL. PODE SER HTML.';
$seu_email = 'SEU EMAIL';
$seu_nome = 'DIGITE SEU NOME';
$sua_senha = 'A SENHA DO SEU EMAIL';
 
/* Se for do Gmail o servidor é: smtp.gmail.com */
$host_do_email = 'O SERVIDOR DO SEU EMAIL';
 
/* Configura os destinatários (pra quem vai o email) */
$mail->AddAddress('destinatario@email.com', 'Nome');
// $mail->AddAddress('email@email.com');
// $mail->AddCC('email@email.com', 'Nome da pessoa'); // Copia
// $mail->AddBCC('email@email.com', 'Nome da pessoa'); // Cópia Oculta
 
/* ###########################
 * # CONFIGURAÇÕES AVANÇADAS # 
 * ###########################
 */
				
/* Define que é uma conexão SMTP */
$mail->IsSMTP();
/* Define o endereço do servidor de envio */
$mail->Host = $host_do_email;
/* Utilizar autenticação SMTP */ 
$mail->SMTPAuth = true;
/* Protocolo da conexão */
$mail->SMTPSecure = "ssl";
/* Porta da conexão */
$mail->Port = "465";
/* Email ou usuário para autenticação */
$mail->Username = $seu_email;
/* Senha do usuário */
$mail->Password = $sua_senha;
 
/* Configura os dados do remetente do email */
$mail->From = $seu_email; // Seu e-mail
$mail->FromName = $seu_nome; // Seu nome
 
/* Configura a mensagem */
$mail->IsHTML(true); // Configura um e-mail em HTML
 
/*   
 * Se tiver problemas com acentos, modifique o charset
 * para ISO-8859-1  
 */
$mail->CharSet = 'UTF-8'; // Charset da mensagem (opcional)
 
/* Configura o texto e assunto */
$mail->Subject  = $assunto; // Assunto da mensagem
$mail->Body = $mensagem; // A mensagem em HTML
$mail->AltBody = trim(strip_tags($mensagem)); // A mesma mensagem em texto puro
 
/* Configura o anexo a ser enviado (se tiver um) */
//$mail->AddAttachment("foto.jpg", "foto.jpg");  // Insere um anexo
 
/* Envia o email */
$email_enviado = $mail->Send();
 
/* Limpa tudo */
$mail->ClearAllRecipients();
$mail->ClearAttachments();
 
/* Mostra se o email foi enviado ou não */
if ($email_enviado) {
	echo "Email enviado!";
} else {
	echo "Não foi possível enviar o e-mail.<br /><br />";
	echo "<b>Informações do erro:</b> <br />" . $mail->ErrorInfo;
}
?>

Testa ai e ve se funciona para você

 

creditos: www.todoespacoonline.com

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 Diego-SLP
      Bom dia,
       
      Estou passando uma variavel via GET para uma pagina PHP e a SQL não interpreta a mesma.
       
      Se eu printar o numero é exibido, se eu colocar o valor manualmente na SQL ela funciona, porém quando coloco a variavel não exibe nenhum registro, se alguem puder me ajudar.
       
      <?php $id = $_GET['id']; echo $id; $procura = mysqli_query($con,"SELECT p.DATA,p.cod_func,f.nome,f.funcao,p.cod_etapa,p.entrada_1,p.saida_1,p.entrada_2,p.saida_2,p.entrada_3,p.saida_3 FROM rh_pontoFuncionario p, rh_funcionario f WHERE p.cod_func = f.cod AND p.cod_obra = '".$id."' ORDER BY p.id desc") or die (mysqli_error($procura)); while($row = mysqli_fetch_array($procura)){ ?> <tr role="row" class="odd table-sm"> <td class="text-center"> <?php echo date('d/m/Y',strtotime($row['DATA'])); ?> </td> <td class="text-center"><?php echo $row['cod_func'];?></td> <td class="text-center"><?php echo $row['nome'];?></td> <td class="text-center"><?php echo $row['funcao'];?></td> <td class="text-center"><?php echo $row['cod_etapa'];?></td> <td class="text-center"><?php echo $row['entrada_1'];?></td> <td class="text-center"><?php echo $row['saida_1'];?></td> <td class="text-center"><?php echo $row['entrada_2'];?></td> <td class="text-center"><?php echo $row['saida_2'];?></td> <td class="text-center"><?php echo $row['entrada_3'];?></td> <td class="text-center"><?php echo $row['saida_3'];?></td> <td class="project-actions text-center"> <a class="btn btn-warning btn-sm" href="#.php?id=<?php echo $row['id']; ?>"> <i class="fas fa-pencil-alt"> </i> </a> <a class="btn btn-danger btn-sm" href="#.php?id=<?php echo $row['id']; ?>"> <i class="fas fa-trash-alt"> </i> </a> </td> </tr> <?php }//while ?>  
    • By rodrigofv1994
      <?php $servername = "localhost"; $username = "root"; $password = ""; $dbname = "ajax";   $email = $_POST['email']; $senha = $_POST['senha'];   // Criando conexão $conn = new mysqli($servername, $username, $password, $dbname); // Checando conexão if ($conn->connect_error) {   die("Connection failed: " . $conn->connect_error); }   $sql = "select mail , senha from usuarios where mail = '$email' and senha = '$senha'";   $registros=$conn->count() //$registros = mysqli_num_rows($conn);   if($registros>0){     echo "1"; }else{     echo"0"; }   $conn->close(); ?>
    • By rodrigofv1994
      <?php $servername = "localhost"; $username = "root"; $password = ""; $dbname = "ajax";   $email = $_POST['email']; $senha = $_POST['senha'];   // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) {   die("Connection failed: " . $conn->connect_error); }   $sql = 'INSERT INTO usuarios VALUES (default,'$email','$senha')';   if ($conn->query($sql) === TRUE) {   echo "New record created successfully"; } else {   echo "Error: " . $sql . "<br>" . $conn->error; }   $conn->close(); ?>
    • By Camilavip
      Boa noite, alguém por acaso sabe um modo simples de se desativar um cadastro automaticamente após um período?
      Deixa eu explicar. Eu cadastro um cliente, em que na tabela do banco de dados tem o campo "ativo" onde 1 é ativado e 0 é desativado. Então eu queria cadastrar esse cliente e o ativar, mas que no período de 30 dias por exemplo ele se desativasse sozinho.  Alguém sa8e algo simples nesse sentido?
    • By Camilavip
      Boa noite a todos, estou tendo um probleminha em gravar a senha criptografada, na verdade editar, pois quando gravo vai certo, mas na edição não está dando certo.
      A baixo quando cadastro o cliente é assim, e está indo perfeito.
       
      $nome = $_POST['nome']; $email = $_POST['email']; $login = $_POST['login']; $senha = sha1($_POST['senha']); Mas na hora da edição como está um pouco diferente estou tentando colocar esse sha1 em todo lugar e não está dando
      nome='$_POST[nome]', email='$_POST[email]', login='$_POST[login]', senha='$_POST[senha]', Então no de cima no cadastro está ok, mas na edição não sei mais aonde coloco esse sha1 para dar certo ou é burrice minha mesmo,
×

Important Information

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