Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Problema en una clase

Estas en el tema de Problema en una clase en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Saludos people, tengo una clase y ahi dentro un metodo que me lista los registros de una tabla, el problema es el siguiente, yo quiero ...
  #1 (permalink)  
Antiguo 15/07/2005, 09:36
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 20 años, 11 meses
Puntos: 8
Problema en una clase

Saludos people, tengo una clase y ahi dentro un metodo que me lista los registros de una tabla, el problema es el siguiente, yo quiero que esa lista aparezca dentro de un TD de otra pagina pero la bendita lista no aparece dentro del TD que lo pongo, aqui les envio los script.

Esta es el metodo
Código PHP:
function DB_DoShowResults($table){
    
$rs=$this->DB_DoConsult("select * from ".$table."");
    
$numf=$this->DB_NumFields($rs);
    echo 
"<table width=\"100%\" border=\"0\">";
    echo 
"<tr bgcolor=\"#999999\">";
    for(
$i=0;$i<=$numf-1;$i++){
        echo 
"<td>&nbsp;".strtoupper($this->DB_NameFields($rs,$i))."&nbsp;</td>";
    }
    echo 
"</tr>";
    
$co=0;
    while(
$ares=$this->DB_DoConvertArray($rs)){
        if(
$co%2){
            
$color="#E5E5E5";
        }else{
            
$color="#F5F5F5";
        }
        echo 
"<tr bgcolor=\"".$color."\">";
        for(
$c=0;$c<=$numf-1;$c++){
            echo 
"<td>&nbsp;".$ares[$c]."&nbsp;</td>";
        }
        echo 
"<td>&nbsp;<a href=\"".$_SERVER['PHP_SELF']."?id=".$ares[0]."&sec=ed\">Editar</a>&nbsp;</td>";
        echo 
"<td>&nbsp;<a href=\"".$_SERVER['PHP_SELF']."?id=".$ares[0]."&sec=el\">Eliminar</a>&nbsp;</td>";
        echo 
"</tr>";
        
$co++;
    }
    echo 
"</table>";

La clase funciona bien, ya la probe, funciona chevere.

Aqui les envio la parte donde llamo al metodo
Código PHP:
$sres=$pclass->DB_DoShowResults($table); 
Luego imprimo esa variable dentro de un TD
Código PHP:
<table width="100%" border="0" cellpadding="0" cellspacing="7">
        <tr> 
          <td valign="top"><? echo $sres?></td>
        </tr>
    </table>
please, si alguien puede ayudarme espero que lo haga pq esto es urgente. Gracias de antemano
__________________
El aprendiz.
  #2 (permalink)  
Antiguo 15/07/2005, 13:56
 
Fecha de Ingreso: julio-2005
Mensajes: 8
Antigüedad: 18 años, 9 meses
Puntos: 0
Es extraño el error que tienes, segun entiendo si te imprime la lista, pero no la imprime como tu lo deseas, segun yo no esta mal lo que escribes, cuando a mi me pasa errores parecidos al que tienes, checo el codigo que se me genera en html; ya que muchas veces sin darte cuenta no se cierran bien los algunos tags escritos anteriormente en html por ejemplo que te falte un </table> o algo por el esitlo, ok...

Asi que en resumen si el codigo que te genera en html es el que debe ser, espero esto te funcione y ojala sea un errorcillo pequeño
  #3 (permalink)  
Antiguo 15/07/2005, 22:53
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Bueno... la sola llamada al método produce la impresión de la tabla (debido a que el método está plagado de "echo's").
Código PHP:
// Está mal utilizar esto:
$sres $pclass->DB_DoShowResults($table);
// Ya que ese método no te devuelve un String... sino que lo imprime directamente.
// El método no tiene un "return", por lo que no debes asignarlo a ninguna variable. 
Dos posibles soluciones:
1.-) Utilizar directamente la llamada al método dentro del td:
Código PHP:
<td valign="top"><?php  $pclass->DB_DoShowResults($table); ?></td>
2.-) Modificar el método, quietarle todos los "echo's" y en su lugar asignar esa salida a una variable que devoolverá con "return". De esa manera lo puedes utilizar como pretendías.

Saludos
  #4 (permalink)  
Antiguo 18/07/2005, 11:43
 
Fecha de Ingreso: julio-2005
Mensajes: 8
Antigüedad: 18 años, 9 meses
Puntos: 0
Bueno solo tengo una cosa que decirte jpinedo, soy un estudiante, me considero aun muy principiante y, en un proyecto que estoy realizanco actualmente utilize tu paginador y solo me queda decirte que me parecio muy bueno, te felicito a ti y a todos aquellos que colaboraron en ayudarte en este proyecto tuyo, solo queria comentarte que en mi caso estoy utilizando como gestor de base de datos postgresql y no mysql, pero aun asi no hubo mucho problema en la adaptacion, me es grato encontrarte en este foro y de antemano darte las gracias por tu codigo que dejaste a disposicion de todos...
  #5 (permalink)  
Antiguo 19/07/2005, 14:48
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 20 años, 11 meses
Puntos: 8
En lo que dijiste estas en lo correcto jpinedo, no se com pude hacer esas cosas, pero en fin, a cualquiera nos puede pasar, chevere por su ayuda, espero poder ayudarlos en cualquier momento. Gracias
__________________
El aprendiz.
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 16:48.