Ver Mensaje Individual
  #3 (permalink)  
Antiguo 08/07/2009, 23:37
Avatar de acoevil
acoevil
 
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 15 años, 9 meses
Puntos: 32
Respuesta: clase- Data Grid

Código PHP:
/**
     *Permite remover columnas que no se deseen mostrar
     * 
     *@param array Un array que indica las columnas que no se deben mostrar, se utiliza el mismo titulo de la 
     *       columna para especificar las que no se quieren ver  Eje:  array( 'titulo', 'titulo2' );     
     * 
     */  
     
public function rem_columna$columna = array('') )
     {
         
// Almacenara las nuevas columnas disponibles
        
$nuevoElemento = array();
        
        
        foreach( 
$this->arrayCampos as $key => $valor ) {
            
            
$si false;                        
            
            for( 
$n=0$n count$columna ); $n++ ) {
                
                if( 
$key == $columna$n ] ) {
                    
                    
$si true;

                } 
            }
            
            if( ! 
$si ) {
                                
                
$nuevoElemento$key ] = $valor;
            }
            
            
        }
        
        
        
$this->arrayCampos $nuevoElemento;    
        
     }
     
/**
     * Permite indicar el cellspacing y cellpadding 
     *@param cellspacing
     *@param cellpadding 
     */
     
public function grid_PacingAndPadding$cellspacing$cellpadding )
     {
         
$this->cellspacing $cellspacing;
         
$this->cellpadding $cellpadding;
         
        return 
$this;                  
     }
     
/**
     * Indica los colores de filas y columnas, ademas se puede indicar la manera como seran aplicados
     *  
     * @param String Indica el primer color que tendra el titulo de cada columna
     * @param array Un array de colores  hexadecimales 
     * @param true o false 
     */
     
public function grid_BgColorFC$colorTagTh$colores )
     {
        
$this->bgColor $colores;
        
$this->bgColorTh $colorTagTh;
        
        return 
$this;
     }
     
/**
     *Define tanto la anchura como altura del grid
     * @param int width - Define la anchura del grid en pixels o porcentaje. 
     * @param int height - Define la altura del grid en pixels o porcentaje.
     */
     
public function grid_WidthAndHeight$width$height )
     {
        
$this->width $width;
        
$this->height $height;
        
        return 
$this;
     }
     
/**
     * Define el border, borderColor, background y align del grid
     * @rapam int border Define el número de pixels del borde principal.
     * @param String borderColor Define el color del borde.
     * @param String bgcolor da color de fondo a la tabla. 
     * @param String background Nos permite colocar un fondo para la tabla a partir de un enlace a una imagen.
     * @param String align Alinea horizontalmente la tabla con respecto a su entorno.  
     */
     
public function grid_AtributosTabla$border$borderColor$bgColor$background$align )
     {
         
$this->border $border;
         
$this->borderColor $borderColor;
         
$this->bgColorTabla $bgColor;
         
$this->background $background
         
$this->align $align;
         
         return 
$this;        
     }
     
     public function 
gridMostrar()
     {
         
         
$datos = array();
              
          echo 
'
         <table align="' 
$this->align '" border="' $this->border '"
         bordercolor="' 
$this->borderColor '" background="' $this->background '" 
         cellspacing="' 
$this->cellspacing '" cellpadding="' $this->cellpadding '" 
         bgcolor="' 
$this->bgColorTabla '">';
         
         
// Con lo sgte se genera la nueva fila ( si el usuario lo indica )
         
if ( ! empty( $this->contenidoF ) ) {
            
            echo
            
'
            <tr><td colspan="' 
$this->colspanF '" align="' $this->alignF '">'$this->contenidoF .'</td></tr>
            '
;
        } 
        
        echo 
"<tr bgcolor="$this->bgColorTh .">";
        
// Se generan los <th>
        
foreach ( $this->arrayCampos as $key => $valor ) {
            
            echo 
"<th align=\"center\" width=" $this->width " height=" $this->height ">" $key "</th>";
            
            
$datos$key ] = $this->_explodeC$this->arrayCampos$key ] );    
            
            
$iteraciones count$datos$key ] );    
        }
        echo 
"</tr>";
        
        
        
$v 0;
        
$tam count$this->bgColor );
        
// Se generan los td con los resultados de la Bds
        
for ( $n=0$n $iteraciones$n++ ) {
            
            
/**
             * Si ( v ) es igual al tamaño del array de colores 
            *lo reinicio en 0 de lo contrario sigue con el mismo valor
             */     
            
$v = ( $v == $tam $v );
        
                
            echo 
"<tr bgcolor=" $this->bgColor$v ] . ">";
            
            foreach ( 
$this->arrayCampos as $key => $valor ) {
            
            echo 
"<td align=\"center\"> " $datos$key ][ $n ] . "</td>";
        
            }
            
            echo 
"</tr>";
            
            
$v++;
            
        }
        echo 
"</table>";
        
     }