CHECK BOX

Enviada por Rafael Fragoso 
Rafael Fragoso
CHECK BOX
20 de May de 2001 às 05:23PM
Estou com um PROBLEM, tenho um form com 3 check box de nomes iguais "opc" e valores diferentes "1", "2", "3" soh que quando meu form envia o email soh chega o valor do ultimo check box mesmo eu tendo clicado os 3 entenderam?? Abaixo vai meu codigo do form e do PHP
Se alguém puder me ajudar ficaria muito GRATO!!
PS: Estou estudando PHP a 2 dias e adorei essa LINGUAGEM!!!! BACANA PACAS!!!


FORM CODE

<form action="sent2.php" method="post">
<input type=hidden name="manda" value="1">
<p> email
<input type="text" name="email">
<br>
nome
<input type="text" name="nome">
<br>
mensagem
<textarea name="msg"></textarea>
<br>
<input type="checkbox" name="opc" value="revista1">
<br>
<input type="checkbox" name="opc" value="revista2">
<br>
<input type="checkbox" name="opc" value="revista3">
<br>
<input type="submit" name="enviar" value="enviar">
</p>
</form>

PHP CODE

<?
if ( $manda == 1 ) {
if ( $nome != "" && $email != "" && $msg != "" ) {
$msg = "$nome escreveu:\n\n$msg\n\n$opc";
$mais = "From: $email";

mail("rafael.fragoso@globo.com","Assinatura","$msg","$mais");
echo("Obrigado por enviar este formulário!");
} else
echo("Não foi possível enviar o formulário!");
}


?>
Márcio
Re: CHECK BOX
21 de May de 2001 às 03:22PM
tente assim:
<input type="checkbox" name="opc[]" value="revista1">
<input type="checkbox" name="opc[]" value="revista2">
<input type="checkbox" name="opc[]" value="revista3">

Para recuperar na outra página:
O primeiro checkbox será correspondente à: $opc[0], o segundo $opc[1], e o terceiro $opc[2]

Espero ter ajudado

qq dúvida, me contate por e-mail...

[ ]'s
Márcio
Rafael Fragoso
Re: CHECK BOX
22 de May de 2001 às 08:39PM
Márcio valeu pela resposta mas nem rolou ainda!!!!
To tentando de outras formas, se alguém ver esse meu problema e puder tentar me ajudar assim como o Márcio eu agradeceria!!

Tkz again Márcião!!

Abraços

RAFA
trash
Re: CHECK BOX
22 de May de 2001 às 09:12PM
vc não poderá ter o mesmo nome p/ checkbox, somente p/ radio... ja q são só 3 vc poderá ter uma com cada nome... e testa com if se está marcado ou não... até
não sei se é necessário testar... pode ser q o php assuma direto somente os q tiverem marcados... através de uma simples leitura da variável $op1 por exemplo...

espero ter ajudado!!!

[]s
Rafael Fragoso
Re: CHECK BOX
22 de May de 2001 às 09:20PM
Eu testei com 1 nome pra cada, porém sem IF e o email chegou blz, porém aquele que não foi clicado dah erro na página seguinte, ontem tentei fazer o IF vendo um manual de PHP porém não consegui tbm, como ficaria uma expressão com IF

mais ou menos assim??

if ( $opc1 != "") {
$opc1 = "revista1"
} else ( $opc1 = "nulo" )

Obrigado pela ajuda!!!
trash
Re: CHECK BOX
23 de May de 2001 às 02:56AM
que tipo de erro...
Rafael Fragoso
Re: CHECK BOX
23 de May de 2001 às 03:16AM
Warning: Undefined variable: opc2 in C:/XITAMI/webpages/ers/sent2.php on line 6
Obrigado por enviar este formulário!

Ele envia o form e chega com as opções certas no caso eu tinha clicado na 1 e na 3 menos na 2

o form tah aki

<form action="sent2.php" method="post">
<input type=hidden name="manda" value="1">
<p> email
<input type="text" name="email">
<br>
nome
<input type="text" name="nome">
<br>
mensagem
<textarea name="msg"></textarea>
<br>
<input type="CHECKBOX" name="opc1"
value="revista1">
Revista01 <br>
<input type="CHECKBOX" name="opc2"
value="revista2">
Revista02<br>
<input type="CHECKBOX" name="opc3"
value="revista3">
Revista03<br>
<input type="submit" name="enviar" value="enviar">
</p>
</form>

