prueba con esta class que hice
Código PHP:
Ver original<?php
require_once 'Conexion.php';
class DatabaseTable
{
private $consulta;
private $matriz;
private $tabla;
public function __construct($consulta)
{
$this->consulta = $consulta;
}else {
Throw new Exception("El parametro debe ser una consulta SQL válida");
}
$this->verificarDatos();
}
private function verificarDatos()
{
$db = new Conexion();
$matriz = $db->query($this->consulta);
$this->matriz = $matriz->fetchAll(PDO::FETCH_ASSOC);
}else {
Throw new Exception("La consulta presenta errores");
}
}
public function generateTable()
{
$contador = -1;
$enum = 1;
$this->tabla .= "<table>";
foreach($this->matriz as $fila => $celdas) {
$this->tabla .= $contador < 0 ? "<tr><td>#</td>" : "<tr><td>$enum</td>";
foreach($celdas as $columna => $celda) {
if(++$contador < 1) {
foreach($ncols as $ncol) $this->tabla .= "<th>$ncol</th>";
$this->tabla .= "</tr><tr><td>$enum</td>";
}
$this->tabla .= "<td>$celda</td>";
}
$this->tabla .= "</tr>";
$enum++;
}
$this->tabla .= "</table>";
return $this->tabla;
}
}
el uso..
Código PHP:
Ver original<?php
try {
$tabla = new DatabaseTable("SELECT * FROM db_editor");
echo $tabla->generateTable();
}catch(Exception $e) {
echo " - Warning (" . $e->getCode() . ") [" . pathinfo($e->getFile(), PATHINFO_BASENAME
) . "::" . $e->getLine() . "] " . $e->getMessage() . "<br />\n"; }
?>