Ir para conteúdo
Fórum Script Brasil
  • 0

Formulário de contato com combo


D31v1d1

Pergunta

Boa noite, o código abaixo é o código que criei, sou novato e estou aprendendo mas não estou conseguindo colocar no campo "Setor" um combo com 4 emails diferente para que o usuário selecione para onde quer enviar o email, por exemplo no campo setor quando clicar na seta aparecera 4 email para ele escolher, vendas, produção, financeiro e gerencia, e selecionando um destes irá enviar para o email referente a descrição mostrada.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<br /><br /><br /><br />
<img src="images/contato.png" />
<?php
/* VALIDA */
$valida = $_POST["valida"];
if($valida == "enviar"){
/* RECEBE OS DADOS DO FORMULÁRIO */
$nome = $_POST["nome"];
$email = $_POST["email"];
$assunto = $_POST["assunto"];
$tel = $_POST["tel"];
$setor = $_POST["setor"];
$mensagem = $_POST["mensagem"];
         
$msg  = "Nome :" .$nome. "\n";
$msg .= "E-mail :".$email."\n";
$msg .= "Assunto :".$assunto."\n";
$msg .= "Telefone :".$tel."\n";
$msg .= "Setor :".$setor."\n";
$msg .= "Mensagem :" .$mensagem. "\n";

if(($nome!="") and ($email!="") and ($assunto!="") and ($setor!="") and ($mensagem!="")){
   $para = array("email@email.com.br");
   for($i=0; $i<=1; $i++){
      mail($para[$i],$assunto,$msg,"From:$email");
   }
   $msguso = "<span class='destaque'>Mensagem foi enviada com sucesso, em breve retornaremos!</span>";
}
if($nome=="" || $email=="" || $assunto=="" || $setor=="" || $mensagem==""){
   $msguso = "<span class='destaque'>Os campos \" Nome, Email, Assunto, Setor e Mensagem, \" devem estar preenchidos!</span>";
}
}
?>
<br /><br /><br />
<table width="610" border="0" align="center">
  <tr>
    <td width="285" align="left">
    <span class="fontspan"><font size="2">dados de contato<br /></span>
    </td>
    <td width="285" rowspan="2" align="left"><br /><br />
    <div id="form_cont" align="right">
<form name="form_contato" action="../../exemplo/inc/?inc=_contato" method="post">
<table width="400" height="400" border="0" cellspacing="0" cellpadding="0">
<tr>
   <td width="400" height="30" align="right" valign="top" colspan="2"><?php echo $msguso; ?></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="nome">Nome: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="nome" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="email">E-mail: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="email" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="assunto">Assunto: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="assunto" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="tel">Telefone: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="tel" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="setor">Setor: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="setor" size="35"></td>
</tr>
<tr>
   <td width="50" height="160" align="right" valign="top"><label for="mensagem">Mensagem: </label></td>
   <td width="330" height="160" align="left" valign="top"><textarea name="mensagem" cols="38" rows="8" wrap="virtual"></textarea></td>
</tr>
<tr>
   <td width="50" height="60"><input type="hidden" name="valida" value="enviar" /></td>
   <td width="330" height="60" align="center" valign="top"><input name="btenviar" type="submit" value="Enviar" /></td>
</tr>
</table>
</form>
   </td>
  </tr>
  <tr>
    <td>
    <b>Veja a nossa localização no mapa abaixo</b><br />
mapa
    </td>
  </tr>
</table>
<BR /><BR />
</body>
</html>

Fico no aguardo se alguém poder me explicar passo a passo como faço isso agradeço muito.

Até mais

Link para o comentário
Compartilhar em outros sites

11 respostass a esta questão

Posts Recomendados

  • 0

olá... não entendi muito bem o que você quer... mas seria algo assim?... veja:

<select name="setor">

<option value="vendas@email.com.br">Vendas</option >

<option value="producao@email.com.br">Produ&ccedil;&atilde;o</option >

<option value="financeiro@email.com.br">Financeiro</option >

<option value="gerencia@email.com.br">Gerência</option >

</select>

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

consegui fazer algo mas não está enviando email, está ficando uma tela branca após clicar em enviar e o email não chega a caixa de entrada

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<br /><br /><br /><br />
<img src="images/contato.png" />
<?php
/* VALIDA */
$valida = (isset($_POST['valida'])) ? $_POST['valida'] : '';

