-4
Good morning, how can I do this foreach correctly, because I’m not getting to do UPDATE in the tables dependent, dependent, dependent, date-dependent, planodependent, accommodating, codependent and dependent.
Form
<form class="form-horizontal" name="contact_form" id="contact_form" enctype="multipart/form-data" method="post" action="process_form.php">
<input type="hidden" name="mode" value="<?php echo ($_GET["m"] == "update") ? "update_old" : "add_new"; ?>" >
<input type="hidden" name="old_pic" value="<?php echo $results[0]["profile_pic"] ?>" >
<input type="hidden" name="cid" value="<?php echo intval($results[0]["id"]); ?>" >
<input type="hidden" name="pagenum" value="<?php echo $_GET["pagenum"]; ?>" >
<div class="box-body">
<div class="form-group">
<div class="col-sm-2">
<b>Número do Contrato:</b>
<input type="text" class="form-control" id="numerocontrato" value="<?php echo $results[0]["numerocontrato"] ?>" name="numerocontrato" placeholder="N. Contrato">
</div>
<div class="col-sm-2">
<label for="campo1">Usuário do plano</label>
<input name="id_cpf_cnpj" autocomplete="off" type="radio" onClick="habilitaCamposUsuario('usuario1')" value="1" checked/>
<label for="radio2">Responsável Financeiro</label>
<input name="id_cpf_cnpj" type="radio" value="2" onClick="habilitaCamposUsuario('usuario2')"/>
</div>
<div class="col-sm-4">
<b>Nome responsável:</b>
<input type="text" class="form-control" id="nome_completo" value="<?php echo $results[0]["nome_completo"] ?>" name="nome_completo" placeholder="Nome Completo">
</div>
<div class="col-sm-2" id="usuarioPlano" style="display: block;">
<b>Valor da Adesão:</b>
<input type="text" id="txt1" name="adesao" class="form-control calcular" value="<?php echo $results[0]["adesao"] ?>" placeholder="R$" onkeypress="mascara(this,mreais)" onkeyup="calcular()">
</div>
<div class="col-sm-2" id="usuarioFinanceiro" style="display: none;">
<b>Valor da Adesão:</b>
<input type="text" class="form-control" id="valor_adesao" name="valor_adesao" disabled="" placeholder="Usuário Financeiro">
</div>
<div class="col-sm-2">
<b>Valor Total:</b>
<input type="text" class="form-control" name="total" id="result" value="<?php echo $results[0]["total"] ?>" readonly>
</div>
</div>
<div class="form-group">
<div class="col-sm-2">
<label for="campo1">CPF</label>
<input name="cpfoucnpj" type="radio" value="1" onClick="habilitaCamposUsuarioCPFouCNPJ('cpfUsuario')" checked />
<label for="radio2">CNPJ</label>
<input name="cpfoucnpj" type="radio" value="2" onClick="habilitaCamposUsuarioCPFouCNPJ('cpfUsuario2')"/>
</div>
<div class="col-sm-2">
<b>CPF ou CNPJ:</b>
<input type="text" class="form-control" value="<?php echo $results[0]["cpfoucnpjnumero"] ?>" name="cpfoucnpjnumero" onkeydown="javascript:return aplica_mascara_cpfcnpj(this,18,event)" onkeyup="javascript:return aplica_mascara_cpfcnpj(this,18,event)" placeholder="CPF ou CNPJ">
</div>
<div class="col-sm-2">
<b>Data de Nascimento:</b>
<input type="text" class="form-control" value="<?php echo $results[0]["data_nascimento"] ?>" id="data_nascimento" onkeypress="mascara(this,mdata)" name="data_nascimento" onblur="calculaIdade()" placeholder="__/__/____" />
</div>
<div class="col-sm-1">
<h4 style="color: red" id="idade"></h4>
</div>
<div class="col-sm-2">
<h4 style="color: black">anos de idade.</h4>
</div>
<div class="col-sm-3">
<b>E-mail:</b>
<input type="email" class="form-control" value="<?php echo $results[0]["email"] ?>" name="email" placeholder="E-mail" />
</div>
</div>
<div class="form-group">
<div class="col-sm-2">
<b>CEP (Somente números):</b>
<input type="text" class="form-control" value="<?php echo $results[0]["cep"] ?>" name="cep" id="cep" maxlength="9" OnKeyPress="formatar('#####-###', this)" />
</div>
<div class="col-sm-3">
<b>Rua:</b>
<input type="text" class="form-control" value="<?php echo $results[0]["rua"] ?>" name="rua" id="rua" size="45" />
</div>
<div class="col-sm-1">
<b>Número:</b>
<input type="text" class="form-control" value="<?php echo $results[0]["numero"] ?>" name="numero" id="numero" size="5" />
</div>
<div class="col-sm-3">
<b>Bairro:</b>
<input type="text" class="form-control" value="<?php echo $results[0]["bairro"] ?>" name="bairro" id="bairro" size="25" />
</div>
<div class="col-sm-2">
<b>Cidade:</b>
<input type="text" class="form-control" value="<?php echo $results[0]["cidade"] ?>" name="cidade" id="cidade" size="25" />
</div>
<div class="col-sm-1">
<b>Estado:</b>
<input type="text" class="form-control" value="<?php echo $results[0]["estado"] ?>" name="estado" id="estado" value="<?php echo $results[0]["estado"] ?>" size="2" />
</div>
</div>
<div class="form-group">
<div class="col-sm-3">
<b>Vendedor:</b>
<select id="id_vendedor" class="form-control" name="id_vendedor">
<option value="<?php echo $results[0]['id_vendedor']; ?>"><?php echo $results[1]["nome_vendedor"]; ?></option>
<?php
$consulta = $DB->query("SELECT * FROM vendedor ORDER BY nome_vendedor DESC");
while ($linha = $consulta->fetch(PDO::FETCH_ASSOC)) {
echo '<option value="' . $linha['id'] . '">' . $linha['nome_vendedor'] . '</option>';
}
?>
</select>
</div>
<div class="col-sm-3">
<b>Forma de Pagamento:</b>
<select id="id_forma_pagamento" class="form-control" name="id_forma_pagamento">
<option value="<?php echo $results[0]['id_forma_pagamento']; ?>"><?php echo $results[1]["forma_pagamento"]; ?></option>
<?php
$consulta = $DB->query("SELECT * FROM forma_pagamento ORDER BY forma_pagamento ASC");
while ($linha = $consulta->fetch(PDO::FETCH_ASSOC)) {
echo '<option value="' . $linha['id'] . '">' . $linha['forma_pagamento'] . '</option>';
}
?>
</select>
</div>
<div class="col-sm-3">
<b>Qual forma?</b>
<select class="form-control" id="id_forma" name="id_forma">
<option value="<?php echo $results[0]['id_forma']; ?>"><?php echo $results[1]["nome_forma"]; ?></option>
</select>
</div>
</div>
<div class="form-group">
<div class="col-sm-4">
<b>Sexo:</b>
<select id="id_sexo" class="form-control" name="id_sexo">
<option value="<?php echo $results[0]['id_sexo']; ?>"><?php echo $results[1]["sexo"]; ?></option>
<?php
$consulta = $DB->query("SELECT * FROM sexo ORDER BY sexo ASC");
while ($linha = $consulta->fetch(PDO::FETCH_ASSOC)){
echo '<option value="' . $linha['id'] . '">' . $linha['sexo'] . '</option>';
}
?>
</select>
</div>
<div class="col-sm-4">
<b>Data de Vencimento:</b>
<input type="text" class="form-control" value="<?php echo $results[0]["data_vencimento"] ?>" id="data_vencimento" name="data_vencimento" onkeypress="mascara(this,mdata)" placeholder="__/__/____">
</div>
<div class="col-sm-4">
<b>Revenda:</b>
<select id="id_revenda" class="form-control" name="id_revenda">
<option value="<?php echo $results[0]['id_revenda']; ?>"><?php echo $results[1]["nome_revenda"]; ?></option>
<?php
$consulta = $DB->query("SELECT * FROM revenda ORDER BY nome_revenda ASC");
while ($linha = $consulta->fetch(PDO::FETCH_ASSOC)){
echo '<option value="' . $linha['id'] . '">' . $linha['nome_revenda'] . '</option>';
}
?>
</select>
</div>
</div>
<div class="form-group">
<div class="col-sm-4">
<b>Plano:</b>
<select id="id_plano" class="form-control" name="id_plano">
<option value="<?php echo $results[0]['id_plano']; ?>"><?php echo $results[1]["nome_plano"]; ?></option>
<?php
$consulta = $DB->query("SELECT * FROM plano ORDER BY nome_plano ASC");
while ($linha = $consulta->fetch(PDO::FETCH_ASSOC)){
echo '<option value="' . $linha['id'] . '">' . $linha['nome_plano'] . '</option>';
}
?>
</select>
</div>
<div class="col-sm-4">
<b>Acomodação:</b>
<select id="id_acomodacao" class="form-control" name="id_acomodacao">
<option value="<?php echo $results[0]['id_acomodacao']; ?>"><?php echo $results[1]["acomodacao"]; ?></option>
<?php
$consulta = $DB->query("SELECT * FROM acomodacao ORDER BY acomodacao ASC");
while ($linha = $consulta->fetch(PDO::FETCH_ASSOC)){
echo '<option value="' . $linha['id'] . '">' . $linha['acomodacao'] . '</option>';
}
?>
</select>
</div>
<div class="col-sm-4">
<b>Telefone:</b>
<input type="text" class="form-control" value="<?php echo $results[0]["telefone"] ?>" id="telefone" placeholder="( ) _____-____" name="telefone" onkeyup="mascara( this, mtel );" maxlength="15">
</div>
</div>
<div class="form-group">
<div class="col-sm-4">
<b>Celular:</b>
<input type="text" class="form-control" value="<?php echo $results[0]["celular"] ?>" name="celular" placeholder="( ) _____-____" onkeyup="mascara( this, mtel );" maxlength="15" />
</div>
</div>
<!-- DEPENDENTES -->
<div class="panel panel-primary">
<div class="panel-heading">
<h3 class="panel-title">Dependentes</h3>
</div>
<div class="panel-body">
<div class="col-lg-12" style="padding-left: 0; padding-right: 0;" >
<div class="col-lg-6 pull-left"style="padding-left: 0;" >
<span class="pull-left">
</div>
</div>
<div class="clearfix"></div>
<?php if ($results > 0) { ?>
<div class="table-responsive">
<table class="table table-striped table-hover table-bordered ">
<tbody><tr>
<th>Nome do Dependente</th>
<th>CPF</th>
<th>Data de Nascimento</th>
<th>Plano </th>
<th>Acomodação </th>
<th>Grau Parentesco </th>
<th>Valor do Dependente </th>
</tr>
**<?php foreach ($results as $res) { ?>**
<tr>
<td><input type="text" class="form-control" value="<?php echo $res["nomedependente"]; ?>" name="nomedependente"></td>
<td><input type="text" class="form-control" value="<?php echo $res["cpfdependente"]; ?>" name="cpfdependente"></td>
<td><input type="text" class="form-control" value="<?php echo $res["datanascimentodependente"]; ?>" name="datanascimentodependente"></td>
<td><input type="text" class="form-control" value="<?php echo $res["planodependente"]; ?>" name="planodependente"></td>
<td><input type="text" class="form-control" value="<?php echo $res["acomodacaodependente"]; ?>" name="acomodacaodependente"></td>
<td><input type="text" class="form-control" value="<?php echo $res["grauparentescodependente"]; ?>" name="grauparentescodependente"></td>
<td><input type="text" onkeypress="mascara(this,mreais)" onkeyup="calcular()" class="form-control calcular" value="<?php echo $res["valordependente"]; ?>" name="valordependente"></td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
<?php } else { ?>
<div class="well well-lg"><b>Nenhum dependente encontrado.</b></div>
<?php } ?>
</div>
</div>
<td colspan="6" style="text-align: left;">
<button class="btn btn-large btn-info" type="submit">Atualizar</button>
</td>
</tfoot>
</table>
</fieldset>
</form>
process_form.php
<?php
require './config.php';
$mode = $_REQUEST["mode"];
if ($mode == "add_new" ) {
$numerocontrato = trim($_POST['numerocontrato']);
$id_cpf_cnpj = trim($_POST['id_cpf_cnpj']);
$nome_completo = trim($_POST['nome_completo']);
$adesao = trim($_POST['adesao']);
$cpfoucnpj = trim($_POST['cpfoucnpj']);
$cpfoucnpjnumero = trim($_POST['cpfoucnpjnumero']);
$data_nascimento = trim($_POST['data_nascimento']);
$email = trim($_POST['email']);
$cep = trim($_POST['cep']);
$rua = trim($_POST['rua']);
$numero = trim($_POST['numero']);
$bairro = trim($_POST['bairro']);
$cidade = trim($_POST['cidade']);
$estado = trim($_POST['estado']);
$id_vendedor = trim($_POST['id_vendedor']);
$id_forma_pagamento = trim($_POST['id_forma_pagamento']);
$id_forma = trim($_POST['id_forma']);
$id_sexo = trim($_POST['id_sexo']);
$data_vencimento = trim($_POST['data_vencimento']);
$id_revenda = trim($_POST['id_revenda']);
$id_plano = trim($_POST['id_plano']);
$id_acomodacao = trim($_POST['id_acomodacao']);
$telefone = trim($_POST['telefone']);
$celular = trim($_POST['celular']);
$total = trim($_POST['total']);
$nomedependente = trim($_POST['nomedependente']);
$cpfdependente = trim($_POST['cpfdependente']);
$datanascimentodependente = trim($_POST['datanascimentodependente']);
$planodependente = trim($_POST['planodependente']);
$acomodacaodependente = trim($_POST['acomodacaodependente']);
$grauparentescodependente = trim($_POST['grauparentescodependente']);
$valordependente = trim($_POST['valordependente']);
$error = FALSE;
if (is_uploaded_file($_FILES["profile_pic"]["tmp_name"])) {
$filename = time() . '_' . $_FILES["profile_pic"]["name"];
$filepath = 'profile_pics/' . $filename;
if (!move_uploaded_file($_FILES["profile_pic"]["tmp_name"], $filepath)) {
$error = TRUE;
}
}
if (!$error) {
$sql = "INSERT INTO `tbl_contacts` (`numerocontrato`, `middle_name`, `nome_completo`, `estado`, `contact_no1`, `contact_no2`, `email_address`, `profile_pic`) VALUES "
. "( :numerocontrato, :nome_completo, :email, :estado, :contact1, :contact2, :email, :pic)";
try {
$stmt = $DB->prepare($sql);
// bind the values
$stmt->bindValue(":numerocontrato", $numerocontrato);
$stmt->bindValue(":id_cpf_cnpj", $id_cpf_cnpj);
$stmt->bindValue(":nome_completo", $nome_completo);
$stmt->bindValue(":adesao", $adesao);
$stmt->bindValue(":cpfoucnpj", $cpfoucnpj);
$stmt->bindValue(":cpfoucnpjnumero", $cpfoucnpjnumero);
$stmt->bindValue(":data_nascimento", $data_nascimento);
$stmt->bindValue(":email", $email);
$stmt->bindValue(":cep", $cep);
$stmt->bindValue(":rua", $rua);
$stmt->bindValue(":numero", $numero);
$stmt->bindValue(":bairro", $bairro);
$stmt->bindValue(":cidade", $cidade);
$stmt->bindValue(":estado", $estado);
$stmt->bindValue(":id_vendedor", $id_vendedor);
$stmt->bindValue(":id_forma_pagamento", $id_forma_pagamento);
$stmt->bindValue(":id_forma", $id_forma);
$stmt->bindValue(":id_sexo", $id_sexo);
$stmt->bindValue(":data_vencimento", $data_vencimento);
$stmt->bindValue(":id_revenda", $id_revenda);
$stmt->bindValue(":id_plano", $id_plano);
$stmt->bindValue(":id_acomodacao", $id_acomodacao);
$stmt->bindValue(":telefone", $telefone);
$stmt->bindValue(":celular", $celular);
$stmt->bindValue(":total", $total);
$stmt->bindValue(":nomedependente", $nomedependente);
$stmt->bindValue(":cpfdependente", $cpfdependente);
$stmt->bindValue(":datanascimentodependente", $datanascimentodependente);
$stmt->bindValue(":planodependente", $planodependente);
$stmt->bindValue(":acomodacaodependente", $acomodacaodependente);
$stmt->bindValue(":grauparentescodependente", $grauparentescodependente);
$stmt->bindValue(":valordependente", $valordependente);
// execute Query
$stmt->execute();
$result = $stmt->rowCount();
if ($result > 0) {
$_SESSION["errorType"] = "success";
$_SESSION["errorMsg"] = "Contact added successfully.";
} else {
$_SESSION["errorType"] = "danger";
$_SESSION["errorMsg"] = "Failed to add contact.";
}
} catch (Exception $ex) {
$_SESSION["errorType"] = "danger";
$_SESSION["errorMsg"] = $ex->getMessage();
}
} else {
$_SESSION["errorType"] = "danger";
$_SESSION["errorMsg"] = "failed to upload image.";
}
header("location:usuarios.php");
} elseif ( $mode == "update_old" ) {
$numerocontrato = trim($_POST['numerocontrato']);
$id_cpf_cnpj = trim($_POST['id_cpf_cnpj']);
$nome_completo = trim($_POST['nome_completo']);
$adesao = trim($_POST['adesao']);
$cpfoucnpj = trim($_POST['cpfoucnpj']);
$cpfoucnpjnumero = trim($_POST['cpfoucnpjnumero']);
$data_nascimento = trim($_POST['data_nascimento']);
$email = trim($_POST['email']);
$cep = trim($_POST['cep']);
$rua = trim($_POST['rua']);
$numero = trim($_POST['numero']);
$bairro = trim($_POST['bairro']);
$cidade = trim($_POST['cidade']);
$estado = trim($_POST['estado']);
$id_vendedor = trim($_POST['id_vendedor']);
$id_forma_pagamento = trim($_POST['id_forma_pagamento']);
$id_forma = trim($_POST['id_forma']);
$id_sexo = trim($_POST['id_sexo']);
$data_vencimento = trim($_POST['data_vencimento']);
$id_revenda = trim($_POST['id_revenda']);
$id_plano = trim($_POST['id_plano']);
$id_acomodacao = trim($_POST['id_acomodacao']);
$telefone = trim($_POST['telefone']);
$celular = trim($_POST['celular']);
$total = trim($_POST['total']);
$nomedependente = trim($_POST['nomedependente']);
$cpfdependente = trim($_POST['cpfdependente']);
$datanascimentodependente = trim($_POST['datanascimentodependente']);
$planodependente = trim($_POST['planodependente']);
$acomodacaodependente = trim($_POST['acomodacaodependente']);
$grauparentescodependente = trim($_POST['grauparentescodependente']);
$valordependente = trim($_POST['valordependente']);
$id = trim($_POST['numerocontrato']);
$error = FALSE;
if (is_uploaded_file($_FILES["profile_pic"]["tmp_name"])) {
$filename = time() . '_' . $_FILES["profile_pic"]["name"];
$filepath = 'profile_pics/' . $filename;
if (!move_uploaded_file($_FILES["profile_pic"]["tmp_name"], $filepath)) {
$error = TRUE;
}
} else {
$filename = $_POST['old_pic'];
}
if (!$error) {
$sql = "UPDATE `cadastro_clientes` SET
`numerocontrato` = :numerocontrato,
`id_cpf_cnpj` = :id_cpf_cnpj,
`nome_completo` = :nome_completo,
`adesao` = :adesao,
`cpfoucnpj` = :cpfoucnpj,
`cpfoucnpjnumero` = :cpfoucnpjnumero,
`data_nascimento` = :data_nascimento,
`email` = :email,
`cep` = :cep,
`rua` = :rua,
`numero` = :numero,
`bairro` = :bairro,
`cidade` = :cidade,
`estado` = :estado,
`id_vendedor` = :id_vendedor,
`id_forma_pagamento` = :id_forma_pagamento,
`id_forma` = :id_forma,
`id_sexo` = :id_sexo,
`data_vencimento` = :data_vencimento,
`id_revenda` = :id_revenda,
`id_plano` = :id_plano,
`id_acomodacao` = :id_acomodacao,
`telefone` = :telefone,
`celular` = :celular,
`total` = :total,
`nomedependente` = :nomedependente,
`cpfdependente` = :cpfdependente,
`datanascimentodependente` = :datanascimentodependente,
`planodependente` = :planodependente,
`acomodacaodependente` = :acomodacaodependente,
`grauparentescodependente` = :grauparentescodependente,
`valordependente` = :valordependente
" . "WHERE numerocontrato = :numerocontrato ";
try {
$stmt = $DB->prepare($sql);
// bind the values
$stmt->bindValue(":numerocontrato", $numerocontrato);
$stmt->bindValue(":id_cpf_cnpj", $id_cpf_cnpj);
$stmt->bindValue(":nome_completo", $nome_completo);
$stmt->bindValue(":adesao", $adesao);
$stmt->bindValue(":cpfoucnpj", $cpfoucnpj);
$stmt->bindValue(":cpfoucnpjnumero", $cpfoucnpjnumero);
$stmt->bindValue(":data_nascimento", $data_nascimento);
$stmt->bindValue(":email", $email);
$stmt->bindValue(":cep", $cep);
$stmt->bindValue(":rua", $rua);
$stmt->bindValue(":numero", $numero);
$stmt->bindValue(":bairro", $bairro);
$stmt->bindValue(":cidade", $cidade);
$stmt->bindValue(":estado", $estado);
$stmt->bindValue(":id_vendedor", $id_vendedor);
$stmt->bindValue(":id_forma_pagamento", $id_forma_pagamento);
$stmt->bindValue(":id_forma", $id_forma);
$stmt->bindValue(":id_sexo", $id_sexo);
$stmt->bindValue(":data_vencimento", $data_vencimento);
$stmt->bindValue(":id_revenda", $id_revenda);
$stmt->bindValue(":id_plano", $id_plano);
$stmt->bindValue(":id_acomodacao", $id_acomodacao);
$stmt->bindValue(":telefone", $telefone);
$stmt->bindValue(":celular", $celular);
$stmt->bindValue(":total", $total);
$stmt->bindValue(":nomedependente", $nomedependente);
$stmt->bindValue(":cpfdependente", $cpfdependente);
$stmt->bindValue(":datanascimentodependente", $datanascimentodependente);
$stmt->bindValue(":planodependente", $planodependente);
$stmt->bindValue(":acomodacaodependente", $acomodacaodependente);
$stmt->bindValue(":grauparentescodependente", $grauparentescodependente);
$stmt->bindValue(":valordependente", $valordependente);
$stmt->bindValue(":numerocontrato", $id);
// execute Query
$stmt->execute();
$result = $stmt->rowCount();
if ($result > 0) {
$_SESSION["errorType"] = "success";
$_SESSION["errorMsg"] = "Usuário atualizado com sucesso.";
} else {
$_SESSION["errorType"] = "info";
$_SESSION["errorMsg"] = "Nenhuma alteração feita.";
}
} catch (Exception $ex) {
$_SESSION["errorType"] = "danger";
$_SESSION["errorMsg"] = $ex->getMessage();
}
} else {
$_SESSION["errorType"] = "danger";
$_SESSION["errorMsg"] = "Failed to upload image.";
}
// Aqui atualiza
header("location:usuarios.php?pagenum=".$_POST['pagenum']);
} elseif ( $mode == "delete" ) {
$cid = intval($_GET['id']);
$sql = "DELETE FROM `cadastro_clientes` WHERE id = :id";
try {
$stmt = $DB->prepare($sql);
$stmt->bindValue(":id", $cid);
$stmt->execute();
$res = $stmt->rowCount();
if ($res > 0) {
$_SESSION["errorType"] = "success";
$_SESSION["errorMsg"] = "Usuário excluído.";
} else {
$_SESSION["errorType"] = "info";
$_SESSION["errorMsg"] = "Falha ao deletar contato.";
}
} catch (Exception $ex) {
$_SESSION["errorType"] = "danger";
$_SESSION["errorMsg"] = $ex->getMessage();
}
header("location:usuarios.php?pagenum=".$_GET['pagenum']);
}
?>
What contains in the variable
results
? It is a number or an array?– relaxeaza
Array @Rafaelmafra
– Mauro Santos
Hello, You can give an example of constriction, I could not notice. What gives the print_r($Results)? Is the constraint in the foreach or at the time of recording? I verify that the inputs do not have dynamic names that give rise to errors
– Tiago Gomes
There’s no way to put print_r($Results) here @Tiagogomes, you can open a chat?
– Mauro Santos