Tenho um sistema em php onde está sendo necessário incluir um campo na tabela regional, porem esse campo está vinculado a outro campo de outra tabela chamado site. Realizei as inclusoes no banco, porem estou com dificuldades para fazer que os dois codigos abaixo se comuniquem, pois quando o usuarios clica em qualquer opção da erro de javascript, porem antes não dava após das inclusões.
Pergunta
Martinsrj
Olá pessoal, tudo bom?
Tenho um sistema em php onde está sendo necessário incluir um campo na tabela regional, porem esse campo está vinculado a outro campo de outra tabela chamado site. Realizei as inclusoes no banco, porem estou com dificuldades para fazer que os dois codigos abaixo se comuniquem, pois quando o usuarios clica em qualquer opção da erro de javascript, porem antes não dava após das inclusões.
Exemplo:
Tabela Regional:
sq_regional | no_regional:
14 | Claro NO
Tabela Site:
sq_site | sq_regional | no_site | fg_excluido
487 | 14 | CD BELÉM | 0
489 | 14 | Teste NO | 0
novochamado.php:
<?php require_once 'autenticacao.php'; require_once 'morrer.php'; if(!temPerfil('novoChamado')){ morrer('Acesso negado.'); } ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>MTI - Novo chamado</title> <link rel="stylesheet" href="css/mti.css" type="text/css"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <script type="text/javascript" src="js/mti.js"></script> <script type="text/javascript" src="js/form.js"></script> <script type="text/javascript"> function foca(){ document.forms[0].chamado.focus(); } </script> </head> <body onLoad="foca()"> <div class="titulo">Novo chamado</div> <iframe src="" id="siteiframe" style="display: none;"></iframe> <form method="post" action="novoChamado2.php" onSubmit="return validaFormNovoChamado()"> <table style="width: 400px;"> <tr> <td class="rotulo" style="width: 80px;">Chamado: <td class="campo" style="width: 320px;"><input type="text" name="chamado" size="8" maxlength="8" class="campotexto"> <tr> <td class="rotulo" colspan=2>Regional: <tr> <td class="campo" colspan=2> <div style="width: 50%; float: left;"> <input type="checkbox" name="regional[1]" id="regional1" value=1 onClick="return regionaltodas()"> <label for="regional1" id="lregional1">Todas</label><br> <input type="checkbox" name="regional[11]" id="regional11" value=1 onClick="return clicaregional()"> <label for="regional11" id="lregional11">ACS Barão Geraldo</label><br> <input type="checkbox" name="regional[2]" id="regional2" value=1 onClick="return clicaregional()"> <label for="regional2" id="lregional2">BC Macaé</label><br> <input type="checkbox" name="regional[3]" id="regional3" value=1 onClick="return clicaregional()"> <label for="regional3" id="lregional3">Claro BA/SE/MG</label><br> <input type="checkbox" name="regional[4]" id="regional4" value=1 onClick="return clicaregional()"> <label for="regional4" id="lregional4">Claro CO</label><br> <input type="checkbox" name="regional[5]" id="regional5" value=1 onClick="return clicaregional()"> <label for="regional5" id="lregional5">Claro NE</label><br> <input type="checkbox" name="regional[12]" id="regional12" value=1 onClick="return clicaregional()"> <label for="regional12" id="lregional12">BC Ribeirão Preto</label><br> </div> <div style="width: 50%; float: right;"> <input type="checkbox" name="regional[6]" id="regional6" value=1 onClick="return clicaregional()"> <label for="regional6" id="lregional6">Claro PR/SC</label><br> <input type="checkbox" name="regional[7]" id="regional7" value=1 onClick="return clicaregional()"> <label for="regional7" id="lregional7">Claro RJ/ES</label><br> <input type="checkbox" name="regional[8]" id="regional8" value=1 onClick="return clicaregional()"> <label for="regional8" id="lregional8">Claro RS</label><br> <input type="checkbox" name="regional[9]" id="regional9" value=1 onClick="return clicaregional()"> <label for="regional9" id="lregional9">Claro SP1</label><br> <input type="checkbox" name="regional[10]" id="regional10" value=1 onClick="return clicaregional()"> <label for="regional10" id="lregional10">Claro SP2</label><br> <input type="checkbox" name="regional[13]" id="regional13" value=1 onClick="return clicaregional()"> <label for="regional13" id="lregional13">BC Juiz de Fora</label><br> <input type="checkbox" name="regional[14]" id="regiona114" value=1 onClick="return clicaregional()"> <label for="regional14" id="lregional14">Claro NO</label><br> </div> <tr> <td class="rotulo">Site: <td class="campo"> <select name="site" id="site" class="campocombo" style="width: 250px;"> </select> <tr> <td colspan=2> <input type="submit" class="botao" value="Enviar"> <input type="reset" class="botao" value="Cancelar"> </table> </form> </body> </html>form.js:window.history.go(1); var globSelecionada = new String; //variavel com nome das regionais selecionadas seperadas por | var regionaisid = new Array(1,11,2,3,4,5,12,6,7,8,9,10,13,14); var regionaistx = new Array('Todas','ACS Barão Geraldo','BC MACAÉ','Claro BA/SE/MG','Claro CO','Claro NE','BC Ribeirão Preto','Claro PR/SC','Claro RJ/ES','Claro RS','Claro SP1','Claro SP2','BC Juiz de Fora','Claro NO'); //conteudo estatico das regionais function validaRegional(){ if( globSelecionada == "" ) return false; if( globSelecionada != "Todas" && document.getElementById('site').selectedIndex == 0 ) return false; return true; } function validaFormNovoChamado(){ if( !validaRegional() ){ alert("Preencha a regional e site corretamente."); return false; } if( document.forms[0].chamado.value.length <1 ){ alert("Preencha o número do chamado."); return false; } return true; } function mostraSiteTodos(){ limpaSite(); document.getElementById('site').options[0] = new Option('','',false,false); document.getElementById('site').options[1] = new Option('Todos','Todos',true,true); document.getElementById('site').selectedIndex = 1; document.getElementById('site').disabled = true; //disabled não posta } function mostraSite(sq_regional){ //mostra o combo de site e dá refresh no iframe para montar os itens do combo limpaSite(); document.getElementById('site').options[0] = new Option('CARREGANDO SITES ' + globSelecionada.toUpperCase(),'AGUARDE',true,true); document.getElementById('site').disabled = true; if( typeof no_site_selecionado == 'undefined' ){ document.getElementById('siteiframe').src = 'consultaSites.php?r=' + sq_regional; }else{ document.getElementById('siteiframe').src = 'consultaSites.php?r=' + sq_regional + '&s=' + no_site_selecionado; } } function limpaSite(){ //limpa o combo de sites for(;document.getElementById('site').length;){ document.getElementById('site').options[0] = null; } } function limpaRegionais(){ for(i=1;i<11;i++){ document.getElementById('regional' + i).checked = false; document.getElementById('regional' + i).disabled = false; document.getElementById('lregional' + i).disabled = false; } } function regionaltodas(){ //chamada qd clica na regional Todas //marca e desabilita as checkboxes e labels de todas as regionais, mostra o item de site Todos for(i=1;i<=regionaisid.length-1;i++){ regionaisid[i] = regionaisid[i] + ''; //char document.getElementById('regional' + regionaisid[i]).checked = document.getElementById('regional1').checked; if(document.getElementById('regional1').checked){ document.getElementById('regional' + regionaisid[i]).disabled = true; document.getElementById('lregional' + regionaisid[i]).disabled = true; }else{ document.getElementById('regional' + regionaisid[i]).disabled = false; document.getElementById('lregional' + regionaisid[i]).disabled = false; } } if(document.getElementById('regional1').checked){ mostraSiteTodos(); globSelecionada = 'Todas'; }else{ limpaSite(); globSelecionada = ''; } } function clicaregional(){ //chamada qd clica em uma regional //mostra o combo sites e monta ele em consulta ao iframe var qts = 0; var selecionada = new String; var selecionadaTx = new String; var regionaisid = new Array(1,11,2,3,4,5,12,6,7,8,9,10,13,14); var regionaistx = new Array('Todas','ACS Barão Geraldo','BC MACAÉ','Claro BA/SE/MG','Claro CO','Claro NE','BC Ribeirão Preto','Claro PR/SC','Claro RJ/ES','Claro RS','Claro SP1','Claro SP2','BC Juiz de Fora','Claro NO'); for(i=1;i<=regionaisid.length-1;i++){ if( document.getElementById('regional' + regionaisid[i]).checked ){ selecionada = regionaisid[i]; if(qts==0){ selecionadaTx = regionaistx[i]; }else{ selecionadaTx = selecionadaTx + ' | ' + regionaistx[i]; } qts++; } } if(qts==0){ globSelecionada = ''; limpaSite(); document.getElementById('site').disabled = true; }else{ globSelecionada = selecionadaTx; if(qts==1){ mostraSite(selecionada); }else{ if(qts==regionaisid.length - 1){ //se estiverem todas marcadas, marca a regional Todas //evita que um louco saia marcando tudo ao invés de Todas document.getElementById('regional1').checked = true; regionaltodas(); }else{ mostraSiteTodos(); } } } }Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.