Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal boa tarde,
estou com um probleminha chatinho tem dias e não consigo resolver,
é o seguinte eu criei um formulário em html e um envio php, recebo o e-mail e tal quando eu envio até ai tranquilo, mas quando olho meu email do formulario aparece somente
Name:
Email:
Assunto:
Mensagem:
somente isso e não aparece as informações preenchidas no formulário,
quem puder me ajudar desde já agradeço, esse problema está me deixando maluco.
segue o formulario.html
<form id="main-contact-form" name="contact-form" method="post" action="envia.php">
<div class="form-group">
<input type="text" name="nome" class="form-control" placeholder="Nome" id="nome" required>
</div>
<div class="form-group">
<input type="email" name="email" class="form-control" placeholder="E-mail" id="email" required>
</div>
<div class="form-group">
<input type="text" name="assunto" class="form-control" placeholder="Assunto" id="assunto" required>
</div>
<div class="form-group">
<textarea name="mensagem" type="text" class="form-control" rows="8" placeholder="Mensagem" id="mensagem" required></textarea>
</div>
<button type="submit" name="BTEnvia" class="btn btn-primary" value="Enviar">Enviar Formulário</button>
</form>
segue o envio.php
<?php
header('Content-type: application/json');
$status = array(
'type'=>'success',
'message'=>'E-mail Enviado!'
);
$name = @trim(stripslashes($_POST['name']));
$email = @trim(stripslashes($_POST['email']));
$assunto = @trim(stripslashes($_POST['assunto']));
$mensagem = @trim(stripslashes($_POST['mensagem']));
$email_from = $email;
$email_to = 'destinatario@formulario.com.br';
$body = 'Name: ' . $name . "\n\n" . 'Email: ' . $email . "\n\n" . 'Assunto: ' . $assunto . "\n\n" . 'Mensagem: ' . $mensagem;
$success = @mail($email_to, $assunto, $body, 'From: destinatario@formulario.com.br<'.$email_from.'>');
echo json_encode($status);
die;Tente trocar seu formulário por isso:
<form id="main-contact-form" name="contact-form" method="post" action="envia.php">
<div class="form-group">
<input type="text" name="nome" id="nome" class="form-control" placeholder="Nome" id="nome" required>
</div>
<div class="form-group">
<input type="email" name="email" id="email" class="form-control" placeholder="E-mail" id="email" required>
</div>
<div class="form-group">
<input type="text" name="assunto" id="assunto" class="form-control" placeholder="Assunto" id="assunto" required>
</div>
<div class="form-group">
<textarea name="mensagem" id="mensagem" type="text" class="form-control" rows="8" placeholder="Mensagem" id="mensagem" required></textarea>
</div>
<button type="submit" name="BTEnvia" class="btn btn-primary" value="Enviar">Enviar Formulário</button>
</form>
E tente adicionar isso no envio.php para teste:
echo $_POST['name'];
echo $_POST['email'];
echo $_POST['assunto'];
echo $_POST['mensagem'];pedropgomes e Wesley Inacio, testei ambos e não funcionou, meu email é do meu dominio mesmo, mas nas dicas dos dois deram no mesmo, recebo no email mas o preenchimento dos campos não aparecem.
pedropgomes e Wesley Inacio, testei ambos e não funcionou, meu email é do meu dominio mesmo, mas nas dicas dos dois deram no mesmo, recebo no email mas o preenchimento dos campos não aparecem.
não sei se vai fazer diferença pois tbm sou inciante mas troca o botão enviar pra essa tag:
<input type="submit" name="submit" value="Enviar"/>
Você está usando ajax para disparar este formulário? Se sim, o problema está ai.
um moderador B) ! agora resolve :D
ainda nada.
ESerraentão esse é um site de um amigo meu, ele baixou o layout da net é um site responsivo bacana, mas não veio com o envio, estou tentando varios e nada, como posso saber se tem esse ajax ??
Só pelo cabeçalho:
header('Content-type: application/json');
$status = array(
'type'=>'success',
'message'=>'E-mail Enviado!'
);
Veja no console (F12) o que de fato está sendo enviado...
Não encontrei nada disto,
encontrei esse script com o nome ajax no meio, é isso ai ??
var form = $('#main-contact-form');
form.submit(function(event){
event.preventDefault();
var form_status = $('<div class="form_status"></div>');
$.ajax({
url: $(this).attr('action'),
beforeSend: function(){
form.prepend( form_status.html('<p><i class="fa fa-spinner fa-spin"></i> Enviando e-mail...</p>').fadeIn() );
}
}).done(function(data){
form_status.html('<p class="text-success">Obrigado por entrar em contato conosco . O mais breve possível entraremos em contato com você</p>').delay(3000).fadeOut();
});
});Troque isto:
url: $(this).attr('action'),
Por:
type: "POST",
url: $(this).attr('action'),
data: $("#main-contact-form *").serialize(),
você é fóda :D B) , Agora foi belezinha o preenchimento de todos os campos menos o campo da mensagem, ele veio em branco, estava nesse form tem mais de 10 dias cara, só foi eu pedir uma ajudinha aqui no forum q você me resolveu uma boa parte do meu problema, o q pode ser esse detalhe do campo da mensagem ??
Help Me!
Dias quebrando a cabeça nesse form e ainda não resolvi o problema por completo, recebo o email do form com os campos preenchidos mas somente o campo mensagem vem em branco, ja tentei tudo que tenho conhecimento mas empaquei nessa parte.
Q probleminha chato, me ajudem aee pessoal por favor, desde já agradeço.
Estava com esse mesmo problema e resolvi com a dica do ESerra.
Porem tenho outro formulario que envia anexo e usando essa mesma tratativa ele nao envia nada.
O que pode ser?
Abra um novo tópico, conforme as Orientações e Regras do Fórum de PHP
$mensagem1="
Mensagem para atacado!
Algum vistante mandou essa mensagem!
Nome: $nome
Email: $email
cnpj: $cnpj
esse é o script que uso pra essa função, e funciona! tenta usar ele! :D
detalhe vc tem que ter um e-mail profissional para poder usar!