if($valida == "enviar"){
/* RECEBE OS DADOS DO FORMULÁRIO */
$nome = $_POST["nome"];
$email = $_POST["email"];
$assunto = $_POST["assunto"];
$tel = $_POST["tel"];
$setor = $_POST["setor"];
$mensagem = $_POST["mensagem"];
                 
$msg  = "Nome :" .$nome. "\n";
$msg .= "E-mail :".$email."\n";
$msg .= "Assunto :".$assunto."\n";
$msg .= "Telefone :".$tel."\n";
$msg .= "Setor :".$setor."\n";
$msg .= "Mensagem :" .$mensagem. "\n";

if(($nome!="") and ($email!="") and ($assunto!="") and ($setor!="") and ($mensagem!="")){
   for($i=0; $i<=1; $i++){
      mail($setor,$assunto,$msg,"From:$email");
   }
   $msguso = "<span class='destaque'>Mensagem foi enviada com sucesso, em breve retornaremos!</span>";
}
else {
   $msguso = "<span class='destaque'>Os campos \" Nome, Email, Assunto, Setor e Mensagem, \" devem estar preenchidos!</span>";
}
}
?>
<br /><br /><br />
<table width="610" border="0" align="center">
  <tr>
    <td width="285" align="left">
    <span class="fontspan"><font size="2">dados de contato<br /></span>
    </td>
    <td width="285" rowspan="2" align="left"><br /><br />
    <div id="form_cont" align="right">
<form name="form_contato" action="../../exemplo/inc/?inc=_contato" method="post">
<table width="400" height="400" border="0" cellspacing="0" cellpadding="0">
<tr>
   <td width="400" height="30" align="right" valign="top" colspan="2"><?php echo $msguso; ?></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="nome">Nome: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="nome" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="email">E-mail: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="email" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="assunto">Assunto: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="assunto" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="tel">Telefone: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="tel" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="setor">Setor: </label></td>
   <td width="330" height="30" align="left" valign="top">
   <select name="setor" size="1" class="entrada">
  <option value="" selected="selected">-- Escolha abaixo o setor de envio --</option>
  <option value="email@site.com.br">- Financeiro</option>
  <option value="email@site.com.br">- Gerencia</option>
  <option value="email@site.com.br">- Produção</option>
  <option value="email@site.com.br">- Vendas</option>
  </select>

   </td>
</tr>
<tr>
   <td width="50" height="160" align="right" valign="top"><label for="mensagem">Mensagem: </label></td>
   <td width="330" height="160" align="left" valign="top"><textarea name="mensagem" cols="38" rows="8" wrap="virtual"></textarea></td>
</tr>
<tr>
   <td width="50" height="60"><input type="hidden" name="valida" value="enviar" /></td>
   <td width="330" height="60" align="center" valign="top"><input name="btenviar" type="submit" value="Enviar" /></td>
</tr>
</table>
</form>
   </td>
  </tr>
  <tr>
    <td>
    <b>Veja a nossa localização no mapa abaixo</b><br />
mapa
    </td>
  </tr>
</table>
<BR /><BR />
</body>
</html>

Anarquista foi mais ou menos isso que eu fiz, mas não está enviando o email

está ficando uma tela branca após clicar em enviar

Editado por D31v1d1
Link para o comentário
Compartilhar em outros sites

  • 0

tente assim:

if(($nome!="") and ($email!="") and ($assunto!="") and ($setor!="") and ($mensagem!="")){

mail($setor,$assunto,$msg,"From:$email");

$msguso = "<span class='destaque'>Mensagem foi enviada com sucesso, em breve retornaremos!</span>";

}else {

$msguso = "<span class='destaque'>Os campos \" Nome, Email, Assunto, Setor e Mensagem, \" devem estar preenchidos!</span>";

}

abraços

eu observei que você colocou na action do seu form:

<form name="form_contato" action="../../exemplo/inc/?inc=_contato" method="post">

tente colocar sem a action, já que está rodando na mesma página:

<form name="form_contato" method="post">

Link para o comentário
Compartilhar em outros sites

  • 0

funcionou usei o código

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<br /><br /><br /><br />
<img src="images/contato.png" />
<?php
/* VALIDA */
$valida = (isset($_POST['valida'])) ? $_POST['valida'] : '';

