Autor Tópico: [formulario php com checkbox]  (Lida 2572 vezes)

Offline gersonab

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[formulario php com checkbox]
« em: Fevereiro 22, 2008, 02:15:58 pm »
Galera, bom dia.
tenho um formulario para envio de email , do tipo contato que funciona perfeitamente, agora acrecentei nele alguns dados a mais , como radio e checkbox, a parte do rádio eu fiz sem problemas, o q esta acontecendo é que não consigo enviar os dados do checkbox , quando envia vai somente 1 item , sendo que estes são de multipla escolha, isto é uma pergunta e varias respostas, podendo escolher 1 a quantas quiser.

Em resumo a parte de checkbox do meu form.html estaria assim :


Código: [Seleccione]
<td><label>Caracteristicas do local :</label></td>

</tr>

<tr>

<td><div align="left">

<table align="center" width="375" border="0">

<tr>

<td width="125"><input type="checkbox" name="local" value="Bar,Lanchonete"  />

Bar,Lanchonete</td>

<td width="125"><input type="checkbox" name="local" value="Restaurante" />

Restaurante</td>

<td width="125"><input type="checkbox" name="local" value="Supermercado" />

Supermercado</td>

</tr>

Acima esta resumido , este item de "caracteristica do local " tem 8 respostas, podendo escolher mais de uma, o que eu quero é que ele me retorne todos os checkbox marcados , e não apenas um.

no meu formulario.php estaria assim ...


Código: [Seleccione]
<?php

$nome = $_POST[\\'nome\\']." n";

$email = $_POST[\\'email\\']." n";

$mensagem = "Nome: ".$_POST[\\'nome\\']." n";

$mensagem .= "Tel: ".$_POST[\\'tel\\']." n";

$mensagem .= "Cidade: ".$_POST[\\'cidade\\']." n";

$mensagem .= "Email: ".$_POST[\\'email\\']." n";

$mensagem .= "Assunto: ".$_POST[\\'assunto\\']." n";

$mensagem .= "Descrição:". $_POST[\\'mensagem\\'];

$headers .="From:$nomern";

mail("meu email", "Formulário - ", $mensagem , $headers);



?>

<table align="center" width="250" border="2" bgcolor="#F4F4F4"><tr><td align="center">

<?

echo \\'<h3>Enviado com Sucesso!</h3>\\';

echo \\'<h3>Em breve entraremos em contato.</h3>\\';

?>

<br />

<a href="../principal.php" target="centro"> Voltar </a>

</td></tr></table>


Falta acrecentar o item do checkbox .

encontrei isto na net ...



Citar
checkbox.html

<form action="checkbox.php" method="post">
<B>Escolha os numeros de sua preferência:</B>

<input type=checkbox name="numeros[]" value=10> 10

<input type=checkbox name="numeros[]" value=100> 100

<input type=checkbox name="numeros[]" value=1000> 1000

<input type=checkbox name="numeros[]" value=10000> 10000

<input type=checkbox name="numeros[]" value=90> 90

<input type=checkbox name="numeros[]" value=50> 50

<input type=checkbox name="numeros[]" value=30> 30

<input type=checkbox name="numeros[]" value=15> 15
<BR>
<input type=checkbox name="news" value=1> <B>Receber
Newsletter?</B>
<BR>
<input type=submit>
</form>

checkbox.php

<?php
// Verifica se usuário escolheu algum número
if(isset($_POST["numeros"]))
{
echo "Os números de sua preferência são:<BR>";

// Faz loop pelo array dos numeros
foreach($_POST["numeros"] as $numero)
{
echo "- " . $numero . "<BR>";
}
}
else
{
echo "Você não escolheu número preferido!
";
}

// Verifica se usuário quer receber newsletter
if(isset($_POST["news"]))
{
echo "Você deseja receber as novidades por email!";
}
else
{
echo "Você não quer receber novidades por email...";
}
?>

só não entendi como colocar no meu formulário.php , para que saia dentro da $mensagem

Offline cgoncalves

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[formulario php com checkbox]
« Responder #1 em: Fevereiro 22, 2008, 08:24:56 pm »
Código HTML

Código: [Seleccione]
<td><label>Caracteristicas do local :</label></td>

</tr>

<tr>

<td><div>

<table align="center" width="375" border="0">

<tr>

<td><input>

Bar,Lanchonete</td>

<td><input>

Restaurante</td>

<td><input>

Supermercado</td>

</tr>

Ou seja, local[] passa a ser a variável tipo array que vai guardar as opções do checkbox.

Depois no php colocas:

$local= array(urldecode(implode(" , ",$_GET["local"])));

if(isset($_POST["local"]))
{
$local= implode(", ", $_POST["local"]);
}

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49