Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Daniel Teixeira

[Resolvido] Enviar dados via checkbox

Recommended Posts

Olá!

 

Estou tentando enviar dados de um checkbox paro o MySql e não estou conseguindo...

 

Segue abaixo meu código:

 

socios.php

 

<div id="socios">
        
            <div id="conteudo" class="box">
                <div id="titulo">
                <h3>Inscrição - Sócio</h3>
                <p>Preencha corretamente os dados abaixo.<br />Obs.: Os campos com asterísco (*) são obrigatórios.</p>
                </div> <!-- titulo -->
                <?php include("SQL.php");
	$data = date ("d/m/Y",time());
	$hora = strftime ("%H:%M");
?>
                <?
    if(isset($_POST["enviar"])) {
        
    $nome = $_POST["nome"];
	$cpf = $_POST["cpf"];
	$endereco = $_POST["endereco"];
	$rg = $_POST["rg"];
	$nascimento = $_POST["nascimento"];
	$civil = $_POST["civil"];
	$apelido = $_POST["apelido"];
	$profissao = $_POST["profissao"];
	$fone = $_POST["fone"];
	$raca = $_POST["raca"];
	$tipo = $_POST["tipo"];
	$sexo = $_POST["sexo"];
	$cor = $_POST["cor"];
	$local = $_POST["local"];
	$enquete = $_POST["enquete"];
	
    $data = $_POST["data"];
    
    $sc = mysql_query("SELECT * FROM associados") or die(mysql_error());
    $tc = mysql_num_rows($sc);
    
    if ($tc >= 200) { echo "<script>history.back(1);alert('ERRO! Total de inscrições esgotado');</script>"; }
    
    else {
	
    /* insere no banco de dados */
    $sql = mysql_query("INSERT INTO associados (nid, nome, cpf, endereco, rg, nascimento, civil, apelido, profissao, fone, raca, tipo, sexo, cor, local, data, hora) VALUES('','$nome', '$cpf', '$endereco', '$rg', '$nascimento', '$civil', '$apelido', '$profissao', '$fone', '$raca', '$tipo', '$sexo', '$cor', '$local', '$data', '$hora')");
    if($sql){
      echo "<div id='sucesso'>Inscrição efetuada com sucesso!<p>Clique <a href='boletoConvidado/boleto.php' onclick='window.open(this.href); return false;'><em>aqui</em></a> para imprimir o boleto.</p></div>";
    }else{
       echo "<h2><font color='#FF0000'>Erro</font>
    </h2>
       Infelizmente, não foi possível fazer o cadastro, o erro retornado pelo sistema foi:<br />
       <blockquote>".mysql_error()."</blockquote>";
    }
    }
    
    }
    ?>                


                <form action="<? $PHP_SELF ?>" onSubmit="return valida_dados(this)" method="post" enctype="multipart/form-data" name="form1">
                    <div>Dados do cavaleiro ou amazona</div>
                    <p style="float:left">Nome completo:
                    <input type="text" name="nome" id="nome"></input></p>
                    <p style="float:right">CPF:
                    <input type="text" name="cpf" onSubmit="return verificaCPF(this)" id="cpf"></input></p>
                    <p style="float:left">Endereço:
                    <input type="text" name="endereco" id="endereco"></input></p>
                    <p style="float:right">RG:
                    <input type="text" name="rg" id="rg"></input></p>
                    <p style="float:left">Data de nascimento:
                    <input type="text" name="nascimento" id="nascimento"></input> /<input type="text" name="nascimento" id="nascimento"></input> /<input type="text" name="nascimento" id="nascimento"></input></p>
                    <p style="float:right">Estado civil:
                    <input type="text" name="civil" id="civil"></input></p>
                    <p style="float:left">Como gostaria de ser chamado?
                    <input type="text" name="apelido" id="apelido"></input></p>
                    <p style="float:right">Profissão
                    <input type="text" name="profissao" id="profissao"></input></p>
                     <p style="float:left">Telefone para contato:
                    <input type="text" name="fone" id="fone"></input></p>
                    
                    <div style="margin-top:250px">Dados do animal</div>
                    <p style="float:left">Raça:
                    <input type="text" name="raca" id="raca"></input></p>
                    <p style="float:right">
                    Garanhão: <input type="radio" name="tipo" id="tipo" value="Garanhão"></input> Castrado: <input type="radio" name="tipo" id="tipo" value="Castrado"></input></p>
                    <p style="float:right">
                    Macho: <input type="radio" name="sexo" id="macho" value="Macho"></input> Fêmea: <input type="radio" name="sexo" id="femea" value="Fêmea"></input></p>
                    
                    <p style="float:left">Cor da pelagem:
                    <input type="text" name="cor" id="cor"></input></p>
                    <p style="float:left">Endereço do local onde se encontra o animal:
                    <input type="text" name="local" id="local"></input></p>
                    
                    
                    <div style="margin-top:170px">Enquete</div>
                    <p style="float:left">Marcar as cavalgadas de N. Sra. do Bom Conselho que já participou:<br />
                    2003:<input type="checkbox" name="enquete" id="enquete" value="2003"></input>    2004:<input type="checkbox" name="enquete" id="04" value="2004"></input>    2005:<input type="checkbox" name="enquete" id="05" value="2005"></input>    2006:<input type="checkbox" name="enquete" id="06" value="2006"></input>    2007:<input type="checkbox" name="enquete" id="07" value="2007"></input>    2008:<input type="checkbox" name="enquete" id="08" value="2008"></input>    2009:<input type="checkbox" name="enquete" id="enquete" value="2009"></input> 
                    
                    
                    
                    <input type="hidden" name="data" value="<?php echo $data ?>">
                    <input type="reset" name="reset" value="Limpar dados" id="bot" style="float: right; margin: 20px 113px 10px 0">
                    <input type="submit" name="enviar" value="Enviar" id="bot" style="float: right; margin: 20px 20px 10px 0">
                </form>
				
            </div> <!-- conteudo -->
            
        </div> <!-- socios -->
            
    </div> <!-- centralizar -->

 

