[ayuda] sistema de herencia

Tema en 'Programación & Programación Web' iniciado por cavoso, 31 Ene 2012.

  1. cavoso

    cavoso Usuario Casual nvl. 2
    187/244

    Registrado:
    31 May 2008
    Mensajes:
    2.792
    Me Gusta recibidos:
    14
    bueno la cosa es asi, necesito hacer un sistema de herencia tengo la tabla producto y la tabla relacion, es asunto es lo siguiente, cada producto puede tener n productos aderidos los cuales aparecen en la tabla relacion, asi que debe consultar todos los productos hijos que esten ligados a un producto padre, hasta ahi yo no tengo ningun problema, mi problema se presenta cuando tengo que revisar los productos hijos para ver que estos no tengan productos hijos y si estos tienen productos hijos mostrarlos y asi susecivamente hasta que no existea ninguna producto que tenga hijos, podria hacerlo colocando while dentro de otro while pero el sistema tiene que ser automatico es decir que lo aga solo y sin ningun limitante, ya que al colocar while dentro de otro while la herencia se limita a la cantidad de while que existan dentro del while principal, por ejemplo si tengo 20 while solo obtendre 20 generaciones de productos hijos pero en caso de que sean 21 o mas no tendre esos productos ya que la sentencia no los mostrata, alguien sabe o se le ocurre como se podria hacer esto, se los agradeceria mucho.
     
  2. Aguil@

    Aguil@ Usuario Habitual nvl.3 ★
    197/244

    Registrado:
    10 Oct 2007
    Mensajes:
    14.337
    Me Gusta recibidos:
    38
    no se si sirva pero es una combi de php y mysql
    podrias preguntar algo como
    Insertar CODE, HTML o PHP:
    $sql= "SELECT [tabla que quieres buscar] , [otra quizas]
              FROM [tablapadre]
             WHERE [una  valor de las nuevas tablas,ej: cantidad] >0";
    
    esto seria una idea para "revisar" ,busca y busca hasta el valor sea igual o mayor , pero no le importa si son 20 o mas (es una idea cavoso)

    para mostrar algo en el codigo que tengo sale un foreach abajo del cero del codigo de arriba
    Insertar CODE, HTML o PHP:
    foreach($dhb->query($sql) as $row)
    {
     print "Articulo_por_ejemplo".$row[tabla que quieres buscar].Precio: ".$row[otra quizas].";
    }
    
    ojala sirva! si no ...no se , pero creo va mas en mysql hacer que te revise las tablas con el SELECT,WHERE ,FROM...
     
  3. cavoso

    cavoso Usuario Casual nvl. 2
    37/41

    Registrado:
    31 May 2008
    Mensajes:
    2.792
    Me Gusta recibidos:
    14
    gracias por tu idea pero no es lo que busco
    lo que pasa es que hay un producto padre y atraves de el obtengo los productos hijos pero el punto es que esos productos hijos a la ves son padres y por ende tienes productos hijos y eso es lo que tengo que hacer buscar hacia abajo hasta que ningun producto tenga algun producto hijo, no se si me entienen o sino me explico bien
     
  4. El Fin

    El Fin Usuario Habitual nvl.3 ★
    187/244

    Registrado:
    2 Oct 2009
    Mensajes:
    16.665
    Me Gusta recibidos:
    16
    No me quedò muy clara la idea pero bàsicamente cada producto deberìa buscar su padre o hijo tantas veces como sea necesario hasta que ya no encuentre dicha relacion (esa serìa la condicion del while).

    Y se debe hacer esto por cada producto de la tabla productos (for loop).

    Entonces seria un while que contiene un for loop.

    Saludos.
     
  5. Aguil@

    Aguil@ Usuario Habitual nvl.3 ★
    197/244

    Registrado:
    10 Oct 2007
    Mensajes:
    14.337
    Me Gusta recibidos:
    38
    algo asi dices tu! ?????

    Insertar CODE, HTML o PHP:
    $brush_price = 5;  $counter = 10;  echo "<table border=\"1\" align=\"center\">"; echo "<tr><th>Quantity</th>"; echo "<th>Price</th></tr>"; while ( $counter <= 100 ) { 	echo "<tr><td>"; 	echo $counter; 	echo "</td><td>"; 	echo $brush_price * $counter; 	echo "</td></tr>"; 	$counter = $counter + 10; } echo "</table>";
     
  6. cavoso

    cavoso Usuario Casual nvl. 2
    37/41

    Registrado:
    31 May 2008
    Mensajes:
    2.792
    Me Gusta recibidos:
    14
    el tema era el siguiente un producto puede tener un padre y/o tambien un hijo, la idea del programa era que buscara los hijos de dicho producto, y los hijos de los hijos del producto y asi sucesivamente, sin envargo eso puede producir un bulce infinito que terminaria por sobrecargar el servidor, por ende decidimos abortar el poryecto ya que se puede hacer pero con alguna limitacion es decir, solamente la cantidad de hijos y sub hijos que se establesca pero gracias de todas forma a todos por sus aportes