Comunidad de diseño web y desarrollo en internet online

Como obtener datos de selects dependientes

Citar            
MensajeEscrito el 11 Jul 2015 06:19 pm
Hola a tod@s, el asunto que me trae ahora por estos lares es el siguiente:
Tengo uno codigo de programa que me genera los selects dependientes como los preciso.. pero el caso es que requiero pasar los valores tomados en la primera pagina a otra (s) pagina(s).
Sin mas preambulo aca esta el codigo.

Código :

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="es">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
</style>
   <script type="text/javascript">

      $(document).ready(function(){ 
         $("#departamento").attr("disabled",true); 
         $("#municipio").attr("disabled",true); 
         $("#institucion").attr("disabled",true);
         
         dependencia_sector(); $("#sector").change(function() { 
         $("#departamento").attr("disabled",false); 
         cargar_departamento(); $("#sector").attr("disabled",true); });
         $("#departamento").change(function() { 
         dependencia_municipio(); $("#departamento").attr("disabled",true); });
         $("#municipio").change(function() { 
         dependencia_institucion(); $("#municipio").attr("disabled",true); 
         $("#institucion").attr("disabled",true);});
          });
      function dependencia_sector()
      {
         $.get("scripts/scripts/dependencia-sector.php?", function(resultado){
         var sector = $("#sector").val();
            if(resultado == false)
            {
               alert("Error");
            }
            else
            {
               $("#sector").attr("disabled",false);
               document.getElementById("sector").options.length=1;
               $('#sector').append(resultado);         
            }
         });   
      }   
      function cargar_departamento()
      {
         $.get("scripts/scripts/cargar-departamento.php", function(resultado){
         var departamento = $("#departamento").val();
            if(resultado == false)
            {
               alert("Error");
            }
            else
            {
               $("#departamento").attr("disabled",false);
               document.getElementById("departamento").options.length=1;
               $('#departamento').append(resultado);
            }
         });   
      }
      function dependencia_municipio()
      {
         var code = $("#departamento").val();
         $.get("scripts/scripts/dependencia-municipios.php", { code }, function(resultado){
            if(resultado == false)
            {
               alert("Error");
            }
            else
            {
               $("#municipio").attr("disabled",false);
               document.getElementById("municipio").options.length=1;
               $('#municipio').append(resultado);         
            }
         });
      }
      function dependencia_institucion()
      {
         var code1 = $("#municipio").val();
         $.get("scripts/scripts/dependencia-instituciones.php?", { code: code1 }, function(resultado){
               if(resultado == false)
               {
                  alert("Error");
               }
               else
               {
                  $("#institucion").attr("disabled",false);
                  document.getElementById("institucion").options.length=1;
                  $('#institucion').append(resultado);         
               }
            });   
      }
   var sector = document.querySelector("#sector p:firstchild");
   var departamento = document.querySelector("#departamento p:firstchild");
   var municipio = document.querySelector("#municipio p:firstchild");
   var institucion = document.querySelector("#institucion p:firstchild");      
function reset()
      {
         $("#institucion").attr("disabled",true);
         $("#institucion").val("");
         $("#municipio").val("");
         $("#departamento").val("");
         $("#sector").val("");
         $("#municipio").attr("disabled",true); 
         $("#departamento").attr("disabled",true); 
         $("#sector").attr("disabled",false);
      }
   </script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Datos</title>

</head>
<body>
   <center>

<!--- aca inicia prueba --->
<h2>&nbsp;&nbsp; Ingreso al Sistema</h2>
<form id="form1" name="form1" method="POST" action="parametros.php">

  <table width="100%" border="0" align="center" class="down1">
 
 <tbody>
         
    <tr> 
   <fieldset>DATOS DE SELECCION
      <td colspan="4"><div align="left"><font color="#000000" size="3" face="Geneva, Arial, Helvetica, sans-serif"><strong>DATOS DE SELECCION</strong></font></div></td>
    </fieldset> 
   </tr>
    <tr> 
      <td><font color="#000099" size="3" face="Geneva, Arial, Helvetica, sans-serif">Sector: </font></td>
      <td colspan="1">
       <font color="#000099" size="2" face="Geneva, Arial, Helvetica, sans-serif"> 
         <label>
          <select name="sector" id="sector">
            <option value="0">Selecciona una...</option>
        </select>
         </label>
        </font>
     </td>
      <td><font color="#000099" size="3" face="Geneva, Arial, Helvetica, sans-serif">Departamento: </font></td>
      <td>
     <font color="#000099" size="2" face="Geneva, Arial, Helvetica, sans-serif"> 
        <label>
          <select name="departamento" id="departamento">
            <option value="0">Selecciona una...</option>
        </select>
        </label>
      </font>
     </td>
     <td><font color="#000099" size="3" face="Geneva, Arial, Helvetica, sans-serif">Municipio: </font></td>
      <td colspan="1">
       <font color="#000099" size="2" face="Geneva, Arial, Helvetica, sans-serif"> 
         <label>
          <select name="municipio" id="municipio">
            <option value="0">Selecciona una...</option>
        </select>
         </label>
        </font>
     </td>
   </tr>
   <tr> 
      <td><div align="right"><font color="#000099" size="3" face="Geneva, Arial, Helvetica, sans-serif">Institucion: </font></div></td>
      <td colspan="6"><font color="#000099" size="2" face="Geneva, Arial, Helvetica, sans-serif"> 
        <label>
          <select name="institucion" id="institucion">
            <option value="0">Selecciona una...</option>
        </select>
          </label>
        </font></td>
   </tr>
  <tr>
    <td colspan="5" align="left"><div align="CENTER">
     <input type="submit" class="boot" name="guarda" value="GUARDAR" align="left"/> 
     <input type="submit" class="boot" name="nuevo" value="NUEVO" align="left"/>
     <input type="submit" class="boot" name="ingresar" value="INGRESAR" align="left"/>
     </div>
   </td>
  </tr>
  </tbody></table>
