Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/03/2005, 21:31
chiwuan
 
Fecha de Ingreso: mayo-2004
Mensajes: 24
Antigüedad: 20 años
Puntos: 0
Evitar índices repetidos tras lectura de una BD

Hola a todos,

Quiero hacer una aplicación sencilla que se encargue de convertir un arreglo bidimensional a una tabla HTML. El arreglo bidimensional lo obtengo a partir de leer una BD usando mysql_fetch_array. Mi código actual es el siguiente:

Código PHP:

function creaTabla($datos) {
    
$t "<table border='1' cellpadding='2' cellspacing='0'><tr>";

    
// Crear los encabezados
    
$d $datos[0];
    foreach (
$d as $cat => $valor) {
        
$t .= "<th>".$cat."</th>";
    }
    
$t .= "</tr>";

    
// Ahora los datos
    
foreach ($datos as $dato) {
        
$t .= "<tr>";
        foreach (
$dato as $valores)
            
$t .= "<td>".$valores."</td>";
        
$t .= "</tr>";
    }
    echo 
$t;

Pensé q sería algo muy sencillo. Sin embargo, me encontré con algo que no sabía, y es que cuando doy un fetch_array se crean arreglos bidimensionales con campos repetidos pero sustituidos por números. Por ejemplo obtengo:

Array
(
[0] => Array
(
[0] => 465
[idCliente] => 465
[1] => NISSAN Vehículos Altamira
[Empresa] => NISSAN Vehículos Altamira
)

[1] => Array
(
[0] => 454
[idCliente] => 454
[1] => Galería en Detalle (Pisos)
[Empresa] => Galería en Detalle (Pisos)
)

[2] => Array
(
[0] => 453
[idCliente] => 453
[1] => Florería Plaza (Regalos)
[Empresa] => Florería Plaza (Regalos)
)
)

Como puede verse, en cada 'fila' de mi arreglo bidimensional obtengo un campo [0] que es igual que el campo [idCliente], así como el campo [1] es el mismo que el campo [Empresa].

Todo esto es lo que me entrega una instucción sencilla de un while() con mysql_fetch_array

Quiero que desaparezcan los índices numéricos repetidos. Quiero quedarme solo con los campos que tienen nombre en texto (idCliente, Empresa) para poder hacer mi tabla.

Ideas?