sociosVer.php

 

<?php include("SQL.php");
	$data = date ("d/m/Y");
?>
<?php
include_once('pagination.php');

$localhost  = "bm13.webservidor.net";
$username   = "acesa_root";
$password   = "@root123";
$database   = "acesa_root";

$connection = mysql_connect($localhost,$username,$password)
			  or die(mysql_error());

if($connection){
	mysql_select_db($database,$connection)
	or die(mysql_error());
		}else{
	echo "Nao conectei ao banco de dados";
	 }
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt" lang="pt-br">
<head>
    <title>ACESA - Associados</title>
    <meta name="author" content="Zie Design - Soluções inteligentes" />
    <meta name="content-language" content="pt-br" />
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
    <link rel="stylesheet" href="css/estilos.css" type="text/css" />
</head>
<body>
    <h2>Associados</h2>

	<?php
    
    $entries_per_page=99999;
    $page = (isset($_GET['page'])?$_GET['page']:1);
    
    $result     = mysql_query("SELECT COUNT(*) from associados ")
          or die (mysql_error());            
       $num_rows = mysql_fetch_row($result);
    
    if($num_rows[0]!=0){
        $total_pages = ceil($num_rows[0]/$entries_per_page);    
        $pagination = pagination_six($total_pages,$page);
        $offset = (($page * $entries_per_page) - $entries_per_page);
        
        $result = mysql_query("SELECT * from associados ORDER BY 1 DESC LIMIT $offset,$entries_per_page")
                  or die (mysql_error());
                
                
       
       $destacar = 0;
       while($row=mysql_fetch_assoc($result)){



       if($destacar == 0){
            echo "<div id=\"cadastro\"> 
                    <p><span id='data'>{$row['nid']}º - {$row['data']}</span></p>
					<p><span>Nome: </span>{$row['nome']}</p> 
                    <p><span>CPF: </span>{$row['cpf']}</p>
					<p><span>Endereço: </span>{$row['endereco']}</p>
					<p><span>RG: </span>{$row['rg']}</p>
					<p><span>Data de nascimento: </span>{$row['nascimento']}</p>
					<p><span>Estado civil: </span>{$row['civil']}</p>
					<p><span>Como gostaria de ser chamado? </span>{$row['apelido']}</p>
					<p><span>Profissão: </span>{$row['profissao']}</p>
					<p><span>Telefone para contato: </span>{$row['fone']}</p>
					<br>
					<p><span>Raça: </span>{$row['raca']}</p>
					<p><span>Garanhão ou Castrado?: </span>{$row['tipo']}</p>
					<p><span>Sexo: </span>{$row['sexo']}</p>
					<p><span>Cor da pelagem: </span>{$row['cor']}</p>
					<p><span>Endereço do local onde se encontra o animal: </span>{$row['local']}</p>
					<p><span>Cavalgadas de N. Sra. do Bom Conselho que já participou: </span>{$row['enquete']}</p>
                  </div> <!-- cadastro -->";
       }
 
        };   
        
                       
               }
    ?>
