Foros del Web » Programando para Internet » PHP »

generar arreglo con php y mysql

Estas en el tema de generar arreglo con php y mysql en el foro de PHP en Foros del Web. tengo una tabla en mysql del tipo Código: ID | SERVICIOS | SITE_ID | EVENTO | _______________________________ 1 | 25 | 20 | 2013-01-01 | ...
  #1 (permalink)  
Antiguo 05/12/2013, 11:11
 
Fecha de Ingreso: julio-2005
Mensajes: 73
Antigüedad: 18 años, 9 meses
Puntos: 0
Pregunta generar arreglo con php y mysql

tengo una tabla en mysql del tipo
Código:
ID     | SERVICIOS | SITE_ID | EVENTO |
_______________________________

1      | 25               | 20         | 2013-01-01 |
2      | 85               | 20         | 2013-02-01 |
3      | 22               | 21         | 2013-07-02 |
3      | 21               | 31         | 2013-01-01 |
y así sucesivamente hasta cerca de 1000 registros el site_id me indica lo que es el numero de sucursal y servicios es como su nombre lo indica el numero de servicios que se realizaron en esa sucursal, y el campo evento guarda las fechas de los últimos 3 años 2011 -2012 - 2013
lo que quiero hacer, si se puede, es generar un arreglo con una consulta a mysql del tipo

Código PHP:
$anio date("Y");
$qry mysql_query(SELECT site_idservicios FROM servicios WHERE YEAR(evento) = ". $anio); 
con esto quiero generar un arreglo, si se puede del tipo
Código:
array [] = [20][82,79,85,75,80,81]
                [21][18,19,22,20,25,17]
                [23][17,19,19,20,16,14]
                [31][44,40,39,40,45,37]
...
que intento? intento generar una grafica lineal con estos valores donde
[23][17,19,19,20,16,14] seria [23] la sucursal (eje x) y [17,19,19,20,16,14] los valores de la serie(eje y)

desde ya muchas gracias espero que si se pueda y me ayuden. gracias

Última edición por bendark23; 05/12/2013 a las 11:20
  #2 (permalink)  
Antiguo 05/12/2013, 11:32
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 2 meses
Puntos: 96
Respuesta: generar arreglo con php y mysql

http://php.net/manual/es/book.mysql.php te sugiero que leqs la documentacion
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #3 (permalink)  
Antiguo 05/12/2013, 12:44
 
Fecha de Ingreso: julio-2005
Mensajes: 73
Antigüedad: 18 años, 9 meses
Puntos: 0
Respuesta: generar arreglo con php y mysql

gracias por tu respuesta xSkArx se como generar un arreglo pero no de esas carateristicas soy novato, leere la documentacion que me enviaste muchas gracias.

Última edición por bendark23; 05/12/2013 a las 13:38
  #4 (permalink)  
Antiguo 05/12/2013, 17:28
 
Fecha de Ingreso: julio-2005
Mensajes: 73
Antigüedad: 18 años, 9 meses
Puntos: 0
Respuesta: generar arreglo con php y mysql

alguien que me auxilie en verdad no tengo idea de como pudiera quedar armada la consulta y el como organizar el arreglo
  #5 (permalink)  
Antiguo 05/12/2013, 19:47
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: generar arreglo con php y mysql

<saludos>
Pues en ese caso, lo mejor sería primero generar una consulta que traiga
solo los site_id, y luego al recorrer estas, hacer la otra consulta que traería los servicios del site_id actual, y recorrer estos e ir guardando los resultados en una variable donde separe cada valor por coma (esto guiandome en como has dibujado el array final que quieres) y finalmente, cuando se tenga en una variable todos los servicios, y al finalizar ciclo de estas, generar el array con los valores del site_id y de los servicios

En resumen, harías 2 consultas, y sobre la segunda vas guardando los resultados en una variable, y a su vez cada vez que se itere sobre la primera consulta, se agregarían los datos al array.

Ej:
Código PHP:
Ver original
  1. <?php
  2. $data = array();
  3. $query1 = 'SELECT site_id FROM tabla WHERE YEAR(campo) = '.$anio;
  4. while(...)
  5. {
  6. $variable = '';
  7. $query2 = 'SELECT servicios FROM tabla WHERE site_id = '.$siteactual;
  8. while(...)
  9. {
  10. $variable .= $servicioactual.',';
  11. }
  12. $variable = substr($variable, 0, strlen($variable)-1);
  13. $data[] = '['.$siteactual.']['.$variable.']';
  14. }
  15. ?>

Esa sería la idea, así que prueba eso y nos cuentas!

</saludos>
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #6 (permalink)  
Antiguo 06/12/2013, 13:56
 
Fecha de Ingreso: julio-2005
Mensajes: 73
Antigüedad: 18 años, 9 meses
Puntos: 0
Respuesta: generar arreglo con php y mysql

Cita:
Iniciado por mortiprogramador Ver Mensaje
<saludos>
Pues en ese caso, lo mejor sería primero generar una consulta que traiga
solo los site_id, y luego al recorrer estas, hacer la otra consulta que traería los servicios del site_id actual, y recorrer estos e ir guardando los resultados en una variable donde separe cada valor por coma (esto guiandome en como has dibujado el array final que quieres) y finalmente, cuando se tenga en una variable todos los servicios, y al finalizar ciclo de estas, generar el array con los valores del site_id y de los servicios

En resumen, harías 2 consultas, y sobre la segunda vas guardando los resultados en una variable, y a su vez cada vez que se itere sobre la primera consulta, se agregarían los datos al array.

Ej:
Código PHP:
Ver original
  1. <?php
  2. $data = array();
  3. $query1 = 'SELECT site_id FROM tabla WHERE YEAR(campo) = '.$anio;
  4. while(...)
  5. {
  6. $variable = '';
  7. $query2 = 'SELECT servicios FROM tabla WHERE site_id = '.$siteactual;
  8. while(...)
  9. {
  10. $variable .= $servicioactual.',';
  11. }
  12. $variable = substr($variable, 0, strlen($variable)-1);
  13. $data[] = '['.$siteactual.']['.$variable.']';
  14. }
  15. ?>

Esa sería la idea, así que prueba eso y nos cuentas!

</saludos>
gracias por tu respuesta.. pero como le darias valor a la variable $siteactual?

Etiquetas: arreglos, php+mysql
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 15:17.