Buenos dias, tengo varios dias intentando hacer unos combos dependientes y queria ver si me podian ayudar. pues aqui la cuestion.
Mis tablas son:
tbl_estado
id (PK)
estado
tbl_municipio
id (PK)
idestado(FK)
municipio
tbl_Parroquia
id (PK)
idmunicipio (FK)
parroquia
La tabla que necesito que tenga la ubicacion se llama tbl_estructura y en ella tengo almacenado solo el id de la parroquia, ya que con el se puede saber todo lo demas.
tbl_estructura
id
idparroquia
denominacion
Una vez sabiendo eso tengo mi Form para crear un nuevo organismo en el mismo tengo este codigo, hasta ahora solo he trabajado en la relacion Estado-Municipio que obviamente no he podido realizar. en el form tengo esto
<div class="row">
<?php echo $form->labelEx($model,'idestado'); ?>
<?php echo $form->dropDownList($model,'id', //idestado
CHtml::listData(TblEstado::model()->findAll(),'id','estado'),
array(
'ajax'=>array(
'type'=>'POST',
'url'=>CController::createUrl('TblEstructura/Selectestado'),
'update'=>'#'.CHtml::activeId($model,'municipio'),
),
)
//CHtml::listData(TblEstado::model()->findAll(),'id','estado')
); ?>
<!-- <?php echo $form->error($model,'idestado'); ?> No tienen Error porque no son necesario-->
</div>
<div class="row">
<?php echo $form->labelEx($model,'municipio'); ?>
<?php echo $form->dropDownList($model,'id',
CHtml::listData(TblMunicipio::model()->findAll(),'id','municipio')
); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'idparroquia'); ?>
<?php echo $form->dropDownList($model,'idparroquia',
CHtml::listData(TblParroquia::model()->findAll(),'id','parroquia')
); ?>
<?php echo $form->error($model,'idparroquia'); ?>
</div>
en el modelo tengo la funcion Selectestado asi:
public function actionSelectestado()
{
$id_uno = $_POST ['TblEstructura']['id'];
$lista = TblMunicipio::model()->findAll('id = :id_uno',array(':id_uno'=>$id_uno));
$lista = CHtml::listData($lista, 'id', 'municipio');
foreach ($lista as $valor => $municipio) {
echo CHtml::tag('option',array('value'=>$valor),CHtml::encode($municipio),true);
}
}
Todo lo hice siguiendo un tutorial bastante bueno de youtube.
cambie algunas cosas ya que la relacion que muestran en el video no igual a la mia. la cuestion esta en que no me actualiza el combo de municipio. obviamente estoy haciendo algo mal, pero no se que es… agradeceria cualquier ayuda.
Cabe destacar que los id(PK) se llaman igual en todas las tablas y por peticion de el DBA no puedo cambiarlas. estoy realmente desesperado ya. necesito ayuda T_T