</div>
</body>
</html>

Podem me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui é os Checks né?

<div style="margin-top:170px">Enquete</div>
<p style="float:left">Marcar as cavalgadas de N. Sra. do Bom Conselho que já participou:<br />
    2003:<input type="checkbox" name="enquete[]" id="03" value="2003">
    2004:<input type="checkbox" name="enquete[]" id="04" value="2004">
    2005:<input type="checkbox" name="enquete[]" id="05" value="2005">
    2006:<input type="checkbox" name="enquete[]" id="06" value="2006">
    2007:<input type="checkbox" name="enquete[]" id="07" value="2007">
    2008:<input type="checkbox" name="enquete[]" id="08" value="2008">
    2009:<input type="checkbox" name="enquete[]" id="09" value="2009">

No Name coloca assim 'enquete[]'.

E para resgatar o que foi checado no PHP é assim:

 


$checks = $_POST['enquete'];
foreach($check as $valores)
{
  echo $valores."<br>";
}

 

Tira esses '</input>'.

Compartilhar este post


Link para o post
Compartilhar em outros sites

No caso onde posso colocar o code?

 


$checks = $_POST['enquete'];
foreach($check as $valores)
{
  echo $valores."<br>";
}

 

Como viu, tenho os dois arquivos, socios.php e sociosVer.php

 

que código eu posso colocar em cada um para adaptar?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

a socios.php tem formulário e o sociosVer.php é o que exibe os dados, estão assim:

 

socios.php

 

<div id="socios">
        
            <div id="conteudo" class="box">
                <div id="titulo">
                <h3>Inscrição - Sócio</h3>
                <p>Preencha corretamente os dados abaixo.<br />Obs.: Os campos com asterísco (*) são obrigatórios.</p>
                </div> <!-- titulo -->
                <?php include("SQL.php");
	$data = date ("d/m/Y",time());
	$hora = strftime ("%H:%M");
