Ver Mensaje Individual
  #5 (permalink)  
Antiguo 21/01/2008, 05:38
Avatar de sumolari
sumolari
 
Fecha de Ingreso: mayo-2006
Ubicación: localhost
Mensajes: 1.367
Antigüedad: 18 años, 10 meses
Puntos: 18
Re: creando una lista de datos padre, hijos y nietos con mysql

Ya he logrado que funcione, este el el código php de las funciones:

Código PHP:
function show_categories($allow_visibles$allow_subcats$order_by$order_dir){
    if(!isset(
$allow_visibles)) { $allow_visible 0; }
    if(!isset(
$order_by)) { $order_by 'name'; }
    if(!isset(
$order_dir)) { $order_dir 'asc'; }
    switch(
$order_by) {
        case 
'name':
            
$order 'name';
            break;
        case 
'order':
            
$order 'order';
            break;
        case 
'visible':
            
$order 'visible';
            break;
        default:
            
$order 'id';
            break;
    }
    if(
$order_dir 'asc'){ $ordered_dir 'ASC'; } else { $ordered_dir 'DESC'; }
    if(
$allow_visibles == 'no') { $allowed_visibles 'no'; } elseif ($allow_visibles == 'yes') { $allowed_visibles 'not'; } else {$allowed_visibles 'no'; }
    include(
'config.php');
    
$sql "SELECT * FROM categories WHERE visible <> '$allowed_visibles' AND parent = 0 ORDER BY $order $ordener_dir";
    
$rs = @mysql_query($sql);
    if(
$rs){
        echo 
'<ul>';
        while(
$cat mysql_fetch_array($rs)){
            echo(
'<li>'.$cat['name'].'</li>');
            if(
$allow_subcats == 'yes') {
            
show_subcategories($cat['id'], $allowed_visibles$order$ordener_dir);
            }
        }
        echo 
'</ul>';
    }
    
mysql_close($conn['connection_step1']);
}  

function 
show_subcategories($parent$allowed_visibles$order$ordener_dir) {
    
$sql "SELECT * FROM categories WHERE visible <> '$allowed_visibles' AND parent = $parent ORDER BY $order $ordener_dir";
    
$result mysql_query($sql);
    if(
$result) {
        echo 
'<ul>';
        while(
$subcat mysql_fetch_array($result)) {
            echo(
'<li>'.$subcat['name'].'</li>');
            
show_subcategories($subcat['id'], $allowed_visibles$order$ordener_dir);
        }
        echo 
'</ul>';
    }


Última edición por sumolari; 21/01/2008 a las 06:00