0, "prt_id" => "1", "dst_nome" => ""); */ $fields = array(); try { /* * Alimenta os campos do array $field com valores de uma requisição get ou post. */ foreach ($_REQUEST as $key => $value) { if (array_key_exists($key, $fields)) { $fields[$key] = trim($value); } } if (IsPostBack()) { $dst_id = $fields[$nomeRegId]; if (!$fields["dst_nome"]) throw new Exception("O \"Nome\" é um campo obrigatório!"); if (($fields["acaoUser"] == FORM_INSERT) && (!$dst_id)) { /* * Componha a query para insert com base no modelo abaixo. Lembrando * que as variavesi passadas por post dever estar de acordo com os * nomes de campos da tabela corrspondente. */ $query = "insert into nomeTabela ( campo1,campo2,campoN) values ( {campo1},{campo2},{campoN})"; foreach ($fields as $key => $value) $query = str_replace("{" . $key . "}", QuotedStr($value), $query); $result = pg_query($dbcon, $query); $er = pg_errormessage($dbcon); if (!$result) throw new Exception("Não foi possível iserir o $nomeProg na base de dados!" . $query); $msg = "$nomeProg inserido com sucesso!"; if ($tableName) $fields[$nomeRegId] = GetCurrVal($tableName); } else { /* * Expressão regular: * localizar ->[^,].[^_]*_.[^,]* * Substrituir -> \0={\0} */ $query = "update pbx_backup_destino set campo1 = {campo1}, campo2 = {campo2}, campoN = {campoN}, where regId = {regId} "; foreach ($fields as $key => $value) $query = str_replace("{" . $key . "}", QuotedStr($value), $query); $result = pg_query($dbcon, $query); if (!$result) throw new Exception("Não foi atualizar o $nomeProg na base de dados!"); $msg = "$nomeProg atualizado com sucesso!"; } $jsStartup[] = "window.opener.ResetForm();"; } else if ($fields["acaoUser"] == FORM_UPDATE) { $query = "select campo1, campo2, campoN where $nomeRegId = $regId order by 2"; $result = pg_query($dbcon, $query); if (!$result) throw new Exception("Não foi possível consutar o $nomeProg na base de dados!"); if (!pg_num_rows($result)) throw new Exception("$nomeProg não localizado na base de dados!"); $row = pg_fetch_array($result); foreach ($row as $key => $value) $fields[$key] = $value; $msg = "Cadastro do $nomeProg editado com sucesso!"; } } catch (Exception $ex) { $erro++; $msg = $ex->getMessage(); } foreach ($fields as $key => $value) $smarty->assign($key, $value); $smarty->assign("tituloFormulario", $tituloFormulario); $smarty->assign("nomeRegId", $nomeRegId); $smarty->assign("regId", $regId); $smarty->assign("msg", $msg); $smarty->assign("erro", $erro); GetTemplate($smarty, $nomeTpl); ?>