LeoGomes 0 Denunciar post Postado Junho 11, 2012 Boa noite! Preciso de uma ajuda. Eu não sei programar em PHP por isso procurei na internet um formulário de contato nessa linguagem que fosse validado. Encontrei um no Baboom. Ele não está funcionando e não sei verificar se existe algum defeito no código. Gostaria que alguém aqui que soubesse pudesse me ajudar a resolver isso. Aqui vão os códigos fontes: Página salva como contato.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="pt-br"> <head> <title>Biz</title> <meta name="DC.title" content="Biz" /> <meta name="robots" content="index,follow" /> <meta name="generator" content="Notepad++" /> <meta name="rating" content="general" /> <meta http-equiv="content-language" content="pt-br" /> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" type="text/css" href="estilos.css" media="all" /> <link rel="shortcut icon" href="imagens/favicon.ico" /> </head> <body> <form action"http://www.dominio.com/enviar.php" method="post"> <fieldset> <legend>Contato</legend> <label> <span>Nome</span> <input type="text"/> </label> <label> <span>E-mail</span> <input type="text"/> </label> <label> <span>Assunto</span> <input type="text"/> </label> <label> <span>Mensagem</span> <textarea name="mensagem" cols="40" rows="10"> </textarea> </label> <input name="submit" type="submit" class="btn" value="Enviar"/> </fieldset> </form> </body> </html> Página salva como estilos.css *{ font-family:arial,verdana,trebuchet ms; } form{ width:400px; margin:0 auto; } form fieldset{ border:0; padding:5px 15px 10px 15px; } form fieldset legend{ font-size:20px; font-weight:bold; color:#888; padding:10px 0; text-align:left; } form label{ display:block; padding:3px 0; } form label span{ display:block; color:#888; font-size:11px; font-weight:bold; } form label input{ color:#888; padding:0; width:200px; } form input.btn{ display:block; width:120px; padding:5px 0px; margin:10px auto 0px; border:0px; background:#888; color:#fff; cursor:pointer; font-size:14px; } Página salva como sucesso.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="pt-br"> <head> <title>Sucesso</title> <meta name="robots" content="index,follow" /> <meta name="generator" content="Notepad++" /> <meta name="rating" content="general" /> <meta http-equiv="content-language" content="pt-br" /> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" type="text/css" href="estilos.css" media="all" /> <link rel="shortcut icon" href="imagens/favicon.ico" /> </head> <body> <script> location.href=("www.dominio.com") </script> </body> </html> E finalmente, a página em PHP que foi salva como enviar.php <title>enviando...</title><? $nome = $_POST["nome"]; $email = $_POST["email"]; $assunto = $_POST["assunto"]; $mensagem = $_POST["mensagem"]; global $email; //função para validar a variável $email no script todo $data = date("d/m/y"); //função para pegar a data de envio do e-mail $ip = $_SERVER['REMOTE_ADDR']; //função para pegar o ip do usuário $navegador = $_SERVER['HTTP_USER_AGENT']; //função para pegar o navegador do visitante $hora = date("H:i"); //para pegar a hora com a função date //aqui envia o e-mail para você mail ("email@dominio.com", //email aonde o php vai enviar os dados do form "$assunto", "Nome: $nome\nData: $data\nIp: $ip\nNavegador: $navegador\nHora: $hora\nE-mail: $email\nMensagem: $mensagem", "From: $email" ); //aqui são as configurações para enviar o e-mail para o visitante $site = "Nome do site"; //o e-mail que aparecerá na caixa postal do visitante $titulo = "Mensagem recebida"; //titulo da mensagem enviada para o visitante $msg = "$nome, Obrigado pela mensagem. Em breve responderemos."; //aqui envia o e-mail de auto-resposta para o visitante mail("$email", "$titulo", "$msg", "From: $site" ); echo ""; echo ""; ?> <script> alert("Mensagem enviada com sucesso") </script> <script> location.href=("sucesso.html") </script> A única coisa que eu gostaria era simplesmente que esse formulário funcionasse. E que quando alguém me mandasse uma mensagem aparecesse em baixo a frase: mensagem enviada com sucesso. Bem, é só isso pessoal. Agradeço imensamente quem puder me ajudar a corrigir o erro deste código em PHP. Obrigado! Abraços! Compartilhar este post Link para o post Compartilhar em outros sites
shini 318 Denunciar post Postado Junho 11, 2012 falta ; nessa linhas alert("Mensagem enviada com sucesso") location.href=("sucesso.html") Compartilhar este post Link para o post Compartilhar em outros sites
LeoGomes 0 Denunciar post Postado Junho 11, 2012 falta ; nessa linhas alert("Mensagem enviada com sucesso") location.href=("sucesso.html") Desculpe-me, eu não consegui entender o que falta. Eu ainda não entendi. Compartilhar este post Link para o post Compartilhar em outros sites
Lucas Guima 164 Denunciar post Postado Junho 11, 2012 Desculpe-me, eu não consegui entender o que falta. Eu ainda não entendi. O shini disse que faltou você indicar que a linha terminou. Compartilhar este post Link para o post Compartilhar em outros sites
LeoGomes 0 Denunciar post Postado Junho 21, 2012 O shini disse que faltou você indicar que a linha terminou. Eu não tô conseguindo. Eu queria apenas que a funcionalidade desse formulário fosse igual ao deste site: http://www.lucaspeperaio.com.br/blog/contato Compartilhar este post Link para o post Compartilhar em outros sites
Lucas Guima 164 Denunciar post Postado Junho 21, 2012 Você colocou o ; onde o shini indicou? Compartilhar este post Link para o post Compartilhar em outros sites
LeoGomes 0 Denunciar post Postado Junho 22, 2012 Você colocou o ; onde o shini indicou? Coloquei assim: alert("Mensagem enviada com sucesso"); location.href=("sucesso.html"); Mas não funcionou. Obrigado pela atenção! Compartilhar este post Link para o post Compartilhar em outros sites
ArmandoTL 0 Denunciar post Postado Junho 22, 2012 <script type="text/javascript"> alert("Mensagem enviada com sucesso"); </script> <script type="text/javascript"> location.href=("sucesso.html"); </script> Compartilhar este post Link para o post Compartilhar em outros sites
LeoGomes 0 Denunciar post Postado Julho 5, 2012 Já tentei de todas as formas informadas até o momento aqui no fórum e nada de funcionar. Se alguém puder me enviar por email agradeço muito. Compartilhar este post Link para o post Compartilhar em outros sites
Bezerk 3 Denunciar post Postado Julho 6, 2012 Esse formulário não vai funcionar assim. Está faltando os names nos inputs do formulário, assim não tem como o servidor pegar os valores dos campos. ---> action"http://www.bizcomunicacao.com/enviar.php" O action do formulário se for enviar pra outro domínio também não funciona e ainda falta o sinal de atribuição, o certo seria. action="http://www.bizcomunicacao.com/enviar.php" Desde que seja no mesmo domínio. Compartilhar este post Link para o post Compartilhar em outros sites
Vini_Aviva 13 Denunciar post Postado Julho 6, 2012 Você tem uma série de erros em HTML mas seu PHP está totalmente correto =) Segue o código concertado <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="pt-br"> <head> <title>Biz</title> <meta name="robots" content="index,follow" /> <meta name="generator" content="Notepad++" /> <meta name="rating" content="general" /> <meta http-equiv="content-language" content="pt-br" /> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" type="text/css" href="estilos.css" media="all" /> <link rel="shortcut icon" href="imagens/favicon.ico" /> </head> <body> <form action="http://www.dominio.com/enviar.php" method="post"> <fieldset> <legend>Contato</legend> <label> <span>Nome</span> <input type="text" name="nome" /> </label> <label> <span>E-mail</span> <input type="text" name="email" /> </label> <label> <span>Assunto</span> <input type="text" name="assunto" /> </label> <label> <span>Mensagem</span> <textarea name="mensagem" cols="40" rows="10"> </textarea> </label> <input name="submit" type="submit" class="btn" value="Enviar"/> </fieldset> </form> </body> </html> Compartilhar este post Link para o post Compartilhar em outros sites
LeoGomes 0 Denunciar post Postado Julho 7, 2012 Você tem uma série de erros em HTML mas seu PHP está totalmente correto =) Segue o código concertado <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="pt-br"> <head> <title>Biz</title> <meta name="robots" content="index,follow" /> <meta name="generator" content="Notepad++" /> <meta name="rating" content="general" /> <meta http-equiv="content-language" content="pt-br" /> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" type="text/css" href="estilos.css" media="all" /> <link rel="shortcut icon" href="imagens/favicon.ico" /> </head> <body> <form action="http://www.dominio.com/enviar.php" method="post"> <fieldset> <legend>Contato</legend> <label> <span>Nome</span> <input type="text" name="nome" /> </label> <label> <span>E-mail</span> <input type="text" name="email" /> </label> <label> <span>Assunto</span> <input type="text" name="assunto" /> </label> <label> <span>Mensagem</span> <textarea name="mensagem" cols="40" rows="10"> </textarea> </label> <input name="submit" type="submit" class="btn" value="Enviar"/> </fieldset> </form> </body> </html> Muito obrigado a todos pela paciência e ajuda. Até o momento não consegui encontrar a solução. Fiz o que Vini_Aviva disse. Copiei o código a página contato.html corrigido, deixei a página enviar.php inalterada e só mudei o código da página sucesso.html assim: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="pt-br"> <head> <title>Biz</title> <meta name="robots" content="index,follow" /> <meta name="generator" content="Notepad++" /> <meta name="rating" content="general" /> <meta http-equiv="content-language" content="pt-br" /> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" type="text/css" href="estilos.css" media="all" /> <link rel="shortcut icon" href="imagens/favicon.ico" /> </head> <body> <script> location.href=("http://www.dominio.com") </script> </body> </html> Acrescentei o http:// antes do www porque após a mensagem ser enviada para meu email a página de contato direcionava para a página sucesso.html que estava direcionando para a url http://bizcomunicaca...comunicacao.com que não existe. Agora está direcionando para a página inicial do domínio. Problemas que ainda persistem: o formulário não está validado. Quando clico no botão Enviar a mensagem é enviada sem validação e sem a necessidade de preenchimento dos campos. Em meu email, recebo esta mensagem: Nome: Data: 07/07/12 Ip: 192.841.44.75 Navegador: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11 Hora: 03:29 E-mail: Mensagem: Com a ajuda de vocês iremos conseguir um ótimo código validado que servirá à todos da comunidade imasters. Muito obrigado. Compartilhar este post Link para o post Compartilhar em outros sites