Foros del Web » Programando para Internet » PHP »

Crear Tabs segun resultados

Estas en el tema de Crear Tabs segun resultados en el foro de PHP en Foros del Web. hola buenas quiero crear un tab como este @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código HTML: Ver original < ul class = "nav nav-tabs" >   < li class ...
  #1 (permalink)  
Antiguo 05/01/2016, 05:44
 
Fecha de Ingreso: febrero-2011
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 13 años, 9 meses
Puntos: 1
Crear Tabs segun resultados

hola buenas quiero crear un tab como este
Código HTML:
Ver original
  1. <ul class="nav nav-tabs">
  2.   <li class="active"><a href="#">Inicio</a></li>
  3.   <li><a href="#">Perfil</a></li>
  4.   <li><a href="#">Mensajes</a></li>
  5. </ul>

pero en vez de decirle el titulo en cada tabla , quiero que monte tantas tablas como resultados de una consulta por ejemplo:
Código Java:
Ver original
  1. [HIGHLIGHT="PHP"]$params = array('filter' => array(  array('Field' => 'Cliente',
  2.                                           'Criteria' => $cliente),
  3.                                     array('Field' => 'Estado',
  4.                                           'Criteria' => 'Confirmada|Reservada|Eliminada'),
  5.                                     array('Field' => 'Fecha',
  6.                                           'Criteria' =>'')
  7.                                    
  8.                                   ),
  9.                 'setSize' => 0);
[/HIGHLIGHT]

quiero que monte tantas pestañas como "fechas" le de el resultado

Gracias
  #2 (permalink)  
Antiguo 05/01/2016, 06:06
 
Fecha de Ingreso: diciembre-2015
Ubicación: Valencia
Mensajes: 61
Antigüedad: 8 años, 10 meses
Puntos: 10
Respuesta: Crear Tabs segun resultados

No me ha quedado muy claro lo que quieres hacer. ¿Quieres crear tabs en base a los resultados, o lo que quieres es crear varias tablas donde mostrar esa información?

Si te refieres a las tablas, ¿Porqué no utilizas un for y creas una tabla por cada resultado?
  #3 (permalink)  
Antiguo 05/01/2016, 06:38
 
Fecha de Ingreso: febrero-2011
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 13 años, 9 meses
Puntos: 1
Respuesta: Crear Tabs segun resultados

creo que lo que me propones daria con el resultado, como puedo crear el foreach para que me cree tantas tablas como resultados?
  #4 (permalink)  
Antiguo 05/01/2016, 06:46
 
Fecha de Ingreso: diciembre-2015
Ubicación: Valencia
Mensajes: 61
Antigüedad: 8 años, 10 meses
Puntos: 10
Respuesta: Crear Tabs segun resultados

Cita:
Iniciado por javierconesa23 Ver Mensaje
creo que lo que me propones daria con el resultado, como puedo crear el foreach para que me cree tantas tablas como resultados?
Bueno, digamos que $params['filter'] tiene 2 o 3 resultados,

Código PHP:
Ver original
  1. foreach($params['filter'] as $resultado)
  2. {
  3. //GENERAS LA TABLA
  4.     print_r($resultado);//TENIENDO EN CUENTA QUE CADA RESULTADO ES OTRO ARRAY CON SUS DATOS, PUEDES LUEGO GENERAR LA INFORMACIÓN
  5. }

Última edición por Zenok; 05/01/2016 a las 06:52
  #5 (permalink)  
Antiguo 05/01/2016, 07:29
 
Fecha de Ingreso: febrero-2011
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 13 años, 9 meses
Puntos: 1
Respuesta: Crear Tabs segun resultados

NO acabo de comprender como montar el foreach
te pongo el codigo que me crea la tabla normal para ver si me puedes ayudar a montar el foreach para cada tabla por fecha:
Código PHP:
Ver original
  1. $params = array('filter' => array(  array('Field' => 'Cliente',
  2.                                           'Criteria' => $cliente),
  3.                                     array('Field' => 'Estado',
  4.                                           'Criteria' => 'Confirmada|Reservada|Eliminada')
  5.                                    
  6.                                    
  7.                                   ),
  8.                 'setSize' => 0);
  9. $result = $page->ReadMultiple($params);
  10. $distribuciones = $result->ReadMultiple_Result->WTADistribucionesPorAutoriz ;
  11. $ndistri = $distrib->Num_autorizacion;
  12. $clientes = $distrib->Cliente;
  13. $matriculat = $distrib->Matricula_tractora;
  14. $matricular = $distrib->Matricula_remolque;
  15. $dni = $distrib->DNI_conductor;
  16. $namedriver = $distrib->Nombre_conductor;
  17. $fecha = $distrib->Fecha;
  18. $hora = $distrib->Hora;
  19. $estado = $distrib->Estado;
  20. $contrato = $distrib->Contrato;
  21. echo '<div class="panel panel-default">
  22.                 <div class="panel-heading">
  23.                     <h4 class="panel-title">
  24.                         <a data-toggle="collapse" data-parent="#accordion-test-2" href="#collapseOne-2">';
  25.                             echo $fecha;
  26.         echo                '</a>
  27.                     </h4>
  28.                 </div>
  29.                 <div id="collapseOne-2" class="panel-collapse collapse in">
  30.                     <div class="panel-body">
  31.                          <table class="table  table-bordered table-striped datatable"  id="table-2">
  32.         <tr class="success" >
  33.            <th>NumAuth</th>
  34.             <th>Contrato</th>
  35.            
  36.             <th>Matricula Tractora</th>
  37.             <th>DNI PASAPORTE</th>
  38.             <th>Matricula Remolque</th>
  39.             <th>Nombre</th>
  40.             <th>Estado</th>
  41.             <th>Editar</th>
  42.         </tr>
  43.      </thead>
  44.         </div>';