?>
                <?
    if(isset($_POST["enviar"])) {
        
    $nome = $_POST["nome"];
	$cpf = $_POST["cpf"];
	$endereco = $_POST["endereco"];
	$rg = $_POST["rg"];
	$nascimento = $_POST["nascimento"];
	$civil = $_POST["civil"];
	$apelido = $_POST["apelido"];
	$profissao = $_POST["profissao"];
	$fone = $_POST["fone"];
	$raca = $_POST["raca"];
	$tipo = $_POST["tipo"];
	$sexo = $_POST["sexo"];
	$cor = $_POST["cor"];
	$local = $_POST["local"];
	$checks = $_POST['enquete'];
	
    $data = $_POST["data"];
    
    $sc = mysql_query("SELECT * FROM associados") or die(mysql_error());
    $tc = mysql_num_rows($sc);
    
    if ($tc >= 200) { echo "<script>history.back(1);alert('ERRO! Total de inscrições esgotado');</script>"; }
    
    else {
	
    /* insere no banco de dados */
    $sql = mysql_query("INSERT INTO associados (nid, nome, cpf, endereco, rg, nascimento, civil, apelido, profissao, fone, raca, tipo, sexo, cor, local, data, hora) VALUES('','$nome', '$cpf', '$endereco', '$rg', '$nascimento', '$civil', '$apelido', '$profissao', '$fone', '$raca', '$tipo', '$sexo', '$cor', '$local', '$data', '$hora')");
    if($sql){
      echo "<div id='sucesso'>Inscrição efetuada com sucesso!<p>Clique <a href='boletoConvidado/boleto.php' onclick='window.open(this.href); return false;'><em>aqui</em></a> para imprimir o boleto.</p></div>";
    }else{
       echo "<h2><font color='#FF0000'>Erro</font>
    </h2>
       Infelizmente, não foi possível fazer o cadastro, o erro retornado pelo sistema foi:<br />
       <blockquote>".mysql_error()."</blockquote>";
    }
    }
    
    }
    ?>                


                <form action="<? $PHP_SELF ?>" onSubmit="return valida_dados(this)" method="post" enctype="multipart/form-data" name="form1">
                    <div>Dados do cavaleiro ou amazona</div>
                    <p style="float:left">Nome completo:
                    <input type="text" name="nome" id="nome"></input></p>
                    <p style="float:right">CPF:
                    <input type="text" name="cpf" onSubmit="return verificaCPF(this)" id="cpf"></input></p>
                    <p style="float:left">Endereço:
                    <input type="text" name="endereco" id="endereco"></input></p>
                    <p style="float:right">RG:
                    <input type="text" name="rg" id="rg"></input></p>
                    <p style="float:left">Data de nascimento:
                    <input type="text" name="nascimento" id="nascimento"></input> /<input type="text" name="nascimento" id="nascimento"></input> /<input type="text" name="nascimento" id="nascimento"></input></p>
                    <p style="float:right">Estado civil:
                    <input type="text" name="civil" id="civil"></input></p>
                    <p style="float:left">Como gostaria de ser chamado?
                    <input type="text" name="apelido" id="apelido"></input></p>
                    <p style="float:right">Profissão
                    <input type="text" name="profissao" id="profissao"></input></p>
                     <p style="float:left">Telefone para contato:
                    <input type="text" name="fone" id="fone"></input></p>
                    
                    <div style="margin-top:250px">Dados do animal</div>
                    <p style="float:left">Raça:
                    <input type="text" name="raca" id="raca"></input></p>
                    <p style="float:right">
                    Garanhão: <input type="radio" name="tipo" id="tipo" value="Garanhão"></input> Castrado: <input type="radio" name="tipo" id="tipo" value="Castrado"></input></p>
                    <p style="float:right">
                    Macho: <input type="radio" name="sexo" id="macho" value="Macho"></input> Fêmea: <input type="radio" name="sexo" id="femea" value="Fêmea"></input></p>
                    
                    <p style="float:left">Cor da pelagem:
                    <input type="text" name="cor" id="cor"></input></p>
                    <p style="float:left">Endereço do local onde se encontra o animal:
                    <input type="text" name="local" id="local"></input></p>
                    
                    
                    <div style="margin-top:170px">Enquete</div>
<p style="float:left">Marcar as cavalgadas de N. Sra. do Bom Conselho que já participou:<br />
    2003:<input type="checkbox" name="enquete[]" id="03" value="2003">
    2004:<input type="checkbox" name="enquete[]" id="04" value="2004">
    2005:<input type="checkbox" name="enquete[]" id="05" value="2005">
    2006:<input type="checkbox" name="enquete[]" id="06" value="2006">
    2007:<input type="checkbox" name="enquete[]" id="07" value="2007">
    2008:<input type="checkbox" name="enquete[]" id="08" value="2008">
    2009:<input type="checkbox" name="enquete[]" id="09" value="2009">
                    
                    
                    
                    <input type="hidden" name="data" value="<?php echo $data ?>">
                    <input type="reset" name="reset" value="Limpar dados" id="bot" style="float: right; margin: 20px 113px 10px 0">
                    <input type="submit" name="enviar" value="Enviar" id="bot" style="float: right; margin: 0 20px 10px 0">
                </form>
				
            </div> <!-- conteudo -->
            
        </div> <!-- socios -->
            
    </div> <!-- centralizar -->

sociosVer.php

 

