Página com 03 div que se interrelacionam
Boa tarde,
Sou um tanto neofíto em PHP, Ajax e PostgreSQL e estou reparando um sistema já construido. Para implementar uma melhoria estou tentando juntar as funções esparramadas pelas diversas páginas em uma ou duas apenas. Uma seção de cadastro já consegui agregar o necessário já outra estou com problemas vejamos:
- A página tem 3 divisões: uma que seleciona uma unidade operacional, a segunda apresenta a listagem de todos funcionários lotados na unidade selecionada, até ai tudo bem. O problema é ao clicar no nome do funcionário, deveria carregar os dados de sua escala de serviço na terceira divisão.
>>>>>>>>>Função no arquivo ajax.js
----------------------------
function carrega_div(pag,dv,funcao){
// pag = pagina.php;
// dv = div da página html;
// funcao = sem atividade.
pag=pag+"&cache=" + new Date().getTime();//para evitar problemas com o cache do navegador
//Exibe o texto no div contedo
var conteudo=document.getElementById(dv);
conteudo.innerHTML='--- Carregando! ---';
request.open("GET", pag, true);
//Executada quando o navegador obtiver o coigo
request.onreadystatechange=function() {
if (request.readyState==4){
//Le o texto
var texto=request.responseText
//Desfaz o urlencode
texto=texto.replace(/\+/g," ");
texto=unescape(texto);
//alert(texto);
conteudo.innerHTML=texto;
}
}
request.send(null);
}
-----------------------------------------------------------------------------------
>>>>>Página com a primeira divisão e a requisição de listagem
$ano = date ( "Y" );
$mes = date ( "m" );
if (isset ( $_GET ['OPM'] )) {
$opm = $_GET ['OPM'];
} else {
$_GET['OPM']=0;
$opm = 0;
}
if (isset ( $_GET ['ANO'] )) {
$ano = $_GET ['ANO'];
}
if (isset ( $_GET ['MES'] )) {
$mes = $_GET ['MES'];
}
//if ($opm != "") { // Se houver RG no GET exibe barra de ferramentas
?>
<div id="opm_busca">
<form method="GET" enctype="application/x-www-form-urlencoded">
<center><table border=1 bgcolor="black" width=25px height=20px>
<tr>
<td>
<INPUT type="hidden" name="pag" value="<?php echo $_GET['pag']; ?>">
<INPUT type="hidden" name="OPM" id="OPM" value="<?php print($_GET['OPM']) ?>"
onKeypress="return Bloqueia_Caracteres(event);"> UNIDADE:
</td>
<td>
<select name="OPM" onchange="carrega_div('lib/php/listagem_pm.php?OPM='+this.value,'pm_listagem','')"
onFocus="ativa_cor(this); return false;" onblur="desativa_cor(this); return false;">
<?php
// abaixo cria as opções do select
echo $util->preenche_combo ( "pm_opm", "pm_opm_id", "pm_opm_sigla", $_GET ['OPM'] );
?>
</select>
</td>
</tr>
</table></center>
</form>
</div>
<hr>
<table style="border: 1px solid #000000;" cellpadding="0" cellspacing="0" width="100%" heigth="100%">
<tr heigth=25px>
<th width="40 %">Lista de Policiais</th>
<th>Regência Mensal</th>
</tr>
<tr heigth=200px>
<td>
<div id="pm_listagem">
<font color="black">PM_Listagem</font>
</div>
</td>
<td>
<div id="pm_turno">
<font color="black">PM_Turno</font>
</div>
</td>
</tr>
</table>
>>>> Abaixo o código com problema. Cria a lista com o pessoal da unidade porém não consegue abrir a escala de serviço
>>>> na outra div, pm_turno, com os dados da escala de serviço.
<div id="lista_opm_pm" style="height:400px; z-index:1; overflow: scroll">
<form method="GET" enctype="application/x-www-form-urlencoded">
<?php
require_once ('../../lib/php/conect_db.class.php');
$cor="ddd";
$conN = new Conect ();
$reg = '/\&pm_opm_id=(\d+)/i';
$replace = '';
$url = preg_replace ( $reg, $replace, $_SERVER ['QUERY_STRING'] );
header ( "Content-Type: text/html; charset=ISO-8859-1", true );
if (!isset($_GET['OPM'])) {
$_GET['OPM']="";
}
if (isset ( $_GET ['OPM'] ) and ($_GET ['OPM'] != "")) {
$C = new Conect ();
$nome_opm = $C->busca ( "SELECT pm_opm_nome FROM public.pm_opm WHERE pm_opm_id={$_GET['OPM']}", 'BOTH', true );
// $cab = cabecalho ( $nome_opm [0] [0] );
// print ($cab) ;
$turno = $conN->busca ( "SELECT pm_patente_sigla, pm_qod_sigla, pm_efetivo_rg, pm_efetivo_nome, pm_efetivo_mat_financeira,
pm_efetivo_telefone, pm_funcao_nome, pm_efetivo_cpf, pm_efetivo_data_inc FROM public.pm_efetivo
LEFT JOIN public.pm_qod ON pm_efetivo_qod=pm_qod_id
LEFT JOIN public.pm_patente ON pm_efetivo_patente=pm_patente_id
LEFT JOIN public.pm_funcao ON pm_efetivo_funcao=pm_funcao_id
WHERE pm_efetivo_opm=" . $_GET ['OPM'] . "
AND pm_efetivo_situacao=1
ORDER BY pm_patente_id, pm_efetivo_rg;" );
$alt = "";
$html = "<table style=\"border: 1px solid #333333;\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">";
$html .= "<thead><tr><th>POSTO/GRAD RG NOME</th></tr></thead>";
$idconta = 0;
foreach ( $turno as $policial ) {
if ($policial [0] != "") {
/* Deveria Criar um link que abrisse na div pm_turno a página regencia_pm.php
*
*/
$html.="<tr class='contorno' bgcolor='#$cor' style=\"cursor: pointer;\"><td>
<a id=\"lnktd$idconta\" class=\"classlink\" onclick=\"carrega_div('lib/php/regencia_pm.php?pm_efetivo_rg={$policial[2]},'pm_turno','')\"Title='Clique para Selecionar'> {$policial[0]} {$policial[1]} {$policial[2]} {$policial[3]} </a>
</td></tr>";
$idconta++;
if ($cor == 'ddd') {
$cor = 'fff';
} else {
$cor = 'ddd';
}
}
}
$html .= "</table>";
print ($html) ;
}
?>
</form>
</div>
Agradeço a ajuda de antemão
Discussão (0)
Carregando comentários...