e o PHP aki

<?
if ( $manda == 1 ) {

if ( $nome != "" && $email != "" && $msg != "" ) {

$msg = "$nome escreveu:\n\n$msg\n\n$opc1\n$opc2\n$opc3";
$mais = "From: $email";

mail("rafael.fragoso@globo.com","Assinatura","$msg","$mais");
echo("Obrigado por enviar este formulário!\n");
} else
echo("Não foi possível enviar o formulário!\n");
}


?>

Valeu pela ajuda manow!!!!
trash
Re: CHECK BOX
23 de May de 2001 às 04:05AM
faça assim...

<?
if ( $manda == 1 ) {
$revi = "";
if ( $nome != "" && $email != "" && $msg != "" ) {

if (isset($opc1)){
$revi .= $opc1 . "<br>";}
if (isset($opc2)){
$revi .= $opc2 . "<br>";}
if (isset($opc3)){
$revi .= $opc3 . "<br>";}

$msg = "$nome escreveu:\n\n$msg\n\n$revi";
$mais = "From: $email";

mail("rafael.fragoso@globo.com","Assinatura","$msg","$mais");
echo("Obrigado por enviar este formulário!\n");
} else
echo("Não foi possível enviar o formulário!\n");
}

?>

o isset é p/ ver se a variável existe...

espero q isso te ajude!!!

[]s
Rafael Fragoso
Re: CHECK BOX
23 de May de 2001 às 04:26AM
PQP NEM ACREDITO CARAI, FUNCIONOU MANOW!!!!!!!
NOOOOOSSSSSAAAAAAA BRIGADO CARA, BRIGADU MESMO!!!!
NOSSA ESPERO PODER TE AJUDAR EM ALGO QUANDO VC PRECISAR!!!!!!

VALEU MANOW

ABRAÇOS E MUITO SUCESSO!!!!!

RAFA
Rafael Fragoso
Re: CHECK BOX
23 de May de 2001 às 04:30AM
if (isset($opc1)){
$revi .= $opc1 . "";}
if (isset($opc2)){
$revi .= $opc2 . "";}
if (isset($opc3)){
$revi .= $opc3 . "";}

CARA VC POPDERIA ME EXPLICAR O QUE VC FEZ AKI PRA EU ENTENDER AO INVÉS DE SÓ COPIAR O SCRIPT???
tipo :

se (a opção 1 tiver selecionada)
a variável &revi = ao valor de &opc1

e assim por diante??? o que seriam esses pontos????? antes do igual e depois da variável &opc?????

Por avor, eh que eu entendendo seria melhor!!!

Valeuz
trash
Re: CHECK BOX
23 de May de 2001 às 12:19PM
bem...q bom q t ajudou!

o isset verifica se a variável foi criada... pois quando se faz uma chamada através do método POST cada text, textarea, etc... cria uma variável com o nome do campo... por exemplo o text q vc colocaou p/ o nome é chamado pela propriedade name q vc deu lá no html... OK? e p/ os checkbox vc tem q verificar se essa variável foi criada.. no caso dos checkbox só serão criadas aqueles q estiverem assinaladas... OK?
aquele "ponto" antes do igual é p/ concatenar valores...
e o ponto q está entre a variável e as "" - entre as aspas deveria estar a tag "br" p/ fazer quebra de linhar e ficar melhor a visualização - tbm é concatenação...

se (a opção 1 tiver selecionada)
a variável &revi = ao valor de &opc1

e assim por diante??? -> exatamente <-

[]s
Rafael Fragoso
Re: CHECK BOX
23 de May de 2001 às 02:39PM
Po valeu mesmo cara, to dando uma aprimorada no FORM aki....

Brigado mesmo MANO

SUCESSO aih pro c ok???

Abraços

RAFA
Joao Prado Maia
Re: CHECK BOX
29 de May de 2001 às 04:36AM
teste 1 2 3
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.