Jump to content

Archived

This topic is now archived and is closed to further replies.

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

  • Similar Content

    • By babylon
      Ola amigos,
       
      Estava querendo criar algo para meu site, um botao igual do site abaixo para calcular formas de pagamento "ver formas de pagamento":
       
      https://www.chipart.com.br/pc-gamer-level-one-black-amd-3400g
       
      Segue imagem em anexo.
       
      Alguem poderia me ajudar se tem algum script algo pronto ou que ajude para abrir pop up modal?
       
      Obrigado a todos.
       
       

    • By srs1999_
      Tópico
       
      Site em Código
      Sobre desenvolver sites sem o wordpress que ja tá tudo ali feito que seja um site dinâmico ou seja com banco de dados , APIs de pagamento, Painel para o usuário ,  além de todas  as funções que tem no wordpress e você teria propriedade pra explicar sobre detalhes mais técnicos da produção onde no wordpress só quem entende de progrqmação explicaria algum detalhe técnico 
      Então usando basicamente : 
      FRONT END 
      HTML 
       CSS 
      JAVASCRIPT 
      ALGUMA DE BACKEND COMO PHP E BANCO DE DADOS
      Pode se criar sites/sistemas tão bons ou melhores que no wordpress
       
      Fato : o proprio wordpress é feito em php e ate o proprio facebook tbm em php
      Fato 2 :  cerca de 70% dos sites são feitos em Wordpress
       
      Acho esse lance de procurar o caminho mais fácil limita muito a pessoa por exemplo é facil editar imagens no paint bem intuitivo , agora para editar no photoshop com muitas outras possibilidades  acaba sendo importante ir explorando essa elaboração mais difícil  com um mesmo objetivo. No caso do exemplo ( editar imagens )  
       
      Reflexão:
      Vale a pena se dedicar a trabalhar com a ferramenta Wordpress apenas por ser um meio rápido de ganhar dinheiro ?
      Ou trabalhar sem wordpress  usando tudo que exigido pra criar coisas originais mais que não seria tão rápido a produção. Mas creio que além dos sites feitos também geraria a possibildade de vender o sistema web criado para o cliente personalizar .
       
      Você Desenvolveria de que forma :
       Wordpress apenas ?
       
      Conhecer programação pra trabalhar 
      com  Wordpress ?
       
      Produzir tudo só com programação totalmente dinâmico sem  Wordpress?
    • By violin101
      Caros amigos
       
      saudações...
       
      Peço desculpa, se postei minha dúvida em local errado.
       
      Tenho um formulário onde valido todos os campos e após clicar no BUTTON para adicionar, tenho uma função que muda o TITLE e deixa desabilitado.
       
      O problema é o seguinte:
      - caso algum campo fica em branco, após validar o formulário e mudar o BUTTON, não consigo depois de preenchido HABILITAR novamente o button.
       
      Observação:
      1) após preencher o campo que ficou em branco, como faço para HABILITAR o button novamente e mudar o title do button ?
       
       
      na VIEW está assim:
      <form action="<?php echo current_url(); ?>" id="frmEstoque" method="post" onsubmit="this.btn_adc.disabled=true;" > <div class="card-body"> <div class="row"> <!---Todos os campos do Formulário---> </div> </div> <div class="card-footer" style="text-align:center;"> <input type="hidden" id="idCli" name="idCli" value="<?php echo $cliente->idClientes; ?>" /> <a href="<?php echo base_url() ?>admin/estoque" id="" class="btn btn-danger"><i class="fa fa-undo"></i> Voltar</a> &nbsp; <button type="submit" id="btn_adc" name="btn_adc" class="btn btn-primary">Adicionar</button> </div> </form>  
      na JavaScript está assim:
      <script> //Função para Mudar o VALUE do Button Adicionar Veículo document.getElementById("btn_adc").addEventListener("click",function(){ this.innerHTML = this.value++ || 'Aguarde...'; },false); </script> /* Observação: 1) como removo a função acima, após validar o formulário e esse encontrar algum campo vazio. 2) após preencher o campo que ficou em branco, HABILITAR o button novamente. */ <script type="text/javascript"> $(document).ready(function(){ //Função para Validar Formulário $('#frmEstoque').validate({ rules :{ etq_categcars:{ required: true}, etq_destaq:{ required: true}, etq_status:{ required: true} }, messages:{ etq_categcars :{ required: '<span style="color:#ff0000;">Campo Requerido</span>'}, etq_destaq :{ required: '<span style="color:#ff0000;">Campo Requerido</span>'}, etq_status :{ required: '<span style="color:#ff0000;">Campo Requerido</span>'} }, errorClass: "help-inline", errorElement: "span", highlight:function(element, errorClass, validClass) { $(element).parents('.form-group').addClass('error'); }, unhighlight: function(element, errorClass, validClass) { $(element).parents('.form-group').removeClass('error'); $(element).parents('.form-group').addClass('success'); } }); //Status dos Botões ADICIONAR - iniciar como desabilitado. document.getElementById("btn_adc").disabled = true; }); function statusButton(){ //valida conteudo do input if ($("input[name=etq_vlrcpr]").val() != 0 && $("input[name=etq_vlrvda]").val() != 0) { //habilita o botão document.getElementById("btn_adc").disabled = false; } else { //desabilita o botão se o conteúdo do input ficar em branco document.getElementById("btn_adc").disabled = true; } } </script>  
      Grato,
       
      Cesar
       
       
       
       
    • By mateus.andriollo
      Olá,
      Gostaria de saber se alguem pode me ajudar.
      Meu PHP esta na pasta public_html em um CPanel, quero saber se é possível armazenar em pasta fora da pasta  pública, por segurança mesmo...
      Faço isso em ASP, ai chamo a imagem por um fso, funciona mas queria saber se tem como no PHP.
    • By Joob
      Boas Malta,
       
      Não sei porquê que não estou a conseguir remover os ficheiros após minutos..
      Por exemplo ele vai buscar o delete_expired_shared_links e apaga a partilha feita após o tempo colocado, mas no delete_old_zips já não apaga.
      Supostamente ele vai buscar os ficheiros da pasta zip e deveria apagar.
       
      protected function schedule(Schedule $schedule) { $schedule->call(function () { $this->delete_expired_shared_links(); })->everyMinute(); $schedule->call(function () { $this->delete_old_zips(); })->everyFiveMinutes(); // Run queue jobs every minute $schedule->command('queue:work --stop-when-empty') ->everyMinute() ->withoutOverlapping(); } protected function delete_old_zips(): void { $zips = Zip::where('created_at', '<=', Carbon::now()->subDay()->toDateTimeString())->get(); $zips->each(function ($zip) { \Storage::disk('local')->delete('zip/' . $zip->basename); $zip->delete(); }); } protected function delete_expired_shared_links(): void { $shares = Share::whereNotNull('expire_in')->get(); $shares->each(function ($share) { $created_at = Carbon::parse($share->created_at); if ($created_at->diffInHours(Carbon::now()) >= $share->expire_in) { $share->delete(); } }); } }  
      Obrigado :)
×

Important Information

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