elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 04:53  


Tema destacado: Únete al Grupo Steam elhacker.NET

+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP
| | | |-+  [SOLUCIONADO] Dependent DropdownList con Yii framework
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [SOLUCIONADO] Dependent DropdownList con Yii framework  (Leído 3,024 veces)
Graphixx


Conectado Conectado

Mensajes: 576


Webmaster (PHP)


Ver Perfil WWW
[SOLUCIONADO] Dependent DropdownList con Yii framework
« en: 19 Mayo 2011, 17:45 »

Hola compañeros ya que es medio complicado implementar combos dependientes en el framework. les comparto el codigo trabajando.

Lo estoy implementando:
***********************

Modelo: CombosDependientes
Controlador: CombosDependientes
Vista: _form.php

Haciendo uso de los modelos:
****************************

Departamento:
codDepartamento
strDepartamento

Municipio:
codMunicipio
strMunicipio
codDepartamento

Corregimiento:
codCorregimiento
strCorregimiento
codMunicipio
codDepartamento

En el controlador:
Código
<?php
// Funcion para llenar combobox dependiente de lo que seleccione el usuario en Departamento/Municipio/Corregimiento
 
public function actionDynamicMunicipios()
   {
       $data = Municipio::model()->findAll('codDepartamento=:parent_id',
                       array(':parent_id'=>(int) $_POST['CombosDependientes']['codDepartamento']));
 
 
       $data = CHtml::listData($data,'codMunicipio','strMunicipio');
echo CHtml::tag('option',array('value' => ''),'Seleccione un municipio...',true);
           foreach($data as $id => $value)
           {
               echo CHtml::tag('option',array('value' => $id),CHtml::encode($value),true);
           }
 
   }
 
   public function actionDynamicCorregimientos()
   {
       $data = Corregimiento::model()->findAll('codMunicipio=:parent_id',
                       array(':parent_id'=>(int) $_POST['CombosDependientes']['codMunicipio']));
 
       $data = CHtml::listData($data,'codCorregimiento','strCorregimiento');
echo CHtml::tag('option',array('value' => ''),'Seleccione un corregimiento...',true);
           foreach($data as $id => $value)
           {
               echo CHtml::tag('option',array('value' => $id),CHtml::encode($value),true);
           }
   }
?>
 

En la vista:
Código
<!-- INICIO COMBOS DEPENDIENTES -->
<div class="row">
       <?php echo $form->labelEx($model,'Departamento'); ?>
       <?php
             $departamento = new CDbCriteria;
             $departamento->order = 'strDepartamento ASC';
       ?>
       <?php
             echo $form->dropDownList($model,'codDepartamento',CHtml::listData(Departamento::model()->findAll($departamento),'codDepartamento','strDepartamento'),
                       array(
                           'ajax' => array(
                           'type' => 'POST',
                           'url' => CController::createUrl('CombosDependientes/dynamicMunicipios'),
                           'update' => '#CombosDependientes_codMunicipio'
                       ),'prompt' => 'Seleccione un Departamento...'
                 )
             );
       ?>
       <?php echo $form->error($model,'codDepartamento'); ?>
   </div>
 
   <div class="row">
       <?php echo $form->labelEx($model,'Municipio'); ?>
       <?php
             $municipio = new CDbCriteria;
             $municipio->order = 'strMunicipio ASC';
       ?>
       <?php
             echo $form->dropDownList($model,'codMunicipio',CHtml::listData(Municipio::model()->findAll($municipio),'codMunicipio','strMunicipio'),
                       array(
                           'ajax' => array(
                           'type' => 'POST',
                           'url' => CController::createUrl('CombosDependientes/dynamicCorregimientos'),
                           'update' => '#CombosDependientes_codCorregimiento'
                       ),'prompt' => 'Seleccione un Municipio...'
                   )
             );
       ?>
       <?php echo $form->error($model,'codMunicipio'); ?>
   </div>
 
 
   <div class="row">
 
       <?php echo $form->labelEx($model,'Corregimiento'); ?>
       <?php echo $form->dropDownList($model,'codCorregimiento',array('Seleccione un Corregimiento...'));?>
       <?php echo $form->error($model,'codCorregimiento'); ?>
   </div>
<!-- FIN COMBOS DEPENDIENTES -->
 

El codigo trabaja perfecto :D


« Última modificación: 12 Junio 2011, 08:34 por Graphixx » En línea

Nakp
casi es
Ex-Staff
*
Desconectado Desconectado

Mensajes: 6.334

he vuelto :)


Ver Perfil WWW
Re: [DUDA] Dependent DropdownList con Yii framework
« Respuesta #1 en: 22 Mayo 2011, 20:03 »

pues... no discutire la forma en que trabajas con Yii, no lo he usado a fondo pero.. por que llamas al modelo en una vista? x_X

supongo que lo estas haciendo en base a este tutorial :xD

http://www.yiiframework.com/wiki/24/creating-a-dependent-dropdown/

no veo nada distinto mas que el replace :P  perdona que no lo compruebe yo mismo pero me gustan mas otros frameworks xD


« Última modificación: 22 Mayo 2011, 20:07 por Nakp » En línea

Ojo por ojo, y el mundo acabará ciego.
Graphixx


Conectado Conectado

Mensajes: 576


Webmaster (PHP)


Ver Perfil WWW
Re: [SOLUCIONADO] Dependent DropdownList con Yii framework
« Respuesta #2 en: 24 Mayo 2011, 23:17 »

