Comunidad de diseño web y desarrollo en internet online

COMBOBOX DEPENDIENTES - CATEGORIAS, SUB, SUB-SUB, SUB-SUB-SUB

Citar            
MensajeEscrito el 29 Jul 2013 05:33 pm
Buenas días

Quisiera que brinden apoyo en un problema que tengo en llenar 4 combobox dependientes en php, les explico tengo cuatros combobox el primer combo me llena el segundo combo, el tercer combo se llena con el segundo y con el primero o sea que el tercero tiene como parámetros el valor del primero y el segundo, y el cuarto combo se llena con el tercer combo.

Les agradecería que me ayudaran con un ejemplo.

Gracias

Saludos

Por josuego

14 de clabLevel



 

chrome
Citar            
MensajeEscrito el 30 Jul 2013 09:42 pm
Un ejemplo rápido, para más detalles tendre que hacerte un tutorial en www.elporfirio.com

Te pongo aqui framentos de un codigo que hice:

Código :

<select name="inEstadoForo" required id="inEstadoForo">
         <option value="" selected>- Elija un Estado -</option>
         <?php
         $oNuevoEstado = new Foro;
         $estado = $oNuevoEstado->obtenerEstado();
         
         foreach($estado as $indice => $campo){
            echo "<option value='".$campo['idestados']."'>".$campo['estado']."</option>";
         }
         ?>
      </select>

<select id="inMunicipioForo" required>
            <option value="" selected>- Elija un Municipio -</option>
          </select>


viene la parte del JavaScript (aqui uso Jquery)

Código :

$("#inEstadoForo").change(function(){
   obtenerMunicipios($("#inEstadoForo").val());
});

function obtenerMunicipios(estadoElegido){
   $.ajax({
      url: "lib/consultarMunicipio.php",
      type: "POST",
      dataType:"json",
      data: {"estado": estadoElegido}, 
      beforeSend: function(){
         $("#inEstadoForo").attr("disabled","disabled");
         $("#inMunicipioForo").html("<option value='' selected>Cargando...</option>");
         $("#inMunicipioForo").attr("disabled","disabled");
      },
      success: function(respuesta){
         $("#inEstadoForo").removeAttr("disabled");
         if(respuesta.municipios){
            $("#inMunicipioForo").html(respuesta.municipios);
            $("#inMunicipioForo").removeAttr("disabled");
         }
         else{
            $("#inMunicipioForo").html("<option value='' selected>- Elija un Municipio -</option>");
            $("#inMunicipioForo").removeAttr("disabled");
         }
      },
      error: function(xhr, err){
         alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
         alert("responseText: "+xhr.responseText);
      }
   });
}



en el JS anterior se llama a la pagina que consulta lo necesario y tiene el codigo siguiente

Código :

<?php
//Incluimos clases
include("folder.php");
//require_once(DIR_BASE."/class/class.consultas.php");
require_once("../class/class.consultas.php");

$oDatosForo = new Foro;
$municipios = $oDatosForo->obtenerMunicipio(array("estado"=>$_POST['estado']));

foreach($municipios as $indice => $campo){
   $consulta .= "<option value=\"".$campo['idmunicipios']."\">".$campo['municipio']."</option>";
}

if(sizeof($consulta) != 0){
   $respuesta = array("municipios"=>$consulta);
   echo json_encode($respuesta);
}
else {
   $respuesta = array("municipios"=>false);
   echo json_encode($respuesta);
}
?>



Y aqui la funcion.. lo siento si esta algo enredado pero no soy muy bueno en la Programación orientada a Objetos y me falla ;)

Código :

   public function obtenerMunicipio($param = array()){
      $valores = null;
      $consulta = "SELECT * FROM municipios";
      
      if($param['estado']){
         $consulta .= " WHERE idestado = :estado";
         $valores = array("estado"=>$param['estado']);
      }
      
      $oDatosConexion = new conectorDB;
      $municipios = $oDatosConexion->consultarBD($consulta, $valores);
      
      return $municipios;
   }


Pero si esperas puedo hacer el tutorial en video con un codigo más sencillo ^^ aunque no se si me de tiempo hoy. Saludos.

Por elporfirio

Claber

652 de clabLevel

1 tutorial

Genero:Masculino  

FullStack Web Developer

firefox
Citar            
MensajeEscrito el 31 Jul 2013 03:28 pm
Amigo elporfirio gracias por tu ayuda, si te agradecería que me ayudaras con un videotutorial y que sea mas fácil de entender (si lo puedes hacer sencillo sin clases seria mejor) te agradecería, no logro avanzar en mi proyecto por ese problema.

Gracias amigo por tu ayuda :)

Por josuego

14 de clabLevel



 

chrome
Citar            
MensajeEscrito el 31 Jul 2013 05:18 pm
Pero pasale los datos del FTP y que te lo dejen andando...
Estaría bueno... No...?

jajaja

Saludos!

Por SinSemilla

Claber

336 de clabLevel



Genero:Masculino  

i am that i am...

firefox
Citar            
MensajeEscrito el 02 Ago 2013 05:00 pm
Ayuda amigos, les agradecería mucho.

Por josuego

14 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 Ago 2013 05:01 pm
Ayuda, Aquí lo explico mejor mi problema:
tengo 4 select todos cargados de la base de datos, te lo explicare asi
PROYECTO DE UNA EMPRESA CAMARONERA Y ES MI PRACTICA PROFESIONAL

PRIMER
Select (Tipo de Estanques)
opciont (vivieros)
opciont (lagunas)
opciont (pilas de aclimatacion)

SEGUNDO SE LLENA SEGÚN EL TIPO DE ESTANQUE QUE SE SELECCIONE O SEA EL PRIMERO
select (Fincas)
opciont (finca 1)
opciont (finca 2)
opciont (finca 3)

TERCERO SE LLENA SEGÚN LA FINCA EL SEGUNDO Y SEGÚN EL VALOR QUE TENGA EL PRIMERO O SEA SI TENGO VIVEROS AUTOMÁTICAMENTE ME MOSTRARA LAS FINCAS CON VIVIROS EN LA SEGUNDA Y LA TERCERA MOSTRARA LOS SECTORES DE LA FINCA SELECCIONA Y EL VIVERO, O SEA QUE LA CONSULTA RECIBE
value del primero y el value del segundo
select (sectores)
opciont (sector 1)
opciont (sector 2)
opciont (sector 3)

CUARTO SE LLENA CON SOLO EL TECERO
select (lagunas)
opciont (laguna 1)
opciont (laguna 2)
opciont (laguna 3)

el problema esta con el tercero.

espero que me haya explicado bien.
gracias amigos

Por josuego

14 de clabLevel



 

chrome

 

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