<?php include("SQL.php");
	$data = date ("d/m/Y");
?>
<?php
include_once('pagination.php');

$localhost  = "bm13.webservidor.net";
$username   = "acesa_root";
$password   = "@root123";
$database   = "acesa_root";

$connection = mysql_connect($localhost,$username,$password)
			  or die(mysql_error());

if($connection){
	mysql_select_db($database,$connection)
	or die(mysql_error());
		}else{
	echo "Nao conectei ao banco de dados";
	 }
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt" lang="pt-br">
<head>
    <title>ACESA - Associados</title>
    <meta name="author" content="Zie Design - Soluções inteligentes" />
    <meta name="content-language" content="pt-br" />
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
    <link rel="stylesheet" href="css/estilos.css" type="text/css" />
</head>
<body>
    <h2>Associados</h2>

	<?php
    
    $entries_per_page=99999;
    $page = (isset($_GET['page'])?$_GET['page']:1);
    
    $result     = mysql_query("SELECT COUNT(*) from associados ")
          or die (mysql_error());            
       $num_rows = mysql_fetch_row($result);
    
    if($num_rows[0]!=0){
        $total_pages = ceil($num_rows[0]/$entries_per_page);    
        $pagination = pagination_six($total_pages,$page);
        $offset = (($page * $entries_per_page) - $entries_per_page);
        
        $result = mysql_query("SELECT * from associados ORDER BY 1 DESC LIMIT $offset,$entries_per_page")
                  or die (mysql_error());
                
                
       
       $destacar = 0;
       while($row=mysql_fetch_assoc($result)){



       if($destacar == 0){
            echo "<div id=\"cadastro\"> 
                    <p><span id='data'>{$row['nid']}º - {$row['data']}</span></p>
					<p><span>Nome: </span>{$row['nome']}</p> 
                    <p><span>CPF: </span>{$row['cpf']}</p>
					<p><span>Endereço: </span>{$row['endereco']}</p>
					<p><span>RG: </span>{$row['rg']}</p>
					<p><span>Data de nascimento: </span>{$row['nascimento']}</p>
					<p><span>Estado civil: </span>{$row['civil']}</p>
					<p><span>Como gostaria de ser chamado? </span>{$row['apelido']}</p>
					<p><span>Profissão: </span>{$row['profissao']}</p>
					<p><span>Telefone para contato: </span>{$row['fone']}</p>
					<br>
					<p><span>Raça: </span>{$row['raca']}</p>
					<p><span>Garanhão ou Castrado?: </span>{$row['tipo']}</p>
					<p><span>Sexo: </span>{$row['sexo']}</p>
					<p><span>Cor da pelagem: </span>{$row['cor']}</p>
					<p><span>Endereço do local onde se encontra o animal: </span>{$row['local']}</p>
					<p><span>Cavalgadas de N. Sra. do Bom Conselho que já participou: </span>{$row['enquete']}</p>
                  </div> <!-- cadastro -->";
       }

 
        };   
        
                       
               }
    ?>
    <? 
		   	$checks = $_POST['enquete'];
foreach($check as $valores)
{
   echo $valores."<br>";
}
?>
</div>
</body>
</html>

dá o seguinte erro no sociosVer.php: Warning: Invalid argument supplied for foreach() in /home/acesaal1/public_html/sociosVer.php on line 89

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse código

$checks = $_POST['enquete'];
foreach($check as $valores)
{
   echo $valores."<br>";
}

tbm eh no socios.php

esse codigo está pegando os valores da enquete que foi checada mano.

você coloca isso la debaixo das outros variaveis $_POST tendeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpa, errei no foreach:

$checks = $_POST['enquete'];
foreach($checks as $valores)
{
   echo $valores."<br>";
}

Pronto!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Daniel Teixeira, sugiro que leia as orientações para uma boa participação, em especial a parte sobre quotes.

 

Sobre a sua dúvida, o Dee não fez o código que insere no banco de dados. Somente criou um exemplo de como exibir os dados que foram marcados no checkbox. Caso queira suporte particular, visite Mercado Imasters ou o fórum de Empregos, parcerias e negócios.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.