Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Crear arrays multidimensionales con PHP y MySQL

Estas en el tema de Crear arrays multidimensionales con PHP y MySQL en el foro de PHP en Foros del Web. Hola amigos, Veran actualmente trabajo con mysql y php y para sacar los resultados de una consulta utilizo la funcion mysql_fetch_assoc() que me devuelve un ...
  #1 (permalink)  
Antiguo 05/06/2013, 23:18
Avatar de kalvinman  
Fecha de Ingreso: octubre-2006
Ubicación: Bogota Colombia
Mensajes: 849
Antigüedad: 17 años, 6 meses
Puntos: 22
Pregunta Crear arrays multidimensionales con PHP y MySQL

Hola amigos,

Veran actualmente trabajo con mysql y php y para sacar los resultados de una consulta utilizo la funcion mysql_fetch_assoc() que me devuelve un array con los resultados, mi pregunta es si es posible hacer que me regrese un array multidimencional con registros relacionados de varias tablas.

Digamos que tengo tabla de usuarios y tabla de ciudades, y quiero hacer una consulta que me devuelva un array multidimencional con los campos del usuario y tambien de la ciudad asociada al usuario, el problema es que en las dos tablas el campo se llama id, aunque en la tabla de usuarios tengo una llave foranea llamada ciudad_id.

Gracias
  #2 (permalink)  
Antiguo 06/06/2013, 00:24
Avatar de bookmaster  
Fecha de Ingreso: febrero-2002
Ubicación: Toledo
Mensajes: 976
Antigüedad: 22 años, 2 meses
Puntos: 67
Respuesta: Crear arrays multidimencionales con PHP y MySQL

Se que esta solución puede ser un poco rara, pero ¿as probado a hacerlo de la siguiente manera?

$ElArray['Primera'] = El resultado de la primera consulta.
$ElArray['Segunda'] = El resultado de la segunda consulta.

Se que no es la manera mas elegante de hacerlo, pero podría hacerte el apaño.
__________________
Decir si te a funcionado la respuesta es ¡GRATIS!. Por favor indicarlo.
http://www.lohacemosweb.net
http://tutoriales.lohacemosweb.net
  #3 (permalink)  
Antiguo 06/06/2013, 00:38
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Crear arrays multidimencionales con PHP y MySQL

Para lo que quieres es mejor que uses PDO y usando INNER JOIN y fetchAll() obtendrías todos tus resultados en un array sin bucle alguno, de otra forma solo te queda lo que a dicho @bookmaster, recorrer los registros e ir guardandolos en un array manualmente...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #4 (permalink)  
Antiguo 06/06/2013, 07:47
Avatar de wizanchez  
Fecha de Ingreso: junio-2013
Ubicación: bogota
Mensajes: 120
Antigüedad: 10 años, 10 meses
Puntos: 6
Respuesta: Crear arrays multidimencionales con PHP y MySQL

- te recomiento que uses ADODB , es un pull de conecciones, esta libreria tiene una funcion que al terminar la consulta te lo retorna como un arreglo multidimencional.

$SQL='';

Código MySQL:
Ver original
  1. /* funcion {Prepare}, para evitar ejeccionSQL*/
  2. $rc_sql = &$conn->Prepare('SELECT datos FROM tabla WHERE donde');
  3.        
  4.        
  5. /*con {ErrorMsg()} te muestra en consola el error*/
  6.         if($rs = &$conn->Execute($rc_sql)===false)
  7.        {echo 'error SQL ['.$rc_sql.']['.$conn->ErrorMsg().']';}
  8.        
  9. /*con la funcion {GetArray()}, te lo convierte en una arreglo*/
  10.            $a_arreglo_multidimencional =$rs->GetArray();

- si no queres hacer esto, te recomeindo que hagas una funcion dinamica que te simule esto
  #5 (permalink)  
Antiguo 01/07/2013, 16:14
Avatar de kalvinman  
Fecha de Ingreso: octubre-2006
Ubicación: Bogota Colombia
Mensajes: 849
Antigüedad: 17 años, 6 meses
Puntos: 22
Respuesta: Crear arrays multidimensionales con PHP y MySQL

Hola amigos, ya encontré como solucionar el problema y aquí escribí un tutorial con mi solución:

http://tupale.org/clase-para-recorre...l-con-php.html
  #6 (permalink)  
Antiguo 01/07/2013, 16:30
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Crear arrays multidimensionales con PHP y MySQL

Sin demeritar tu aportación hay unos puntos que quiero compartir...

Tu clase para usos básicos es "aceptable", sin embargo, usas mysql_* lo cual ya esta completamente desfasado, aparte, toda la lógica que implementa tu clase la tiene ya PDO, por lo cual es trabajar doble teniendo ya algo desarrollado y mucho mas avanzado y seguro...

Y por ultimo, esta de más tu auto-publicidad, para lo que tienes bien podrías publicar aquí sin hacer referencia a tu blog/sitio...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #7 (permalink)  
Antiguo 01/07/2013, 16:36
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Crear arrays multidimensionales con PHP y MySQL

De hecho, me parece que ese último punto que menciona Nemutagk es una violación a las normas del foro, cuidado con eso.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: arrays, mysql, registro, resultados, tabla, usuarios
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 14:41.