Ir para conteúdo

POWERED BY:

Arquivado

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

Hadjacks

[problema] foreach

Recommended Posts

Segue em anexo, meu código, tá com um pequeno problema não estou conseguindo cadastrar os campos input hidden com o foreach... o valor enviado para o banco é zero, os outros campos são preenchidos normalmente.

 

 

<html>
<head>
<link rel="stylesheet" href="estilo.css" media="all" type="text/css" />
<title> Incluir Familiar </title>
</head>
<?php
include "principal.php";
?>
<table class="i_familiar" border="0">
<form method="POST" action="" id="i_familiar" class="i_familiar" >
<tr>
<td>
<label>Inscrição da Família:
<input type="text" name="nr_fam" size="6"></label>
<input type="submit" name="buscar" value="buscar" size="6">
</td>
</tr>

<?php 
$nr_fam=$_POST['nr_fam'];
include "conexao.php";

if (isset($_POST["buscar"]))
{    
$sql_situacao = "SELECT * FROM cadastro WHERE nr_fam= '".$nr_fam."'";
$rs = mysql_query($sql_situacao);
   if (!($rs=mysql_query($sql_situacao)))
{
     die('Não foi possível buscar os dados do banco!');
     echo mysql_error();
     echo "numero da familia não encontrado";
   }
  $linha = mysql_fetch_array($rs);
  // agora percorre todas as colunas da linha que foi buscada, 
  // e monta inputs com tipo hidden:
  		foreach ($linha as $coluna => $valor) 
  		{
  		echo "<input type='hidden' name='{$coluna}' value='{$valor}' />";
  	  //criar condição para quando o foreach não existir
  		}
}

?>


<tr>
<td>
<label>Nome:</label>
<input type="text" name="nome" size="70">
</td>
</tr>


<tr><td><label>Possui filhos?<select name="filhos">
<option value="Sim"> Sim</option>
<option value="Não"> Não</option></select></td></tr>

<tr><td><label>Parentesco em relação ao responsável pela família:</label>
<select name="parentesco">
<option value="filho(a)"> Filho(a)</option>
<option value="esposo(a)"> Esposo(a) </option>
<option value="avô"> avô </option>
<option value="avó"> avó </option>
<option value="primo(a)"> Primo(a) </option></select></td></tr>


<tr><td><label>Sexo:</label>
<input type="radio" name="sexo" value="f">Feminino
<input type="radio" name="sexo" value="m"> Masculino</td></tr>


<tr><td><label>Data de nascimento:</label>
<input type="text" name="data_nasc" value="dd/mm/aaaa"></td></tr>

<tr><td><label>B:</label>
<select name="betim">
<option value="Sim"> Sim</option>>
<option value="Não"> Não</option></select></td></tr>

<tr>
<td>
<label>Possui alguma defieciência:</label>
<input type="checkbox" name="possui_def" value="nao">Não Possuo deficiência
<input type="checkbox" name="possui_def" value="física">Física
<input type="checkbox" name="possui_def" value="visual">Visual
<input type="checkbox" name="possui_def" value="auditiva">Auditiva
<input type="checkbox" name="possui_def" value="mental">Mental
<input type="checkbox" name="possui_def" value="multipla">Múltipla
</tr>

<tr><td><label>Profissão:</label><input type="text" name="profissao" value=""></td></tr>

<tr><td><label>Escolaridade:</label>
<select name="escol">
<option value="analfabeto"> Analfabeto</option>
<option value="1° grau - incompleto"> 1° grau - incompleto </option>
<option value="1° grau - completo"> 1° grau - completo </option>
<option value="2° grau - incompleto"> 2° grau - incompleto </option>
<option value="2° grau - completo"> 2° grau - completo</option>
<option value="3° grau - incompleto"> 3° grau - incompleto </option>
<option value="3° grau - incompleto"> 3° grau - completo </option>
</select><td></tr>


<tr><td><label>Atividade pretendida:</label><input type="text" name="ativ_pret" value=""></td></tr>


<tr><td><label>RG</label><input type="text" name="nr_rg" value=""></td></tr>

<tr><td><label>CPF</label><input type="text" name="cpf" value=""></td></tr>		


<tr><td><input type="radio" name="sexo" value="f">Feminino
<input type="radio" name="sexo" value="m"> Masculino</td></tr>


<tr><td><label>Telefone celular:</label><input type="text" name="tel_cel" value=""></td></tr>


<tr><td><label>Motivo:</label><input type="text" name="motivo" value=""></tr></tr>

<tr><td><label>Observação:</label><br/><textarea name="obs" rows="4" cols="50"> </textarea><br/><label>Histórico:</label><br/>
<textarea name="hist" rows="4" cols="50"> </textarea><br/>
<input type="submit" value="enviar" name="enviar">
</td>
</tr>
</table>
</form>
</div>

<?php

function invertedata($data_nasc)
{
$pos=explode("/", $data_nasc);
$data_invertd=($pos[2]."/".$pos[1]."/".$pos[0]);
return $data_invertd;
}

//campos que deveriam ser preenchidos pelo foreach
$tel_fix=$POST['tel_fix'];
$tipo_l=$POST['tipo_l'];
$nome_rua=$POST['nome_rua'];
$end= $tipo_l. $nome_rua;
$bairro=$POST['bairro'];
$cep=$POST['cep'];
$cidade=$POST['cidade'];
$c_uf=$POST['c_uf'];

//campos que serão preenchidos pelo usuario
$nr_fam=$_POST['nr_fam'];
$nome=$_POST['nome'];
$nr_filhos=$_POST['filhos'];
$parentesco=$_POST['parentesco'];
$sexo=$_POST['sexo'];
$data_nasc1=$_POST['data_nasc'];
$data_nasc=invertedata($data_nasc1);
$betim=$POST['betim'];
$possui_def=$POST['possui_def'];
$profissao=$_POST['profissao'];
$escolaridade=$POST['escol'];
$ativ_preten=$POST['ativ_preten'];
$nr_rg=$POST['nr_rg'];
$cpf=$POST['cpf'];
$tel_cel=$POST['tel_cel'];
$motivo=$POST['motivo'];
$obser=$POST['obs'];
$hist=$POST['hist'];


if($_POST["enviar"])
{
include 'conexao.php';

$query= "INSERT INTO cadastro (id_cadastro, nr_fam, nome, filhos, parentesco, sexo, data_nasc,
betim, possui_def, profissao, escolaridade, ativ_preten, nr_rg, cpf, tel_cel, tel_fix, end, bairro, cep, 
cidade, c_uf, motivo, hist, obser) VALUES (NULL, '$nr_fam', '$nome', '0', '$parentesco', '$sexo', '$data_nasc', 
'$betim', '$possui_def', '$profissao', '$escolaridade', '$ativ_preten',
'$nr_rg', '$cpf', '$tel_cel', '$tel_fix', '$end', '$bairro', '$cep', '$cidade', '$c_uf',
 '$motivo', '$hist', '$obser')";

$sql=mysql_query($query);
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, no teu código os campos hidden são montados dinamicamente, de acordo com os campos da tabela "cadastro". Já no script pra salvar os dados, estão definidos os campos estaticamente. Isso pode funcionar, mas está sujeito a inconsistência.

 

Reveja sua lógica. Talvez o problema esteja ai.

 

Outra coisa: tente colocar as variáveis recebidas do form dentro do if, já que eles só serão úteis quando submetido o form para salvar os dados.

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.