Ver Mensaje Individual
  #27 (permalink)  
Antiguo 10/08/2010, 14:17
Avatar de Nemutagk
Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 1 mes
Puntos: 406
Respuesta: Ayuda a imprimir una sola vez registro de bd

Según las pruebas que hice con mi código funciona, aunque no se si los ultimos servicios de la sucursal 2 están completos, porque solo muestra 2, te dejo el código

Actualización 2: viendo detenidamente las tablas veo que no ingresaba el primer servicio por lo cual faltaba siempre 1 de los servicios, aquí dejo el código final
Código PHP:
Ver original
  1. <?php
  2. function search_in_array($search,$array) {
  3.     $count = 0;
  4.     foreach($array as $item) {
  5.         if ($item['sucursal'] == $search) {
  6.             return $count;
  7.         }
  8.         $count++;
  9.     }
  10.  
  11.     return false;
  12. }
  13.  
  14. $conexion = mysql_connect('localhost','root','');
  15. mysql_select_db('temporal',$conexion);
  16.  
  17. $sql = 'select sucursal,direccion,colonia,servicios from tblsucursal INNER JOIN tblserxsuc on tblsucursal.id_sucursal = tblserxsuc.id_sucursal
  18. INNER JOIN tblservicio on tblservicio.id_servicio = tblserxsuc.id_servicio
  19. where tblsucursal.id_municipio=1';
  20.  
  21. $query = mysql_query($sql,$conexion) or die(mysql_error());
  22.  
  23. $newArray = array();
  24. $numItems = 0;
  25. while($item = mysql_fetch_assoc($query)) {
  26.     $keyArray = search_in_array($item['sucursal'],$newArray);
  27.         if ($keyArray === false) {
  28.             $newArray[$numItems]['sucursal'] = $item['sucursal'];
  29.             $newArray[$numItems]['direccion'] = $item['direccion'];
  30.             $newArray[$numItems]['colonia'] = $item['colonia'];
  31.             $newArray[$numItems]['servicios'][] = $item['servicios'];
  32.  
  33.         $numItems++;
  34.         }else {
  35.             $newArray[$keyArray]['servicios'][] = $item['servicios'];
  36.         }
  37. }
  38.  
  39. echo '<pre>';
  40. var_dump($newArray);
  41. echo '</pre>';
__________________
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 =)

Última edición por Nemutagk; 10/08/2010 a las 14:30