</form>  </center>
</html>


Esta es la clase combos

Código :

<?php

class selects extends MySQL
{
   var $code = "";
   
   function cargardepartamento()
   {
      $consulta = parent::consulta("SELECT departamento,com_id FROM localidad ORDER BY departamento ASC");
      $num_total_registros = parent::num_rows($consulta);
      if($num_total_registros>0)
      {
         $departamentos = array();
         while($departamento = parent::fetch_assoc($consulta))
         {
            $code = $departamento["com_id"];
            $name = $departamento["departamento"];            
            $departamentos[$code]=$name;
         }
         return $departamentos;
      }
      else
      {
         return false;
      }
   }
   function cargarmunicipios()
   {
      $consulta = parent::consulta("SELECT municipio,prov_id FROM localidad WHERE com_id = '".$this->code."' ORDER BY municipio ASC ");
      $num_total_registros = parent::num_rows($consulta);
      if($num_total_registros>0)
      {
         $municipios = array();
         while($municipio = parent::fetch_assoc($consulta))
         {
            $code = $municipio["prov_id"];
            $name = $municipio["municipio"];            
            $municipios[$code]=$name;
         }
         return $municipios;
      }
      else
      {
         return false;
      }
   }
   function cargarinstituciones()
   {
      $consulta = parent::consulta("SELECT nombre,loc_id FROM localidad WHERE prov_id = '".$this->code."'");
      $num_total_registros = parent::num_rows($consulta);
      if($num_total_registros>0)
      {
         $instituciones = array();
         while($institucion = parent::fetch_assoc($consulta))
         {
            $code = $institucion["loc_id"];
            $name = $institucion["nombre"];            
            $instituciones[$code]=$name;
         }
         return $instituciones;
      }
      else
      {
         return false;
      }
   }   
   function cargarSector()
   {
      $consulta = parent::consulta("SELECT sector,sect_id FROM localidad");
      $num_total_registros = parent::num_rows($consulta);
      if($num_total_registros>0)
      {
         $sectores = array();
         while($sector = parent::fetch_assoc($consulta))
         {
            $code = $sector["sect_id"];
            $name = $sector["sector"];            
            $sectores[$code]=$name;
         }
         return $sectores;
      }
      else
      {
         return false;
      }
   }   
   
}
?>


Estos son los archivos que seleccionan de la base los elementos.

Código :

<?php
include("../clases/class.mysql.php");
include("../clases/class.combos.php");
$sectores = new selects();
$sectores->code = $_GET["code"];
$sectores = $sectores->cargarSector();
foreach($sectores as $key=>$value)
{
      echo "<option value=\"$key\">$value</option>";
}
?>

Código :

<?php
include("../clases/class.mysql.php");
include("../clases/class.combos.php");
$selects = new selects();
$departamentos = $selects->cargardepartamento();
foreach($departamentos as $key=>$value)
{
  echo "<option value=\"$key\">$value</option>";
}
?>

Código :

<?php
include("../clases/class.mysql.php");
include("../clases/class.combos.php");
$municipios = new selects();
$municipios->code = $_GET["code"];
$municipios = $municipios->cargarmunicipios();
foreach($municipios as $key=>$value)
{
      echo "<option value=\"$key\">$value</option>";
}
?>


Código :

<?php
include("../clases/class.mysql.php");
include("../clases/class.combos.php");
$instituciones = new selects();
$instituciones->code = $_GET["code"];
$instituciones = $instituciones->cargarinstituciones();
foreach($instituciones as $key=>$value)
{
      echo "<option value=\"$key\" font size='2' >$value</option>";
}
?>


No se si con estos datos me puedan colaborar para realizar lo que requiero que es: obtener el dato seleccionado y trabajarlo en otra pagina.. en verdad lo he intentado pero no me sale lo que requiero.. lo maximo que he logrado es traer o trabajar solo con el ultimo dato.. pero necesito es todos los datos..
por su colaboracion.. Mil Gracias.

Por nitramara

30 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 13 Jul 2015 06:38 pm
Para enviarlos los "SELECTS" deben estar en un <form> o en su caso recuperarlos uno por uno con una función de JS.

Mmmm creo que es hora de actualizar los tutoriales.

Por elporfirio

Claber

652 de clabLevel

1 tutorial

Genero:Masculino  

FullStack Web Developer

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.