Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde pessoal, estou com um problema que é o seguinte, em um site que estou desenvolvendo tem um sistema de comentários tipo de blog, quando a pessoa envia o comentário ela vai para o banco de dados para que seja aceita ou não pelo dono do site, e envia também um e-mail par ao dono do site avisando que tem comentário novo, a questão é que quando qualquer pessoa entra na página já é enviado um e-mail automaticamente, e outro após ela enviar a mensagem, alguém pode me ajudar? segue o código PHP abaixo.
<!-- Aqui pega tudo da mensagem, nome inserido, e-mail e mensagem para enviar ao banco de dados -->
<?php
if(isset($_POST['acao']) && $_POST['acao'] == 'enviar'){
$nome = trim(strip_tags(ucwords($_POST['nome'])));
$email = trim(strip_tags($_POST['email']));
$comentario = trim(strip_tags($_POST['comentario']));
if(empty($nome) || empty($email) || empty($comentario)){
echo '<script>alert("Preencha todos os campos");</script>';
}elseif(!preg_match("/^[a-z0-9_\.\-]+@[a-z0-9_\.\-]*[a-z0-9_\-]+\.[a-z]{2,4}$/i",$email)){
echo '<script>alert("E-mail Inválido");</script>';
}else{
$status = 'nao';
$inserir = mysql_query("INSERT INTO comentarios (nome, email, comentario, status) VALUES ('$nome','$email','$comentario','$status')");
echo '<script>alert("Mensagem enviada com sucesso, e esperando aprovação dos noivos!");</script>';
}
}
?>
<!-- E aqui envia o e-mail para o dono do site -->
<?
$titulo = "Nova Mensagem do Site";
$msg = "Você acabou de receber uma nova mensagem em seu site de, $nome . Verifique o link abaixo para autorizar ou não a publicação da mesma.;
mail ( "e-maildodono@qualquercoisa.com.br",
"$titulo", "$msg" );
?>
Alguém pode me ajudar? desde já agradeço!
>
Você tem que por o envio do email junto a validação do else
else{
$status = 'nao';
$inserir = mysql_query("INSERT INTO comentarios (nome, email, comentario, status) VALUES ('$nome','$email','$comentario','$status')");
// Aqui você faz o envio do email, pois só fará o envio passando por todas as validações
$titulo = "Nova Mensagem do Site";
$msg = "Você acabou de receber uma nova mensagem em seu site de, $nome . Verifique o link abaixo para autorizar ou não a publicação da mesma.";
mail ("e-maildodono@qualquercoisa.com.br","$titulo", "$msg");
echo '<script>alert("Mensagem enviada com sucesso, e esperando aprovação dos noivos!");</script>';
}
Muito obrigado amigo, analisei e reanalisei e não tinha encontrado isso, me salvou aqui, hehehe.Abraços!
Você tem que por o envio do email junto a validação do else
else{
// Aqui você faz o envio do email, pois só fará o envio passando por todas as validações
Dentro da var $msg trate a $nome http://www.php.net/manual/pt_BR/language.types.string.php