root_slackware Postado Dezembro 19, 2006 Denunciar Share Postado Dezembro 19, 2006 Boa Noite Colegas;Espero que possam me ajudar.Quero criar um formulário em php com as seguintes campos:Empresa:Nome:Cidade:E-mail:Telefone:Mensagem:Mas que se usuário tenta enviar o formulário em branco, surja uma mensagem que todos os campos tenham de ser preenchidos.E depois que o formulário for enviado, que seja redirecionada uma página de agradecimento.E gostaria também que vocês me sugerissem um bom livro de php para iniciante.Muito obrigado pela atenção a mim dispensada... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Dezembro 19, 2006 Denunciar Share Postado Dezembro 19, 2006 Veja se ajuda:http://scriptbrasil.com.br/forum/index.php?showtopic=82939[]'s Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Samurai_X_ Postado Dezembro 19, 2006 Denunciar Share Postado Dezembro 19, 2006 $empresa = $_POST['empresa']; $nome = $_POST['nome']; //e os outros campos do seu formulario. //agora, vai verificar se as variaveis pegas do seu formulario são vazias ou não...se forem, irão mostrar uma msg e retornar para o formulario para preenchimento if(!$empresa || !$nome || e o restante das variaveis do formulario){ echo "<script>window.alert('Todos os campos são de preenchimento obrigatório')</script>"; echo "<script>window.location='java script:history.back();'</script>"; }else{ //restante do codigo!!espero que ajude!! abraços!! té ++!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 root_slackware Postado Dezembro 19, 2006 Autor Denunciar Share Postado Dezembro 19, 2006 Cara eu sou novo em código, or isto estou pedindo uma ajuda, veja como ficou meu código...Ele envia normalmente, mas ele ainda permite campos em brancos <? if (!$_POST){ ?> <form name="form1" method="post" action="contact.php"> <span class="style33">Nome:</span> <input name="nome" type="text" id="nome" size="30" maxlength="30"> <label></label> <p><span class="style34"><span class="style32">Empresa:</span> <label> </label> </span> <span class="style38"> <label> </label> </span><span class="style35"><label></label> </span> <label> <input name="empresa" type="text" id="empresa" size="30" maxlength="30"> </label> </p> <p class="style33">Cidade: <label> <input name="cidade" type="text" id="cidade" size="30"> </label> </p> <p class="style33">Telefone: <label> <input name="telefone" type="text" id="telefone" size="20"> </label> </p> <p class="style33">E-mail: <label> <input name="email" type="text" id="email" size="30"> </label> </p> <p class="style33">Mensagem: <label> <textarea name="mensagem" cols="30" rows="2" id="mensagem"></textarea> </label> </p> <p class="style33"> <label> <input name="enviar" type="submit" id="enviar" value="Enviar"> </label> </p> </form> <script> function envia() { var campo = document.form; if(campo.empresa.value=="" || campo.nome.value=="" || campo.cidade.value=="" || campo.email.value=="" || campo.telefone.value=="" || campo.mensagem.value=="") { window.alert("Preencha todos os campos"); return false; } } </script> <? }else{ $corpo .= "Formulário enviado\n"; $corpo .= "Nome: " . $_POST["nome"] . "\n"; $corpo .= "Empresa: " . $_POST["empresa"] . "\n"; $corpo .= "Cidade: " . $_POST["cidade"] . "\n"; $corpo .= "Email: " . $_POST["email"] . "\n"; $corpo .= "Telefone:". $_POST["telefone"] ."\n"; $corpo .= "Mensagem: " . $_POST["mensagem"] . "\n"; mail("atendimento@hardnetonline.com","Formulário Recebido",$corpo); echo "<center><font face=verdana size=4>Sua mensagem foi enviada com sucesso!</font></center>"; } ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Dezembro 19, 2006 Denunciar Share Postado Dezembro 19, 2006 Veja estas funções:http://br.php.net/issethttp://br.php.net/empty if (!isset($_POST['campo'])) //campo não preenchido //ou if (empty($_POST['campo'])) //campo não preenchido []'s Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 root_slackware Postado Dezembro 19, 2006 Autor Denunciar Share Postado Dezembro 19, 2006 Veja estas funções:http://br.php.net/issethttp://br.php.net/empty if (!isset($_POST['campo'])) //campo não preenchido //ou if (empty($_POST['campo'])) //campo não preenchido []'sMas em que parte do meu código eu coloco estes comando??????? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Dezembro 19, 2006 Denunciar Share Postado Dezembro 19, 2006 else{ //Aqui!, para que os dados sejam verificados antes de montar a mensagem e enviar o e-mail $corpo .= "Formulário enviado\n"; $corpo .= "Nome: " . $_POST["nome"] . "\n"; $corpo .= "Empresa: " . $_POST["empresa"] . "\n"; $corpo .= "Cidade: " . $_POST["cidade"] . "\n"; $corpo .= "Email: " . $_POST["email"] . "\n"; $corpo .= "Telefone:". $_POST["telefone"] ."\n"; $corpo .= "Mensagem: " . $_POST["mensagem"] . "\n"; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Alexandre BSB Postado Dezembro 19, 2006 Denunciar Share Postado Dezembro 19, 2006 É muito importante que se faça a verificação em php e em javascript.no seu caso...você pode alterar isso: <form name="form1" method="post" action="contact.php">para isto: <form name="form1" method="post" action="?acao=enviar">e incluir isto em seu código:<?php if($_GET['acao'] == "enviar"){ // Recebendo dados do formulário $nome = $_POST['nome']; $mensagem = $_POST['mensagem']; $email = $_POST['email']; $telefone = $_POST['telefone']; $cidade = $_POST['cidade']; $empresa = $_POST['empresa']; $validade = true; // testando se os campos estão em branco /* o comando empty testa se a variável está vazia também existe a função isset($var) que testa se ele foi setada. */if(empty($nome) OR empty($mensagem) OR empty($mensagem) OR empty($email) OR empty($telefone) OR empty($cidade) OR empty($empresa)){ echo "<script> alert('Preencha todos os campos antes de conitnuar') </script>"; }else{ // Condição para enviar dados. echo "<script> alert('aqui os dados serão enviados') </script>"; }?>seria uma solução Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 root_slackware Postado Dezembro 19, 2006 Autor Denunciar Share Postado Dezembro 19, 2006 É muito importante que se faça a verificação em php e em javascript.no seu caso...você pode alterar isso: <form name="form1" method="post" action="contact.php">para isto: <form name="form1" method="post" action="?acao=enviar">e incluir isto em seu código:<?php if($_GET['acao'] == "enviar"){ // Recebendo dados do formulário $nome = $_POST['nome']; $mensagem = $_POST['mensagem']; $email = $_POST['email']; $telefone = $_POST['telefone']; $cidade = $_POST['cidade']; $empresa = $_POST['empresa']; $validade = true; // testando se os campos estão em branco /* o comando empty testa se a variável está vazia também existe a função isset($var) que testa se ele foi setada. */if(empty($nome) OR empty($mensagem) OR empty($mensagem) OR empty($email) OR empty($telefone) OR empty($cidade) OR empty($empresa)){ echo "<script> alert('Preencha todos os campos antes de conitnuar') </script>"; }else{ // Condição para enviar dados. echo "<script> alert('aqui os dados serão enviados') </script>"; }?>seria uma soluçãoJá formam tantas modificações que eu efetuei neste código que eu estou até perdido!!!´Por favor me dê uma luz me mostre o código inteiro... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Alexandre BSB Postado Dezembro 19, 2006 Denunciar Share Postado Dezembro 19, 2006 <form name="form1" method="post" action="?acao=enviar"> <span class="style33">Nome:</span> <input name="nome" type="text" id="nome" value="<? echo $nome ?>" size="30" maxlength="30"> <label></label> <p><span class="style34"><span class="style32">Empresa:</span> <label> </label> </span> <span class="style38"> <label> </label> </span><span class="style35"><label></label> </span> <label> <input name="empresa" type="text" id="empresa" value="<? echo $empresa ?>" size="30" maxlength="30"> </label> </p> <p class="style33">Cidade: <label> <input name="cidade" type="text" id="cidade" value="<? echo $cidade ?>" size="30"> </label> </p> <p class="style33">Telefone: <label> <input name="telefone" type="text" id="telefone" value="<? echo $telefone ?>" size="20"> </label> </p> <p class="style33">E-mail: <label> <input name="email" type="text" id="email" value="<? echo $email ?>" size="30"> </label> </p> <p class="style33">Mensagem: <label> <textarea name="mensagem" cols="30" rows="2" id="mensagem"><? echo $mensagem ?></textarea> </label> </p> <p class="style33"> <label> <input name="enviar" type="submit" id="enviar" value="Enviar"> </label> </p> </form> <script>function envia() {var campo = document.form;if(campo.empresa.value=="" || campo.nome.value=="" || campo.cidade.value=="" || campo.email.value=="" || campo.telefone.value=="" || campo.mensagem.value=="") {window.alert("Preencha todos os campos");return false;}}</script><?php if($_GET['acao'] == "enviar"){// Recebendo dados do formulário$nome = $_POST['nome'];$mensagem = $_POST['mensagem'];$email = $_POST['email'];$telefone = $_POST['telefone'];$cidade = $_POST['cidade'];$empresa = $_POST['empresa'];$validade = true;// testando se os campos estão em branco/*o comando empty testa se a variável está vaziatambém existe a função isset($var) que testa se ele foi setada.*/ if(empty($nome) OR empty($mensagem) OR empty($mensagem) OR empty($email) OR empty($telefone) OR empty($cidade) OR empty($empresa)){ echo "<script> alert('Preencha todos os campos antes de conitnuar') </script>"; }else{ $corpo .= "Formulário enviado\n"; $corpo .= "Nome: " . $_POST["nome"] . "\n"; $corpo .= "Empresa: " . $_POST["empresa"] . "\n"; $corpo .= "Cidade: " . $_POST["cidade"] . "\n"; $corpo .= "Email: " . $_POST["email"] . "\n"; $corpo .= "Telefone:". $_POST["telefone"] ."\n"; $corpo .= "Mensagem: " . $_POST["mensagem"] . "\n"; mail("atendimento@hardnetonline.com","Formulário Recebido",$corpo); echo "<center><font face=verdana size=4>Sua mensagem foi enviada com sucesso!</font></center>"; } }?>de um ctrl+c e ctrl+v e pronto Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 root_slackware Postado Dezembro 19, 2006 Autor Denunciar Share Postado Dezembro 19, 2006 você so precisa alterara<form name="form1" method="post" action="?acao=enviar">e incluir <?php if($_GET['acao'] == "enviar"){// Recebendo dados do formulário$nome = $_POST['nome'];$mensagem = $_POST['mensagem'];$email = $_POST['email'];$telefone = $_POST['telefone'];$cidade = $_POST['cidade'];$empresa = $_POST['empresa'];$validade = true;// testando se os campos estão em branco/*o comando empty testa se a variável está vaziatambém existe a função isset($var) que testa se ele foi setada.*/if(empty($nome) OR empty($mensagem) OR empty($mensagem) OR empty($email) OR empty($telefone) OR empty($cidade) OR empty($empresa)){echo "<script> alert('Preencha todos os campos antes de conitnuar') </script>"; }else{// Condição para enviar dados.echo "<script> alert('aqui os dados serão enviados') </script>"; }?>que assim ele so vai concluir o envio quando todos os campos forem preenchidosMas em que local deo meu código eu incluo este script????e este script em azul está correto, por favor, não quero que pense que estou me aproveitando, mas dê uma conferida no meu código...<? if (!$_POST){ ?> <form name="form1" method="post" action="="contact.php"> <span class="style33">Nome:</span> <input name="nome" type="text" id="nome" size="30" maxlength="30"> <label></label> <p><span class="style34"><span class="style32">Empresa:</span> <label> </label> </span> <span class="style38"> <label> </label> </span><span class="style35"><label></label> </span> <label> <input name="empresa" type="text" id="empresa" size="30" maxlength="30"> </label> </p> <p class="style33">Cidade: <label> <input name="cidade" type="text" id="cidade" size="30"> </label> </p> <p class="style33">Telefone: <label> <input name="telefone" type="text" id="telefone" size="20"> </label> </p> <p class="style33">E-mail: <label> <input name="email" type="text" id="email" size="30"> </label> </p> <p class="style33">Mensagem: <label> <textarea name="mensagem" cols="30" rows="2" id="mensagem"></textarea> </label> </p> <p class="style33"> <label> <input name="enviar" type="submit" id="enviar" value="Enviar"> </label> </p> </form><? }else{ $corpo .= "Formulário enviado\n"; $corpo .= "Nome: " . $_POST["nome] . "\n"; $corpo .= "Empresa: " . $_POST["empresa"] . "\n"; $corpo .= "Cidade: " . $_POST["cidade"] . "\n"; $corpo .= "Email: " . $_POST["email"] . "\n"; $corpo .= "Telefone:". $_POST["telefone"] ."\n"; $corpo .= "Mensagem: " . $_POST["mensagem"] . "\n"; mail("atendimento@hardnetonline.com","Formulário Recebido",$corpo); echo "<center><font face=verdana size=4>Em breve entraremos em Contato!</font></center>";} ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Alexandre BSB Postado Dezembro 19, 2006 Denunciar Share Postado Dezembro 19, 2006 lê la em cima... meu post foi editadose de um erro tipo issoWarning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" .....é porque você tem que configurar seu servidor de email. provavelmente se você hospedar seu site em um provedor tipo brturbo ele funcione, pois o php la já está configurado pra você. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 root_slackware Postado Dezembro 19, 2006 Autor Denunciar Share Postado Dezembro 19, 2006 lê la em cima... meu post foi editadose de um erro tipo issoWarning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" .....é porque você tem que configurar seu servidor de email. provavelmente se você hospedar seu site em um provedor tipo brturbo ele funcione, pois o php la já está configurado pra você.Não está funcionandodeu erro na linha 427 veja o código:<? if (!$_POST){ ?> <form name="form1" method="post" action="="?acao=enviar"> <span class="style33">Nome:</span> <input name="nome" type="text" id="nome" size="30" maxlength="30"> <label></label> <p><span class="style34"><span class="style32">Empresa:</span> <label> </label> </span> <span class="style38"> <label> </label> </span><span class="style35"><label></label> </span> <label> <input name="empresa" type="text" id="empresa" size="30" maxlength="30"> </label> </p> <p class="style33">Cidade: <label> <input name="cidade" type="text" id="cidade" size="30"> </label> </p> <p class="style33">Telefone: <label> <input name="telefone" type="text" id="telefone" size="20"> </label> </p> <p class="style33">E-mail: <label> <input name="email" type="text" id="email" size="30"> </label> </p> <p class="style33">Mensagem: <label> <textarea name="mensagem" cols="30" rows="2" id="mensagem"></textarea> </label> </p> <p class="style33"> <label> <input name="enviar" type="submit" id="enviar" value="Enviar"> </label> </p> </form> <script>function envia() {var campo = document.form;if(campo.empresa.value=="" || campo.nome.value=="" || campo.cidade.value=="" || campo.email.value=="" || campo.telefone.value=="" || campo.mensagem.value=="") {window.alert("Preencha todos os campos");return false;}}</script> <? if($_GET['acao'] == "enviar"){// Recebendo dados do formulário$nome = $_POST['nome'];$mensagem = $_POST['mensagem'];$email = $_POST['email'];$telefone = $_POST['telefone'];$cidade = $_POST['cidade'];$empresa = $_POST['empresa'];$validade = true;// testando se os campos estão em branco/*o comando empty testa se a variável está vaziatambém existe a função isset($var) que testa se ele foi setada.*/if(empty($nome) OR empty($mensagem) OR empty($mensagem) OR empty($email) OR empty($telefone) OR empty($cidade) OR empty($empresa)){echo "<script> alert('Preencha todos os campos antes de conitnuar') </script>"; }else{ $corpo .= "Formulário enviado\n"; $corpo .= "Nome: " . $_POST["nome"] . "\n"; $corpo .= "Empresa: " . $_POST["empresa"] . "\n"; $corpo .= "Cidade: " . $_POST["cidade"] . "\n"; $corpo .= "Email: " . $_POST["email"] . "\n"; $corpo .= "Telefone:". $_POST["telefone"] ."\n"; $corpo .= "Mensagem: " . $_POST["mensagem"] . "\n"; mail("atendimento@hardnetonline.com","Formulário Recebido",$corpo); echo "<center><font face=verdana size=4>Em breve entraremos em Contato!</font></center>";} ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Dezembro 20, 2006 Denunciar Share Postado Dezembro 20, 2006 Você abriu a chave do if (!$_POST) e não a fechou.Você concatenou a variável $corpo antes de criá-la.[]'s Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Alexandre BSB Postado Dezembro 20, 2006 Denunciar Share Postado Dezembro 20, 2006 O seu código está diferente do que eu postei la em cima.<? if (!$_POST){ ?> <form name="form1" method="post" action="="?acao=enviar"> Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
root_slackware
Boa Noite Colegas;
Espero que possam me ajudar.
Quero criar um formulário em php com as seguintes campos:
Empresa:
Nome:
Cidade:
E-mail:
Telefone:
Mensagem:
Mas que se usuário tenta enviar o formulário em branco, surja uma mensagem que todos os campos tenham de ser preenchidos.
E depois que o formulário for enviado, que seja redirecionada uma página de agradecimento.
E gostaria também que vocês me sugerissem um bom livro de php para iniciante.
Muito obrigado pela atenção a mim dispensada...
Link para o comentário
Compartilhar em outros sites
14 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.