Jump to content
Fórum Script Brasil
  • 0

Formulário Com Campos Obrigatórios


root_slackware
 Share

Question

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 to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0

$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é ++!!

Link to comment
Share on other sites

  • 0

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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
              <input name="nome" type="text" id="nome" size="30" maxlength="30">
              &nbsp;
              <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>&nbsp;
                          <input name="empresa" type="text" id="empresa" size="30" maxlength="30">
                          </label>
                        </p>
                        <p class="style33">Cidade:
                          <label>
                          &nbsp;&nbsp;&nbsp;
                          <input name="cidade" type="text" id="cidade" size="30">
                          </label>
                        </p>
                        <p class="style33">Telefone:
                          <label>
                          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                          <input name="telefone" type="text" id="telefone" size="20">
                          </label>
                        </p>
                        <p class="style33">E-mail: 
                          <label>&nbsp;&nbsp;&nbsp;&nbsp;
                          <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("[email protected]","Formulário Recebido",$corpo); 


   
echo "<center><font face=verdana size=4>Sua mensagem foi enviada com sucesso!</font></center>";

} 
?>

Link to comment
Share on other sites

  • 0

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";

Link to comment
Share on other sites

  • 0

É 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

Link to comment
Share on other sites

  • 0

É 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

Já 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...

Link to comment
Share on other sites

  • 0

<form name="form1" method="post" action="?acao=enviar">

<span class="style33">Nome:</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input name="nome" type="text" id="nome" value="<? echo $nome ?>" size="30" maxlength="30">

&nbsp;

<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>&nbsp;

<input name="empresa" type="text" id="empresa" value="<? echo $empresa ?>" size="30" maxlength="30">

</label>

</p>

<p class="style33">Cidade:

<label>

&nbsp;&nbsp;&nbsp;

<input name="cidade" type="text" id="cidade" value="<? echo $cidade ?>" size="30">

</label>

</p>

<p class="style33">Telefone:

<label>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input name="telefone" type="text" id="telefone" value="<? echo $telefone ?>" size="20">

</label>

</p>

<p class="style33">E-mail:

<label>&nbsp;&nbsp;&nbsp;&nbsp;

<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á 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{

$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("[email protected]","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

Link to comment
Share on other sites

  • 0

você so precisa alterar

a

<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á 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>";

}

?>

que assim ele so vai concluir o envio quando todos os campos forem preenchidos

Mas 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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input name="nome" type="text" id="nome" size="30" maxlength="30">

&nbsp;

<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>&nbsp;

<input name="empresa" type="text" id="empresa" size="30" maxlength="30">

</label>

</p>

<p class="style33">Cidade:

<label>

&nbsp;&nbsp;&nbsp;

<input name="cidade" type="text" id="cidade" size="30">

</label>

</p>

<p class="style33">Telefone:

<label>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input name="telefone" type="text" id="telefone" size="20">

</label>

</p>

<p class="style33">E-mail:

<label>&nbsp;&nbsp;&nbsp;&nbsp;

<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("[email protected]","Formulário Recebido",$corpo);

echo "<center><font face=verdana size=4>Em breve entraremos em Contato!</font></center>";

}

?>

Link to comment
Share on other sites

  • 0

lê la em cima... meu post foi editado

se de um erro tipo isso

Warning: 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ê.

Link to comment
Share on other sites

  • 0

lê la em cima... meu post foi editado

se de um erro tipo isso

Warning: 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á funcionando

deu erro na linha 427 veja o código:

<?

if (!$_POST){

?>

<form name="form1" method="post" action="="?acao=enviar">

<span class="style33">Nome:</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input name="nome" type="text" id="nome" size="30" maxlength="30">

&nbsp;

<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>&nbsp;

<input name="empresa" type="text" id="empresa" size="30" maxlength="30">

</label>

</p>

<p class="style33">Cidade:

<label>

&nbsp;&nbsp;&nbsp;

<input name="cidade" type="text" id="cidade" size="30">

</label>

</p>

<p class="style33">Telefone:

<label>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input name="telefone" type="text" id="telefone" size="20">

</label>

</p>

<p class="style33">E-mail:

<label>&nbsp;&nbsp;&nbsp;&nbsp;

<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á 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{

$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("[email protected]","Formulário Recebido",$corpo);

echo "<center><font face=verdana size=4>Em breve entraremos em Contato!</font></center>";

}

?>

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      151k
    • Total Posts
      649.1k
×
×
  • Create New...