if($valida == "enviar"){
/* RECEBE OS DADOS DO FORMULÁRIO */
$nome = $_POST["nome"];
$email = $_POST["email"];
$assunto = $_POST["assunto"];
$tel = $_POST["tel"];
$setor = $_POST["setor"];
$mensagem = $_POST["mensagem"];
                
$msg  = "Nome :" .$nome. "\n";
$msg .= "E-mail :".$email."\n";
$msg .= "Assunto :".$assunto."\n";
$msg .= "Telefone :".$tel."\n";
$msg .= "Setor :".$setor."\n";
$msg .= "Mensagem :" .$mensagem. "\n";

if(($nome!="") and ($email!="") and ($assunto!="") and ($setor!="") and ($mensagem!="")){
   for($i=0; $i<=1; $i++){
      mail($setor,$assunto,$msg,"From:$email");
   }
   $msguso = "<span class='destaque'>Mensagem foi enviada com sucesso, em breve retornaremos!</span>";
}
else {
   $msguso = "<span class='destaque'>Os campos \" Nome, Email, Assunto, Setor e Mensagem, \" devem estar preenchidos!</span>";
}
}
?>
<br /><br /><br />
<table width="610" border="0" align="center">
  <tr>
    <td width="285" align="left">
    <span class="fontspan"><font size="2">dados de contato<br /></span>
    </td>
    <td width="285" rowspan="2" align="left"><br /><br />
    <div id="form_cont" align="right">
<form name="form_contato" method="post">
<table width="400" height="400" border="0" cellspacing="0" cellpadding="0">
<tr>
   <td width="400" height="30" align="right" valign="top" colspan="2"><?php echo $msguso; ?></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="nome">Nome: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="nome" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="email">E-mail: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="email" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="assunto">Assunto: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="assunto" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="tel">Telefone: </label></td>
   <td width="330" height="30" align="left" valign="top"><input type="text" name="tel" size="35"></td>
</tr>
<tr>
   <td width="50" height="30" align="right" valign="top"><label for="setor">Setor: </label></td>
   <td width="330" height="30" align="left" valign="top">
   <select name="setor" size="1" class="entrada">
  <option value="" selected="selected">-- Escolha abaixo o setor de envio --</option>
  <option value="email@site.com.br">- Financeiro</option>
  <option value="email@site.com.br">- Gerencia</option>
  <option value="email@site.com.br">- Produção</option>
  <option value="email@site.com.br">- Vendas</option>
  </select>

   </td>
</tr>
<tr>
   <td width="50" height="160" align="right" valign="top"><label for="mensagem">Mensagem: </label></td>
   <td width="330" height="160" align="left" valign="top"><textarea name="mensagem" cols="38" rows="8" wrap="virtual"></textarea></td>
</tr>
<tr>
   <td width="50" height="60"><input type="hidden" name="valida" value="enviar" /></td>
   <td width="330" height="60" align="center" valign="top"><input name="btenviar" type="submit" value="Enviar" /></td>
</tr>
</table>
</form>
   </td>
  </tr>
  <tr>
    <td>
    <b>Veja a nossa localização no mapa abaixo</b><br />
mapa
    </td>
  </tr>
</table>
<BR /><BR />
</body>
</html>
a mensagem foi enviada para o destinatario escolhido, mas está enviado 2 email iguai ao invés de apenas 1, e como eu faço para que os caracteres especiais cheguem a caixa de email corretos? setei a meta na página de contato mas não chegou correto, outra coisa estou tentando configurar o campo telefone para que ao o usuário digitar o telefone o campo só aceite numero e ele auto complete o ( ) e o - , mas ainda não consegui estou procurando algum tutorial mas não estou achando. Se alguém poder me ajudar fico grato Obrigado e até mais Consegui acertar para que envie para 1 pessoa somente, segue o código abaixo
<?php
/* VALIDA */
$valida = isset($_POST["valida"]) ? $_POST["valida"] : null;
if($valida == "enviar"){
/* RECEBE OS DADOS DO FORMULÁRIO */
$nome = $_POST["nome"];
$email = $_POST["email"];
$assunto = $_POST["assunto"];
$tel = $_POST["tel"];
$setor = $_POST["setor"];
$mensagem = $_POST["mensagem"];
                 
$msg  = "Nome: " .$nome."\n";
$msg .= "E-mail: ".$email."\n";
$msg .= "Assunto: ".$assunto."\n";
$msg .= "Fone: ".$tel."\n";
$msg .= "Setor: ".$setor."\n";
$msg .= "Mensagem: " .$mensagem."\n";

if(($nome!="") and ($assunto!="") and ($tel!="") and ($setor!="") and ($mensagem!="")){
   mail($setor,$assunto,$msg,"From:$email");
   $msguso = "<span class='destaque'>Mensagem enviada com sucesso!</span>";
}
else {
   $msguso = "<span class='destaque'> \" Nome, Assunto, Fone, Setor e Mensagem \" devem ser preenchidos!</span>";
}
}
?>

