Erro ao Atualizar
Ola pessoal boa noite..
Vou tentar explicar aqui o meu problema da melhor forma que der, espero que possam entender...
Amigos eu estou tendo um problema em fazer uma atualização
Bom quando vou cadastrar da sucesso e é gravado normal no banco de dados ate ai esta ok..
Seria o seguinte dentro de um form ele gera linhas ou seja + inputs caso seja preciso entende? Usando javascript´s, quando vou atualizar as informações que esta nas tabelas ou seja
são 3 tabelas
tbl_department
dep_id
nome
news etc....
tbl_department_openning_hour
hou_id
titulo
time
dep_id <-- Aqui onde pega o id da tabela tbl_department
tbl_department_faq
faq_id
titulo
conteudo
dep_id <-- Aqui onde pega tbm o id da tabela tbl_department
Obs: Ele Grava normal no banco de dados, porem quando atualizar que não esta dando certo, e é preciso que seja atualizado todos os input das tabelas tbl_department_faq e tbl_department_openning_hour. Acredito que já entenderam aqui umas das parte que seria preciso.
Bom vou posta uma parte do HTML do FORM para melhor entender o que seria ok!!, Sei que não tem nada a ver com o PHP, mais como tinha dito apenas para melhor entender..
<?php $dep_id = get('EditarItem'); $QueryTblDepartment = DBRead('tbl_department','*',"WHERE dep_id = '{$dep_id}'"); if (is_array($QueryTblDepartment)) { foreach ($QueryTblDepartment as $TblDepartment) {
?>
<form method="post" action="?Atualizar=<?= $TblDepartment['dep_id']; ?>" enctype="multipart/form-data">
<div class="col-md-6">
<div class="form-group">
<label>Titulo:</label>
<input class="form-control" name="dep_name" value="<?= $TblDepartment['dep_name']; ?>" placeholder="Exemplo: Globo City" autocomplete="off" required>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label>Telefone:</label>
<input class="form-control telefone" name="dep_phone" value="<?= $TblDepartment['dep_phone']; ?>" placeholder="Exemplo: (00) 0000-0000" autocomplete="off">
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label>WhatsApp:</label>
<input class="form-control whatsapp" name="dep_whatsapp" value="<?= $TblDepartment['dep_whatsapp']; ?>" placeholder="Exemplo: (00) 0.0000-0000" autocomplete="off">
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label>Fax:</label>
<input class="form-control" name="dep_fax" value="<?= $TblDepartment['dep_fax']; ?>" placeholder="Exemplo: (00) 0000-0000" autocomplete="off">
</div>
</div>
<div class="form-group">
<label>Seção de FAQ:</label>
<table id="fqSection" class="table table-bordered table-striped">
<thead>
<tr>
<th style="width:50%;">Titulo</th>
<th>Contente</th>
<th>Ação</th>
</tr>
</thead>
<tbody>
<?php
//Departamento FAQ
$QueryDepartamentoFaq = DBRead('tbl_department_faq','*',"WHERE dep_id='{$dep_id}'"); if (is_array($QueryDepartamentoFaq)) { foreach ($QueryDepartamentoFaq as $Fa) {
$arr_fq_id[] = $Fa['fq_id'];
$arr_fq_title[] = $Fa['fq_title'];
$arr_fq_content[] = $Fa['fq_content'];
}}
if(isset($arr_fq_title)):
for($i=0;$i<count($arr_fq_title);$i++) {
?>
<tr>
<td>
<input autocomplete="off" type="text" class="form-control" style="width:100%" name="fq_title" value="<?= $arr_fq_title[$i]; ?>">
</td>
<td>
<textarea class="form-control" cols="30" rows="10" style="width:100%;height:50px;" name="fq_content"><?= $arr_fq_content[$i]; ?></textarea>
</td>
<td>
<span class="btn btn-danger btn-xs"><a onclick="DeletarItem(<?= $arr_fq_id[$i]; ?>, 'DeletarFaq');" href="#!" style="color: #fff;">Excluir</a></span>
</td>
</tr>
<?php
//}}
}
endif;
?>
</tbody>
</table>
<!-- Aqui para criar novos input para serem gravado no banco caso seja preciso -->
<input type="button" class="btn btn-info btn-small" id="btnAddFaq" value="+ Adicionar linha" style="margin-bottom:10px;">
</div>
<center><hr>
<button class="btn btn-primary">Atualizar</button>
<br><br>
</center>
</div>
</form>
<?php } } ?>
Bom ai esta apenas um pouco do form tem mais coisa que seria igual o que preciso resolver
Agora a parte do **PHP **que preciso resolver, vou posta apenas uma parte para poder entender tbm
<?php // Atualizar Item de Departamento
if (isset($_GET['Atualizar'])) {
$dep_id = get('Atualizar');
$fq_empty = 0;
if( !empty($_POST['fq_title']) && !empty($_POST['fq_content']) ) {
$fq_empty = 1;
foreach ($_POST['fq_title'] as $value) { //Sempre mostra o erro nesta linha
$arr1[] = $value;
}
foreach ($_POST['fq_content'] as $value) { //Sempre mostra o erro nesta linha
$arr2[] = $value;
}
$j=0;
for($i=0;$i<count($arr1);$i++) { //Sempre mostra o erro nesta linha
if($arr1[$i]=='' && $arr2[$i]=='') {continue;}
else {
$new_arr1[$j] = $arr1[$i];
$new_arr2[$j] = $arr2[$i];
$j++;
}
}
}
$AtualizarDepartment = array(
'dep_name' => post('dep_name'),
'dep_slug' => UrlAmigavel(post('dep_name')),
'dep_detail' => post('dep_detail'),
'dep_address' => post('dep_address'),
'dep_phone' => post('dep_phone'),
'dep_whatsapp' => post('dep_whatsapp'),
'dep_fax' => post('dep_fax'),
'dep_email' => post('dep_email'),
'meta_title' => post('dep_name'),
'meta_keyword' => post('meta_keyword'),
'meta_description' => LimitarTexto(post('dep_detail'),'200','...')
);
$QueryTblDepartment = DBUpdate('tbl_department', $AtualizarDepartment, "dep_id = '{$dep_id}'", TRUE);
if ($QueryTblDepartment != 0) {
Redireciona('?sucesso&Department');
} else {
Redireciona('?erro&Department');
}
// Atualizar tbl_department_faq
if($fq_empty == 1) {
for($i=0;$i<count($new_arr1);$i++) {
$TblDepartmentFaq = array(
'fq_title' => $new_arr1[$i],
'fq_content' => $new_arr2[$i],
'dep_id' => $dep_id
);
$QueryTblDepartmentFaq = DBUpdate('tbl_department_faq', $TblDepartmentFaq, "dep_id = '{$dep_id}'");
}
}
if ($QueryTblDepartmentFaq != 0) {
Redireciona('?sucesso&AtualizarFaq');
} else {
Redireciona('?erro&AtualizarFaq');
}
// Criar Novo input para tbl_department_faq
if($fq_empty == 1) {
for($i=0;$i<count($new_arr1);$i++) {
$SqlFaq = array(
'fq_title' => $new_arr1[$i],
'fq_content' => $new_arr2[$i],
'dep_id' => $QueryTblDepartment
);
$QueryFaq = DBRead('tbl_department_faq', $SqlFaq);
}
}
if ($QueryFaq != 0) {
Redireciona('?sucesso&Faq');
} else {
Redireciona('?erro&Faq');
}
}
Neste caso ao mesmo tempo que teria que atualizar a
**tbl_department_faq**
faq_id
titulo
conteudo
dep_id <-- Aqui onde pega tbm o id da tabela **tbl_department**
Ele precisa grava caso seja preciso criar nova linha ou seja criar novo input para atualizar junto entende?
Pessoal espero que eu tenha sido bem objetivo aqui para que possam entender....
Desde já agradeçoDiscussão (3)
Carregando comentários...