Foros del Web » Programando para Internet » PHP »

error al crear categoria subcategoria

Estas en el tema de error al crear categoria subcategoria en el foro de PHP en Foros del Web. Hola a todos. Al llamar la siguiente función, me aparece un error que no sé cómo solucionar. Alguna sugerencia? Código PHP: function  menuList ( $data ...
  #1 (permalink)  
Antiguo 22/07/2012, 11:10
 
Fecha de Ingreso: junio-2008
Mensajes: 291
Antigüedad: 16 años, 5 meses
Puntos: 9
error al crear categoria subcategoria

Hola a todos. Al llamar la siguiente función, me aparece un error que no sé cómo solucionar. Alguna sugerencia?

Código PHP:
function menuList($data$parent )
{
static 
$i 1;
$tab str_repeat(" ",$i);
if(
$data[$parent])
{
$html "$tab<ol class='sortable' id='sortable'>";
$i++;
foreach(
$data[$parent] as $v)
{
$child menuList($data$v->id);
$html .= "$tab<li><div>";
$html .= '<a href="'.$v->url.'">'.$v->title.'</a>';

if(
$child)
{
$i--;
$html .= $child;
$html .= "$tab";
}
la siguiente
$html 
.= '</div></li>';
}
$html .= "$tab</ol>";
return 
$html;
}
else
{
return 
false;
}
}
$query mysql_query("SELECT * FROM menus ORDER BY sort");

while(
$r=mysql_fetch_object($query))
{
$data[$r->parent_id][] = $r;
}

$menu menuList($data);

echo 
$menu;
?> 
el error:

Undefined index: 8 in linea
Código PHP:
"if($data[$parent]" 
  #2 (permalink)  
Antiguo 22/07/2012, 14:22
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: error al crear categoria subcategoria

Tu código es desorganizado, identalo adecuadamente, veo que tratas de hacer una función recursiva, dicho error puede ocurrir al llegar a un nodo sin hijos en tal caso lo ideal es utilizar isset para verificarlo
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...

Etiquetas: html, mysql, sql, subcategoria, categorias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:34.