Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/05/2013, 08:49
Avatar de engonga
engonga
Usuario no validado
 
Fecha de Ingreso: marzo-2002
Ubicación: Buenos Aires
Mensajes: 1.300
Antigüedad: 22 años, 2 meses
Puntos: 8
duda con function

hola tengo una funcion que me genera un div cada vez que la llamo
la función es la siguiente

Código PHP:
function get_mlm_listing() {

    global 
$wpdb;
    global 
$current_user;
    if (isset(
$_GET["current_user_id"]) && !empty($_GET["current_user_id"]))
    {
        
$current_user_id $_GET["current_user_id"];
    }
     else 
    {
        
$current_user_id $current_user->ID;
    }
    
$users $wpdb->get_results($wpdb->prepare("SELECT * FROM mlm WHERE parent_user_id = %d"$current_user_id));
    if (
$users == null && $current_user->ID == $current_user_id)
    {
        echo 
"<br />";
        echo 
"No tienes miembros en tu red";
        
//echo "You don't have any members below you yet, here is your referral link: \r
        /*<a href=" . get_bloginfo("url"). "/" . $current_user->ID . ">" . get_bloginfo("url") . '' . "/" . $current_user->ID . "</a><br />";
        */
    
}
     else 
    {        
        foreach (
$users as $obj)
        {
            
$user_count $wpdb->get_var($wpdb->prepare("SELECT COUNT(*) FROM mlm WHERE parent_user_id = %d"$obj->user_id));
            if (
is_plugin_active("buddypress/bp-loader.php"))
            {
                
$user_email $wpdb->get_var($wpdb->prepare("SELECT user_email FROM " $wpdb->prefix "users WHERE ID = %d"$obj->user_id));
                
                
$user_nicename $wpdb->get_var($wpdb->prepare("SELECT user_nicename FROM " $wpdb->prefix "users WHERE ID = %d"$obj->user_id));
                
                
$user_profile trim(str_replace(" """strtolower($obj->login_id)));
                
$url site_url();
                
$wpmlm_contact "<a href='" $url "/members/" $user_nicename "' target='_blank'>[Contacar con el usuario]</a><br> --> <b>".$user_email."</b>";
            }
             else 
            {
                
$user_email $wpdb->get_var($wpdb->prepare("SELECT user_email FROM " $wpdb->prefix "users WHERE ID = %d"$obj->user_id));
                
$wpmlm_contact '' "<a href='mailto:" $user_email "'>[Contact User]</a>";
            }
            
            echo 
"<div style='margin-left:30px; border:solid thin #ccc'><a href='javascript:;' class='L" $current_user_id "' rel='" $obj->user_id "'>" $obj->login_id " (" $user_count ")</a>&nbsp;&nbsp; " $wpmlm_contact "</div>";
            continue;
        }        
    }        
    exit();


entonces me crea una array ($obj) y no puedo poner un contador de total de los registros...

mi pregunta es existe la forma que puede hacer que me recorra la base de datos indefinidamente y me dibuje todos los registros

lo que pasa es que el campo parent_user_id cadavez es diferente, me explico es una tabla de referidos y tiene infinidad de niveles entonce lo que hace ahora es, mira cuantos referidos tengo en mi primer nivel... despues cuando me los lista le pido cuantos referidos tiene mi primer referido y así hasta el final

aqui dejo un esquema

Padre
- Hijo 1
-hijo 1.1
-hijo 1.2
- Hijo 2
-hijo 2.1
-Hijo 3
-hijo 3.1
-hijo 3.2
*hijo 3.2.1
-hijo 3.3


espero haberme explicado