ya lo solucione yo solo  ::) A proposito compa, en que desarrollas, Kumbia, Cake, Zend ???....
En línea

Nakp
casi es
Ex-Staff
*
Desconectado Desconectado

Mensajes: 6.334

he vuelto :)


Ver Perfil WWW
Re: [SOLUCIONADO] Dependent DropdownList con Yii framework
« Respuesta #3 en: 25 Mayo 2011, 01:33 »

codeigniter, fuel, doophp, a veces zend :) +jquery hardcoded xD
En línea

Ojo por ojo, y el mundo acabará ciego.
pabloramirez77

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: [SOLUCIONADO] Dependent DropdownList con Yii framework
« Respuesta #4 en: 1 Abril 2012, 22:43 »

Hola amigo, estoy probando tu codigo pero el mismo no me funciona, te anexo mi codigo a ver si me puedes ayudar.

Lo estoy implementando:
***********************
Modelo: Institucion
Controlador: InstitucionController
Vista: _form.php

_form.php
<?php
// Funcion para llenar combobox dependiente de lo que seleccione el usuario en Estado/Municipio/Parroquia   
    <!-- INICIO COMBOS DEPENDIENTES -->
    
    <div class="row">
        <?php echo $form->labelEx($model,'Estado'); ?>
        <?php
              $estado = new CDbCriteria;
              $estado->order = 'nombre_estado ASC';
        ?>
        <?php
              echo $form->dropDownList($model,'id_estado',CHtml::listData(estado::model()->findAll($estado),'id_estado', 'nombre_estado'),
                        array(
                            'ajax' => array(
                            'type' => 'POST',
                            'url' => CController::createUrl('InstitucionController/actionDynamicMunicipios'),
                            'update' => '#InstitucionController_id_municipio'
                        )   ,'prompt' => 'Seleccione un estado..'    
                  )
              );
        ?>
        <?php echo $form->error($model,'id_estado'); ?>
    </div>
    
    <div class="row">
        <?php echo $form->labelEx($model,'Municipio'); ?>
        <?php
              $municipio = new CDbCriteria;
              $municipio->order = 'Nombre_Municipio ASC';
        ?>
        <?php
              echo $form->dropDownList($model,'id_municipio',CHtml::listData(municipio::model()->findAll($municipio),'id_municipio','nombre_municipio'),
                        array(
                            'ajax' => array(
                            'type' => 'POST',
                            'url' => CController::createUrl('CombosDependientes/dynamicCorregimientos'),
                            'update' => '#InstitucionController_id_parroquia'
                        ),'prompt' => 'Seleccione un Municipio...'
                    )
              );
        ?>
        <?php echo $form->error($model,'codMunicipio'); ?>
    </div>
    
    <div class="row">
 
        <?php echo $form->labelEx($model,'Corregimiento'); ?>
        <?php echo $form->dropDownList($model,'id_parroquia',array('Seleccione un Corregimiento...'));?>
        <?php echo $form->error($model,'id_parroquia'); ?>
    </div>
    
    <!-- FIN COMBOS DEPENDIENTES -->


?>

InstitucionController.php
 public function actionDynamicMunicipios()
    {
        $data = Municipio::model()->findAll('codDepartamento=:parent_id',
                        array(':parent_id'=>(int) $_POST['Institucion']['id_estado']));
 
 
        $data = CHtml::listData($data,'id_Municipio','nombre_Municipio');
      echo CHtml::tag('option',array('value' => ''),'Seleccione un municipio...',true);
            foreach($data as $id => $value)
            {
                echo CHtml::tag('option',array('value' => $id),CHtml::encode($value),true);
            }
 
    }
 
    public function actionDynamicCorregimientos()
    {
        $data = Corregimiento::model()->findAll('codMunicipio=:parent_id',
                        array(':parent_id'=>(int) $_POST['Institucion']['id_municipio']));
 
        $data = CHtml::listData($data,'id_parroquia','nombre_parroquia');
      echo CHtml::tag('option',array('value' => ''),'Seleccione un corregimiento...',true);
            foreach($data as $id => $value)
            {
                echo CHtml::tag('option',array('value' => $id),CHtml::encode($value),true);
            }
    }
En línea
pabloramirez77

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: [SOLUCIONADO] Dependent DropdownList con Yii framework
« Respuesta #5 en: 2 Abril 2012, 00:19 »

Gracias buen amigo ya encontre la solucion.. un abrazo
En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Asp.net] Redireccionamiento con DropDownList???
.NET
mbc 5 2,775 Último mensaje 6 Marzo 2008, 23:16
por [D4N93R]
.C# DropDownList
.NET
ave_99 0 1,908 Último mensaje 19 Septiembre 2008, 18:29
por ave_99
LLENAR DROPDOWNLIST C# .NET
.NET
eaguila7 2 6,892 Último mensaje 16 Octubre 2009, 15:12
por MANULOMM
NovaXplosion Framework - Framework de pentest [Unete al desarrollo!] « 1 2 »
Java
Debci 24 3,839 Último mensaje 28 Enero 2010, 18:00
por Debci
Manual 02 para aprender YII FRAMEWORK [ Instalacion de Mbmenu en YII FRAMEWORK]
PHP
Graphixx 0 1,158 Último mensaje 10 Noviembre 2011, 19:43
por Graphixx
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines