Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/04/2012, 09:12
wimigo03
 
Fecha de Ingreso: abril-2012
Mensajes: 11
Antigüedad: 12 años, 1 mes
Puntos: 0
Pregunta Relacionar 4 tablas

hola quisiera q me ayuden con este problema ya estoy dando muchas vueltas... pasa que tengo 4 tablas:
tabla1: seminario(id_seminario, titulo)
tabla2: inscripcion(id_inscripcion, id_responsable,id_otro,id_seminario)
tabla3: otro(id_otro, Nombre_otro)
tabla4:responsable(id_responsable, Nombre_r)
----Lo que quiero es listar los nombres de las personas q asisten a un seminario comparando su id y jalando de la otro(quiero el Nombre_otro) y de la tabla responsable (quiero el Nombre_r)...lo estoy haciendo asi pero no me resulta:

Este es la vista

<table">
<thead>
<tr>
<th><center>N</center></th>
<th><center>OTROS</center></th>
</tr>
</thead>
<tr class="odd gradeX">
<?php foreach ($this->paginator as $lista){$n++;?>
<td><?echo $n;?></td>
<td><?php if($lista['id_responsable']){

echo $lista['Nombre_r'];
}
elseif($lista['id_otro']){

echo $lista['Nombre_otro'];
}
?></td>
</tr>
<?} ?>
</table>


y estoy usando este modelo:

public function Listar($filters = array (), $sortField = null)
{
$estado = 'Activo';
$select = $this->select();
$select->setIntegrityCheck(false)
->from(array('a' => 'seminario'))
->join(array ('b'=>'inscripcion'),'a.id_seminario=b.id_seminari o')

->join(array ('c'=>'responsable'),'b.id_responsable=c.id_respon sable')
->join(array ('d'=>'otro'),'b.id_otro=d.id_otro');

if(count($filters) > 0) {
foreach ($filters as $field => $filter) {
$select->where($field . '= ?', $filter);

}

}
if(null != $sortField){
$select->order($sortField);
}
$adapter = new Zend_Paginator_Adapter_DbTableSelect($select);
return $adapter;

}



Desde ya agradesco su ayuda....