Lo que se como hacer es el resultado de las tablñas me ,los monte en tablas deiferente fecha
  #6 (permalink)  
Antiguo 05/01/2016, 08:18
 
Fecha de Ingreso: diciembre-2015
Ubicación: Valencia
Mensajes: 61
Antigüedad: 8 años, 10 meses
Puntos: 10
Respuesta: Crear Tabs segun resultados

Bueno, es que el código que me acabas de mostrar es otra cosa muy distinta. Ahí ya depende de como lo tienes hecho tú.

Por lo que veo, el array es un simple filtro, luego lo pasas a una función y devuelve un único resultado, ¿Correcto? ¿Quieres un único resultado por cada tabla?

Todo eso depende del planteamiento que tengas hecho.

Un saludo.
  #7 (permalink)  
Antiguo 05/01/2016, 08:36
 
Fecha de Ingreso: febrero-2011
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 13 años, 9 meses
Puntos: 1
Respuesta: Crear Tabs segun resultados

el unico resultado lo monto con esta tabla:
Código HTML:
Ver original
  1. <tr class="success" >
  2.             <th>NumAuth</th>
  3.             <th>Contrato</th>
  4.             <th>Fecha</th>
  5.             <th>Matricula Tractora</th>
  6.             <th>DNI PASAPORTE</th>
  7.             <th>Matricula Remolque</th>
  8.             <th>Nombre</th>
  9.             <th>Estado</th>
  10.             <th>Editar</th>
  11.         </tr>
que antes me he dejado el campo fecha
entonces lo que yo quiero es que me monte una tabla con todos los resultados de cada fecha
por ejemplo:
si hay 6 registros pero son de 2 dias diferentes me gustaria que me montara dos tablas , entonces lo de los tabs es para que en cada tab me montara una tabla con los registros de cada fecha.

espero haberme explicado bien
gracias por tu paciencia
  #8 (permalink)  
Antiguo 05/01/2016, 09:56
 
Fecha de Ingreso: diciembre-2015
Ubicación: Valencia
Mensajes: 61
Antigüedad: 8 años, 10 meses
Puntos: 10
Respuesta: Crear Tabs segun resultados

Entonces, yo lo que haría es seleccionar todos los registros y agruparlos por fecha con una consulta. Posteriormente para clasificarlos en tablas, podría hacer algo así:


Código PHP:
$fecha_actual "";
while(
$rs mysqli_fetch...)
{
    if(
$fecha_actual != $rs['fecha'])
    {
        
//CREO TABLA
        //GUARDO LA NUEVA FECHA
        
$fecha_actual $rs['fecha'];
    }
    
    
//MUESTRO LAS FILAS
    
    
if($fecha_actual != $rs['fecha'])
    {
        
//CIERRO TABLA
    
}


También puedes, antes de crear la tabla hacer una función que te clasifique los resultados directamente entre arrays y te lo devuelva:

Código PHP:
Ver original
  1.     //OBJETO MYSQL
  2.     array(
  3.         array('dni' => 123132, 'fecha' => '12/12/2015'),
  4.         array('dni' => 123132, 'fecha' => '12/12/2015'),
  5.         array('dni' => 123132, 'fecha' => '12/12/2015'),
  6.         array('dni' => 123132, 'fecha' => '12/12/2015'),
  7.     ),
  8.     //OBJETO MYSQL
  9.     array(
  10.         array('dni' => 123132, 'fecha' => '1/01/2016'),
  11.         array('dni' => 123132, 'fecha' => '1/01/2016'),
  12.         array('dni' => 123132, 'fecha' => '1/01/2016'),
  13.         array('dni' => 123132, 'fecha' => '1/01/2016'),
  14.     ),
  15. )

De ese modo, simplemente tendrías que crear una tabla por cada array, y dentro de cada tabla sus resultados. Seguro que hay muchas más formas, solo hay que pensar un poco.

Etiquetas: fecha, resultados, tabla, tabs
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 22:45.