Ver Mensaje Individual
  #7 (permalink)  
Antiguo 01/07/2013, 21:46
Avatar de Italico76
Italico76
 
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 7 meses
Puntos: 292
Respuesta: Problema con 2 foreach anidados (solo me devuelve 1 registro)

Ignora mi primera sugerencia, era para hacer un metodo de busqueda mas potente pero no aplica aqui, logica que necesitas es esta:

Las categorias y subcategorias son en registros del mismo tipo, asi que tienen los mismos campos y el tratamiento es igual

Cita:
[TABLA CATEGORIAS]
id_categoria
nombre
id_padre
Debes buscar QUE categorias tienen como padre la que el usuario ha seleccionado

Código PHP:
/// Modelo

<?php
public function get_categoria_front($id){          
  
$sql $this->db->query("select * from categorias where id_padre  = $id"); 
return 
$sql;          
}
Código PHP:
/// Vista

<?php 

// viene de un $_GET[] por ejemplo
$id_categoria_seleccionada 2;

// busco que categorias me tienen como padre
// posibilidades: 0,1 ... N registros
$hijas get_categoria_front($id);

if (empty(
$hijas))
   echo 
'-----';
else
   foreach (
$hijas as $hija){
       echo 
"{$hija->id_categoria} : {$hija->nombre}";
   }
OJO...... hace un tiempo no uso CodeIgniter y puede que el modelo no este del todo bien escrito..... hay que hacer siempre algunas consideranciones, solo segui esta vez tu codigo original

NOTA: para mi no tiene sentido que los metodos del modelo se llamanen _front o _back, o sea get_categoria_front() deberia ser la misma funcion que get_categoria_back()
__________________
Salu2!

Última edición por Italico76; 02/07/2013 a las 07:40