Foros del Web » Programando para Internet » PHP »

Array

Estas en el tema de Array en el foro de PHP en Foros del Web. Hola a tod@s: Mirad tengo el codigo que reflejo abajo, el problema es que lo que pretendo es meter los resultados en un array, en ...
  #1 (permalink)  
Antiguo 06/07/2003, 14:52
Avatar de Torus  
Fecha de Ingreso: enero-2002
Ubicación: Tú buscame y me encontraras
Mensajes: 413
Antigüedad: 22 años, 10 meses
Puntos: 0
Pregunta Array

Hola a tod@s:
Mirad tengo el codigo que reflejo abajo, el problema es que lo que pretendo es meter los resultados en un array, en este caso son nombres de tablas y de sus correspondientes campos.
De tal forma que posteriormente pueda llamar al array(nombre_de_la_tabla) y me muestre sus campos (NO registros).
Marco en negrita donde yo me hago un lio.
Gracias a tod@s
P.D (solo pongo la parte esencial del godigo por que es muy largo)


$db = $selec;
$result = mysql_list_tables ($db);
$i = 0;
while ($i < mysql_num_rows ($result)) {
$tabla_nombres[$i] = mysql_tablename ($result, $i);
$i++;
}
$i = 0;
while ($i < mysql_num_rows ($result)) {
$campos = mysql_list_fields($db, $tabla_nombres[$i]);
$columnas = mysql_num_fields($campos);
for ($x = 0; $x < $columnas; $x++) {
$nombres_campos[$x]= mysql_field_name($campos, $x) ;
echo $nombres_campos[$x]. "<br>";
$datos_tabla[$i]=array($tabla_nombres[$i]=> $nombres_campos[$x]),;

}
$i++;

}
__________________
Hay tanto que aprender y tan poco tiempo
  #2 (permalink)  
Antiguo 06/07/2003, 18:46
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 10 meses
Puntos: 5
Bueno, primero vamos a colorearlo para poder entenderlo bien...

(Te recomiendo hacer esto cada que pegues un código)

Código PHP:
$db $selec;
$result mysql_list_tables ($db);
$i 0;
while (
$i mysql_num_rows ($result)) {
$tabla_nombres[$i] = mysql_tablename ($result$i);
$i++;

$i 0;
while (
$i mysql_num_rows ($result)) {
$campos mysql_list_fields($db$tabla_nombres[$i]);
$columnas mysql_num_fields($campos);
for (
$x 0$x $columnas$x++) {
$nombres_campos[$x]= mysql_field_name($campos$x) ; 
echo 
$nombres_campos[$x]. "<br>";
$datos_tabla[$i]=array($tabla_nombres[$i]=> $nombres_campos[$x]),; 

}
$i++; 


__________________
Manoloweb
  #3 (permalink)  
Antiguo 06/07/2003, 18:53
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 10 meses
Puntos: 5
Bueno, no estoy seguro, pero algo así puede ser...

Código PHP:
for ($x 0$x $columnas$x++) {
$nombres_campos[$x]= mysql_field_name($campos$x) ; 
echo 
$nombres_campos[$x]. "<br>";
$datos_tabla[$i][]=$nombres_campos[$x]; 

Esto creo que te daría algo así...

$datos_tabla[1][0]="ID"
$datos_tabla[1][1]="nombre"
$datos_tabla[1][2]="domicilio"

etc...

Ahi me dices si es lo que necesitabas.

__________________
Manoloweb
  #4 (permalink)  
Antiguo 07/07/2003, 05:30
Avatar de Torus  
Fecha de Ingreso: enero-2002
Ubicación: Tú buscame y me encontraras
Mensajes: 413
Antigüedad: 22 años, 10 meses
Puntos: 0
Antes de nada, gracias por responder Manoloweb, pero no me funciona o no se (mas provable lo segundo)
En el array $tabla_nombres[$i] estan los nombres de las tablas-
$tabla_nombres[0] =mitabla1
$tabla_nombres[1] =mitabla2
$tabla_nombres[2] =mitabla3
Bien lo que pretendo es que a mitabla1 que es $tabla_nombres[0] podr añadirle lo siguiente
mitabla1[0]=campo1
mitabla1[1]=campo2
mitabla1[2]=campo3
mas o menos quedaria así
$tabla_nombres[0]
........................ |__mitabla1[0]
......................................... |__campo1
........................ |__mitabla1[1]
......................................... |__campo2





de la forma que tu me has dado cuando listo el array ejemplo:
echo $datos_tabla[0];-> en esta devuelve Array???? cuando tendria que devolver el nombre de la tabla

echo $datos_tabla[1][2];-> y en esta devuelve nombre_carpeta que es OK
__________________
Hay tanto que aprender y tan poco tiempo

Última edición por Torus; 07/07/2003 a las 05:39
  #5 (permalink)  
Antiguo 08/07/2003, 13:30
Avatar de Torus  
Fecha de Ingreso: enero-2002
Ubicación: Tú buscame y me encontraras
Mensajes: 413
Antigüedad: 22 años, 10 meses
Puntos: 0
Bien, ya he solucionado el problema, para a quellos que ls interese a continuacion lo posteo.
Código PHP:
$db $selec;
$result mysql_list_tables ($db);
$i 0;
while (
$i mysql_num_rows ($result)) {
$tabla_nombres[$i] = mysql_tablename ($result$i);
$i++;


$campos mysql_list_fields($db$tabla_nombres[$i]);
$columnas mysql_num_fields($campos);
$c 0;

while (
$c $columnas){
$nombres_campos[$c]= mysql_field_name($campos$c) ; 
        echo 
$nombres_campos[$c]."<br>";

[
B]$datos_tabla[$tabla_nombres[$i]][$c]=$nombres_campos[$c]; [/B]  
 
$c++; 
  }
 
$i++;  
    } 
y para poder ver la estructura


Código PHP:
$b array_map(null,$datos_tabla);
print_r($b); 
Saludos a Tod@s
__________________
Hay tanto que aprender y tan poco tiempo
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 12:51.