só estou com 1 problema agora os caracteres especiais "Assunto: orçamento" setei na meta da página utf-8 mas mesmo assim não foi correto e estou tentando configurar o campo telefone para que ao o usuário preencher o ele automaticamente coloque o ( ) e o - sabe como fazer isso? estou dando uma pesquisada para ver se consigo mas não achei anda até agora

Valeu pela força, fico no aguardo

Editado por D31v1d1
Link para o comentário
Compartilhar em outros sites

  • 0

Bom dia D31v1d1,

quanto a estar indo dois emails ao invés de um....tire-o dentro do for(), veja:

for($i=0; $i<=1; $i++){

mail($setor,$assunto,$msg,"From:$email");

}

deixe-o assim:

mail($setor,$assunto,$msg,"From:$email");

e sobre os caracteres estranhos mude essa linha:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

para:

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

abraços

isso chama-se máscara em javascript ... segue abaixo alguns links que o ajudarão nisso:

http://scriptbrasil.com.br/forum/index.php?showtopic=68408

Os links abaixo o SK15 indicou a um outro colega no outro tópico:

http://www.codigosnaweb.com/Cria-mascara-p...nputs/21/2/HTML

http://forum.wmonline.com.br/topic/103015-...cara-aproveite/

http://social.msdn.microsoft.com/Forums/pt...a7-48fecf9886f0

abraços

Link para o comentário
Compartilhar em outros sites

  • 0

sobre o envio ficou correto agora eu editei o post anterior, você não deve ter visto e posto depois, fiz mais ou menos o que falou e consegui configurar para os caracteres especiais, fiz esta alteração

$nome = utf8_decode(@$_POST["nome"]);
$email = utf8_decode(@$_POST["email"]);
$assunto = utf8_decode(@$_POST["assunto"]);
$tel = utf8_decode(@$_POST["tel"]);
$setor = utf8_decode(@$_POST["setor"]);
$mensagem = utf8_decode(@$_POST["mensagem"]);

agora só falta configurar o campo telefone... ufaaa!!! ta quase

vou dar uma olhada nos links que me indicou

abraço!

Link para o comentário
Compartilhar em outros sites

  • 0

outra coisa...esqueci de mencionar....

o código que está em negrito você usa dentro de seu código:

if($valida == "enviar"){

/* RECEBE OS DADOS DO FORMULÁRIO */

$nome = $_POST["nome"];

$email = $_POST["email"];

$assunto = $_POST["assunto"];

$tel = $_POST["tel"];

$setor = $_POST["setor"];

$mensagem = $_POST["mensagem"];

$meg = "MIME-Version: 1.0\r\n";

$meg .= "Content-type: text/html; charset=iso-8859-1\r\n";

$meg .= "From:$email";

$msg = "Nome :" .$nome. "\n";

$msg .= "E-mail :".$email."\n";

$msg .= "Assunto :".$assunto."\n";

$msg .= "Telefone :".$tel."\n";

$msg .= "Setor :".$setor."\n";

$msg .= "Mensagem :" .$mensagem. "\n";

if(($nome!="") and ($email!="") and ($assunto!="") and ($setor!="") and ($mensagem!="")){

$para = array("email@email.com.br");

for($i=0; $i<=1; $i++){

mail($para[$i],$assunto,$msg, $meg);

}

$msguso = "<span class='destaque'>Mensagem foi enviada com sucesso, em breve retornaremos!</span>";

}

Assim os caracteres estranhos não aparecerao...

abraços

Editado por Anarquista
Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...