ADMINWEB 0 Denunciar post Postado Agosto 8, 2015 Olá pessoal no estou com problemas nesse script é o seguinte quero que quando eu enviar o formulário e-mail informar a noticia sucesso caso seja um email cadastrado, ate esta cadastrando e validando e-mail mais o problema que não esta enviando quando envio vazio mostra o alerta de invalido porem esta cadastrando os outros demais e-mail que não vem do $_POST, e a mensagem de sucesso queria que ela so exibisse quando enviasse, notei que ela esta mostrando mesmo caso da erro porém não mostra o e-mail: COMO RESOLVER ESSA BAGUNÇA, ME AJUDE POR FAVOR, DESDE MADRUGADO ESTOU EM ESSE ENIGMA RSRSR VEJAM O CÓDIGO: <meta charset="utf-8"> <?php require_once ('functions/Conexao.php'); require_once ('functions/Crud.php'); // Inclui o arquivo class.phpmailer.php localizado na pasta phpmailer require_once("envia_email/PHPMailer/class.phpmailer.php"); // Inicia a classe PHPMailer $mail = new PHPMailer(); /* Recupera senha e envia e-mail */ // Recupera os dados do formulário $login_email = utf8_decode (strip_tags(trim($_POST['login_email'])));// Recupera email informado do formulario //verifica se e-mail esta no formato correto de escrita if (!ereg('^([a-zA-Z0-9.-_])*([@])([a-z0-9]).([a-z]{2,3})',$login_email) OR empty($_POST['login_email'])){ $mensagem=' !! ERROR !!:Email inválido Verifique seu E-mail, e tente novamente!... '; echo "<script language='JavaScript'>alert('".$mensagem."');location.href='../index.php'</script>"; }else{ //Valida o dominio $dominio=explode('@',$login_email); if(!checkdnsrr($dominio[1],'A')){ $mensagem=' !! ERROR !!:Email não existe verifique seu E-mail, e tente novamente!... '; echo "<script language='JavaScript'>alert('".$mensagem."');location.href='../index.php'</script>"; } } // Selecionar banco de dados $model = new Crud; $model->select_tabela = "clientes"; $model->select_colunas = "*"; $model->conditionWHERE = "campo_email='$login_email'"; $model->listar_where(); $resultados = $model->linhas; $total = count($resultados); if ($total > 0) { foreach ($resultados as $resultados) { $nome_cliente = $resultados['campo_nome']; $cpf_cnpj_cliente = $resultados['campo_cpf_cnpj']; $login_cliente = $resultados['campo_loginuser']; $email_cliente = $resultados['campo_email']; } }else{echo '<script>alert(" !!! ERROR !!!: E-mail não encontrado em nosso sistema tente novamente!!!. ");location.href="../index.php"</script>';} function senha_aleatoria(){ $caracteres = "abcdefghijlmnopqrstuvxwz"; // Recebe concatenado o nome da pessoa + o tempo $juncao = $caracteres.time(); // Ele faz um md5 da variavel $aux e captura os 6 primeiros caracteres $senhagerada = substr(md5($juncao),0,6); return $senhagerada; } $nova_senha_cliente = md5(senha_aleatoria()); # Sé for um só cliente atualiza... $model = new Crud; $model->update_tabelas = "clientes"; $model->conditionWHERE = "campo_email='$login_email'"; $model->update_colunas = "campo_senhauser='$nova_senha_cliente'"; $model->atualizar(); $corpo ="<strong>NETMAX INTERNET RECUPERANDO SENHAS:</strong> <br /><br /> <table> <tbody> <tr> <td>Nome:</td> <td colspan='3'> $nome_cliente</td> </tr> <tr> <td>CPF:</td> <td colspan='3'> $cpf_cnpj_cliente</td> </tr> <tr> <td>E-mail:</td> <td colspan='3'> $email_cliente</td> </tr> <tr> <td>Usuário:</td> <td colspan='3'> $login_cliente</td> </tr> <tr> <td>Senha:</td> <td colspan='3'> $nova_senha_cliente</td> </tr> </tbody> </table> "; // $corpoSimples = ""; // Define os dados do servidor e tipo de conexão // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= $mail->Host = "smtp.gmail.com"; // Endereço do servidor SMTP //$mail->SMTPAuth = true; // Usa autenticação SMTP? (opcional) //$mail->Username = email@gmail.com'; // Usuário do servidor SMTP //$mail->Password = '*****'; // Senha do servidor SMTP // Define o remetente // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= $mail->From = $email_cliente; // Seu e-mail $mail->FromName = "Varlei NetMax"; // Seu nome $mail->Subject = "Recuperando senha no site da NETMAX"; // Assunto da mensagem // Define os destinatário(s) // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= //$mail->AddAddress('email1@gmail.com', 'Cleiton NetMax'); //$mail->AddCC('email2@hotmail.com', 'Ducinéia Bastos'); $mail->AddAddress('email3@hotmail.com', 'Varlei Oliveira'); // Define os dados técnicos da Mensagem // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= $mail->IsHTML(true); // Define que o e-mail será enviado como HTML $mail->CharSet = 'utf8_encode'; // Charset da mensagem (opcional) // Define a mensagem (Texto e Assunto) // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= // Informa o corpo da mensagem $mail->Body = $corpo; // Se o e-mail destino não suportar HTML ele envia o texto simples //$mail->AltBody = $corpoSimples; // Define os anexos (opcional) // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= //$mail->AddAttachment("c:/temp/documento.pdf", "novo_nome.pdf"); // Insere um anexo // Envia o e-mail $enviado = $mail->Send(); // Limpa os destinatários e os anexos $mail->ClearAllRecipients(); $mail->ClearAttachments(); // Exibe uma mensagem de resultado if ($enviado) { echo '<script>alert(" !! SUCESSO !!:Sua nova senha foi gerada e enviada para: \n E-mail: '.$email_cliente.', \n Porfavor Verifique seu E-mail... ");location.href="../index.php"</script>'; } else { echo '<script>alert(" !! ERROR !!: Atenção: Não foi possível completar o cadastro.");location.href="../index.php"</script>'. $mail->ErrorInfo; } ?> DESDE JÁ AGRADEÇO..... Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Agosto 9, 2015 A mensagem de enviado que aí está, consiste em ser disparada se o email foi enviado, e não se você recebeu o email do POST. você tem que validar a entrada de dados, você só está verificando se o email é válido ou não. Compartilhar este post Link para o post Compartilhar em outros sites
ADMINWEB 0 Denunciar post Postado Agosto 9, 2015 Obrigado Gabriel por responder, deu uma melhorada no código, agora o problema é o seguinte não está enviando o E-mail, está cadastrando no banco de dados, um erro meu não tinha notado há campos vazios no bando por isso cadastrava mesmo sem passar o e-mail, também verifiquei que o $_POST esta recebendo o valor e-mail dando um var_dump($login_email);. O problema também é que mesmo que eu não passo valor no post me mostra a mensagem sucesso como resolver isso? Obrigado novamente!!! Compartilhar este post Link para o post Compartilhar em outros sites
ADMINWEB 0 Denunciar post Postado Agosto 9, 2015 A mensagem de enviado que aí está, consiste em ser disparada se o email foi enviado, e não se você recebeu o email do POST. você tem que validar a entrada de dados, você só está verificando se o email é válido ou não. Obrigado Gabriel por responder, deu uma melhorada no código, agora o problema é o seguinte não está enviando o E-mail, está cadastrando no banco de dados, um erro meu não tinha notado há campos vazios no bando por isso cadastrava mesmo sem passar o e-mail, também verifiquei que o $_POST esta recebendo o valor e-mail dando um var_dump($login_email);. O problema também é que mesmo que eu não passo valor no post me mostra a mensagem sucesso como resolver isso? Obrigado novamente!!! Compartilhar este post Link para o post Compartilhar em outros sites
ADMINWEB 0 Denunciar post Postado Agosto 9, 2015 Segue o corregido tudo certo ao não se a mensagem de alerta SUCESSO mostra mesmo que não haja E-mail como resolver? <meta charset="utf-8"><?phprequire_once ('functions/Conexao.php');require_once ('functions/Crud.php');// Inclui o arquivo class.phpmailer.php localizado na pasta phpmailerrequire_once("envia_email/PHPMailer/class.phpmailer.php");// Inicia a classe PHPMailer$mail = new PHPMailer();/* Recupera senha e envia e-mail */// Recupera os dados do formulário$login_email = utf8_decode (strip_tags(trim($_POST['login_email'])));// Recupera email informado do formulario//verifica se e-mail esta no formato correto de escritaif (!ereg('^([a-zA-Z0-9.-_])*([@])([a-z0-9]).([a-z]{2,3})',$login_email) OR empty($_POST['login_email'])){$mensagem=' !! ERROR !!:Email inválido Verifique seu E-mail, e tente novamente!... ';echo "<script language='JavaScript'>alert('".$mensagem."');location.href='../index.php'</script>";}else{//Valida o dominio$dominio=explode('@',$login_email);if(!checkdnsrr($dominio[1],'A')){$mensagem=' !! ERROR !!:Email não existe verifique seu E-mail, e tente novamente!... ';echo "<script language='JavaScript'>alert('".$mensagem."');location.href='../index.php'</script>";}}// Selecionar banco de dados$model = new Crud;$model->select_tabela = "clientes";$model->select_colunas = "*";$model->conditionWHERE = "campo_email='$login_email'";$model->listar_where();$resultados = $model->linhas;$total = count($resultados);if ($total > 0) {foreach ($resultados as $resultados) {$nome_cliente = $resultados['campo_nome'];$cpf_cnpj_cliente = $resultados['campo_cpf_cnpj'];$login_cliente = $resultados['campo_loginuser'];$email_cliente = $resultados['campo_email'];}}else{echo '<script>alert(" !!! ERROR !!!: E-mail não encontrado em nosso sistema tente novamente!!!. ");location.href="../index.php"</script>';}function senha_aleatoria(){$caracteres = "abcdefghijlmnopqrstuvxwz";// Recebe concatenado o nome da pessoa + o tempo$juncao = $caracteres.time();// Ele faz um md5 da variavel $aux e captura os 6 primeiros caracteres$senhagerada = substr(md5($juncao),0,6);return $senhagerada;}$nova_senha_cliente = md5(senha_aleatoria());# Sé for um cliente como um E-mail existe no banco atualiza...$model = new Crud;$model->update_tabelas = "clientes";$model->conditionWHERE = "campo_email='$login_email'";$model->update_colunas = "campo_senhauser='$nova_senha_cliente'";$model->atualizar();$corpo ="<strong>NETMAX INTERNET RECUPERANDO SENHAS:</strong> <br /><br /><table align='left' border='0' cellpadding='3' cellspacing='1' style='width: 480px;'><tbody><tr><td scope='col' valign='middle'><p align='right'><span style='color: #003366;'><strong><span style='font-family: arial, helvetica, sans-serif;'>Nome do cliente:</span></strong></span> </p></td><td scope='col' valign='middle'><p><strong><span style='font-family: arial, helvetica, sans-serif;'> $nome_cliente</span></strong></p></td></tr><tr><td scope='col' valign='middle'><p align='right'><span style='color: #003366;'><strong><span style='font-family: arial, helvetica, sans-serif;'>CPF do cliente:</span></strong></span> </p></td><td scope='col' valign='middle'><p><strong><span style='font-family: arial, helvetica, sans-serif;'> $cpf_cnpj_cliente</span></strong></p></td></tr><tr><td scope='col' valign='middle'><p align='right'><span style='color: #003366;'><strong><span style='font-family: arial, helvetica, sans-serif;'>EMAIL do Cliente:</span></strong></span></p></td><td scope='col' valign='middle'><p><strong><span style='font-family: arial, helvetica, sans-serif;'> $email_cliente</span></strong></p></td></tr><tr><td scope='col' valign='middle'><p align='right'><span style='color: #003366;'><strong><span style='font-family: arial, helvetica, sans-serif;'>Usuário de acesso:</span> </strong></span></p></td><td scope='col' valign='middle'><p><strong><span style='font-family: arial, helvetica, sans-serif;'> $login_cliente</span></strong></p></td></tr><tr><td scope='col' valign='middle'><p align='right'><span style='color: #003366;'><strong><span style='font-family: arial, helvetica, sans-serif;'>Senha de acesso:</span></strong></span></p></td><td scope='col' valign='middle'><p><strong><span style='font-family: arial, helvetica, sans-serif;'> $nova_senha_cliente</span></strong></p></td></tr></tbody></table>";$corpoSimples = "<b>Nome:<b> $nome_cliente <br /><b>CPF:<b> $cpf_cnpj_cliente <br /><b>E-mail:<b> $email_cliente <br /><b>Usuário:<b> $login_cliente <br /><b>Senha:<b> $nova_senha_cliente <br />";// Define os dados do servidor e tipo de conexão// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=$mail->Host = "smtp.gmail.com"; // Endereço do servidor SMTP$mail->SMTPAuth = true; // Usa autenticação SMTP? (opcional)$mail->Username = 'emaildo@gmail.com'; // Usuário do servidor SMTP$mail->Password = '****'; // Senha do servidor SMTP// Define o remetente// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=$mail->From = "emaildo@gmail.com"; // Seu e-mail$mail->FromName = "Varlei NetMax"; // Seu nome$mail->Subject = "Recuperando senha no site da NETMAX"; // Assunto da mensagem// Define os destinatário(s)// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//$mail->AddAddress('email1@gmail.com', 'Cleiton NetMax');//$mail->AddCC('email2@hotmail.com', 'Ducinéia Bastos');$mail->AddAddress($email_cliente, $nome_cliente);// Define os dados técnicos da Mensagem// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=$mail->IsHTML(true); // Define que o e-mail será enviado como HTML$mail->CharSet = 'utf8_encode'; // Charset da mensagem (opcional)// Define a mensagem (Texto e Assunto)// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=// Informa o corpo da mensagem$mail->Body = $corpo;// Se o e-mail destino não suportar HTML ele envia o texto simples$mail->AltBody = $corpoSimples;// Define os anexos (opcional)// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//$mail->AddAttachment("c:/temp/documento.pdf", "novo_nome.pdf"); // Insere um anexo// Envia o e-mail$enviado = $mail->Send();// Limpa os destinatários e os anexos$mail->ClearAllRecipients();$mail->ClearAttachments();// Exibe uma mensagem de resultadoif ($enviado) {echo '<script>alert(" !! SUCESSO !!:Sua nova senha foi gerada e enviada para: \n E-mail: '.$email_cliente.', \n Porfavor Verifique seu E-mail... ");location.href="../index.php"</script>';} else {echo '<script>alert(" !! ERROR !!: Atenção: Não foi possível completar o cadastro.");location.href="../index.php"</script>'. $mail->ErrorInfo;}?> Compartilhar este post Link para o post Compartilhar em outros sites
ADMINWEB 0 Denunciar post Postado Agosto 9, 2015 A mensagem de enviado que aí está, consiste em ser disparada se o email foi enviado, e não se você recebeu o email do POST. você tem que validar a entrada de dados, você só está verificando se o email é válido ou não. if ($_POST['login_email'] == $email_cliente){ // Envia o e-mail $enviado = $mail->Send(); // Limpa os destinatários e os anexos $mail->ClearAllRecipients(); $mail->ClearAttachments(); RESOLVIDO OBRIGADO GABRIEL POR ME AJUDAR A ABRIR A MENTE FIZ ESSA MODIFICAÇÃO VEJA: // Exibe uma mensagem de resultado if ($enviado) { echo '<script>alert(" !! SUCESSO !!:Sua nova senha foi gerada e enviada para: \n E-mail: '.$email_cliente.', \n Porfavor Verifique seu E-mail... ");location.href="../index.php"</script>'; } else { echo '<script>alert(" !! ERROR !!: Atenção: Não foi possível completar o cadastro.");location.href="../index.php"</script>'. $mail->ErrorInfo; } } Compartilhar este post Link para o post Compartilhar em outros sites