viernes, 8 de febrero de 2013

Crear tabla ingresando variables en PHP



Vamos a crear una tabla ingresando variables (":","_","/","*",";")

creando modelo de plantilla
=========================================*/

pantalla : tipo _ plasma /
                 plasma *
proporcion _ wide ;
caracteristicas : contraste _ 5000 *
    contraste _ 5000 *
  contraste _ 5000 ;
tiempo : 8 minutos ;

|-------------------------------------------------------|
|                      | | plasma |
|                    | tipo                |-------------------|
| pantalla          | | plasma |
|                    |---------------------------------------|
|                    | proporcion | wide |
|------------------------------------------------------------|
|                    | contraste         | 5000               |
  |----------------------------------------|
| caracteristicas | contraste          | 5000               |
|                   |---------------------------------------|
|                    | contraste   | 5000                     |
|------------------------------------------------------------|
| tiempo           | 8 minutos                                 |
|------------------------------------------------------------|



Codigo PHP

<?php 
// Armar tablas con simbolos en php
//$datos='pantalla:tipo_plasma1/plasma2*proporcion_wide;';
$datos='pantalla:base_asdas*base11111_sas*asa;';
$cant1=explode(";",$datos);
// creando tabla
$htmlTabla = '<table class="tabla">';
for ($i=0; $i < count($cant1) - 1; $i++): 
// contando rowspan
$c1=explode("/",$cant1[$i]);
$c2=explode("*",$cant1[$i]);
$ct=(count($c1)+count($c2))-1;

$culumnaUno=explode(":", $cant1[$i]);
$htmlTabla = $htmlTabla.'<tr><td rowspan="'.$ct.'">'.$culumnaUno[0].'</td>';
$cant2=explode("*", $culumnaUno[1]);
//creando la segunda columna
      for ($ii=0; $ii < count($cant2); $ii++): 
$culumnaDos=explode("_", $cant2[$ii]);
if (count($culumnaDos)>1) {
$cant3=explode("/", $culumnaDos[1]);
$colspan='1';
}else{
$cant3=0;
$colspan='2';
}
$htmlTabla=$htmlTabla.'<td rowspan="'.count($cant3).'" colspan="'.$colspan.'">'.$culumnaDos[0].'</td>';
     
      if (count($culumnaDos)>1) {
      //creando la tercera columna
      for ($iii=0; $iii < count($cant3); $iii++):
   $htmlTabla=$htmlTabla.'<td>'.$cant3[$iii].'</td></tr><tr>';
endfor;
}else{
$htmlTabla=$htmlTabla.'</tr><tr>';
}
endfor;
$htmlTabla=$htmlTabla.'</tr>';
endfor;
$htmlTabla=$htmlTabla.'</table>';
echo $htmlTabla;


0 comentarios:

Publicar un comentario