Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Paginacion basada en un campo de busqueda

Estas en el tema de Paginacion basada en un campo de busqueda en el foro de PHP en Foros del Web. Buenos Dias, Tengo una consulta a mysql, y los resultados los muestra con paginacion, necesito que segun el año en el que este que es ...
  #1 (permalink)  
Antiguo 08/11/2013, 07:06
Avatar de JeMaGa  
Fecha de Ingreso: julio-2011
Ubicación: Bogota
Mensajes: 430
Antigüedad: 12 años, 9 meses
Puntos: 4
Paginacion basada en un campo de busqueda

Buenos Dias,

Tengo una consulta a mysql, y los resultados los muestra con paginacion, necesito que segun el año en el que este que es ingresado por el usuario en un campo de texto muestre la consulta con paginacion y todo, en la primera pagina funciona bien, cuando voy a la pagina 2, ya no me toma el valor del año.

Código HTML:
Ver original
  1.  
  2. <center><form action="EntrdaPruebaAdmin.php" method ="post">
  3.    <input type="hidden" name="ano" value="<?php echo $clave; ?>" />
  4. <h2><center>ENTRADA DE MUESTRAS PARA ANALISIS DE ENDOTOXINA BACTERIANA</center></h2>
  5.  
  6. <center><h3>Escriba el Ano:<input type="text" name="clave" id="clave" value=""> <input type="button" value="Mostrar Entrada" onClick="javascript:EntradaMDE()"/></h3></center>
  7.  
  8. <div id="MDEntradaActual"></div>
  9.  
  10. </form></center>
  11.  
  12. </body>

formulario que muestra la consulta con paginacion

Código PHP:
Ver original
  1. <body>
  2.  
  3. <center><form action="InsertaEncabezadoMDEAdmin.php" method="post" name="consultaMuestra">
  4.  
  5. <input type="hidden" name="actual" value="<?php echo $_POST['clave'];?>">
  6.  
  7. <table width="100%" border="1" id="tabla">
  8.   <tr>
  9.     <th scope="col"><img src="imagenes/LOGO.jpg" width="90" height="44"></th>
  10.     <th scope="col" colspan="16"><font face="Helvetica" size="3">LABORATORIOS SFC LTDA <br>SERVICIOS FARMACEUTICOS DE CALIDAD</font></th>
  11.   </tr>
  12.   <tr>
  13.     <th scope="col" colspan="16"> <font face="Helvetica" size="3">ENTRADA DE MUESTRAS PARA ANALISIS DE ENDOTOXINA BACTERIANA</font></th>
  14.   </tr>
  15.   <tr>
  16.     <td colspan="4"><strong><center><font face="Helvetica" size="2">Codigo: CT-01F5</font></center></strong></td>
  17.     <td colspan="4"><strong><center><font face="Helvetica" size="2">Version: 4</font></center></strong></td>
  18.     <td colspan="4"><strong><center><font face="Helvetica" size="2">Vigencia desde <br> 130114 hasta 160114</font></center></strong></td>
  19.     <td colspan="4"><strong><center><font face="Helvetica" size="2">P&aacute;gina: N/A</font></center></strong></td>
  20.   </tr>
  21. <?php
  22.  
  23.     $registros = 30;
  24.  
  25. if (!$pagina) {
  26.     $inicio = 0;
  27.     $pagina = 1;
  28. }
  29. else {
  30.     $inicio = ($pagina - 1) * $registros;
  31. }
  32.  
  33. ?>
  34.  
  35.   <tr>
  36.     <th bgcolor="#999999"><font face="Helvetica" size="2">No.Analisis         </font></th>
  37.     <th bgcolor="#999999"><font face="Helvetica" size="2">Producto            </font></th>
  38.     <th bgcolor="#999999"><font face="Helvetica" size="2">Lote                </font></th>
  39.     <th bgcolor="#999999"><font face="Helvetica" size="2">Presentacion        </font></th>
  40.     <th bgcolor="#999999"><font face="Helvetica" size="2">Cliente             </font></th>
  41.     <th bgcolor="#999999"><font face="Helvetica" size="2">Forma Farmaceutica  </font></th>
  42.     <th bgcolor="#999999"><font face="Helvetica" size="2">Fecha Recepcion     </font></th>
  43.     <th bgcolor="#999999"><font face="Helvetica" size="2">Fecha Analisis      </font></th>
  44.     <th bgcolor="#999999"><font face="Helvetica" size="2">Fecha Resultados    </font></th>
  45.     <th bgcolor="#999999"><font face="Helvetica" size="2">Sensitividad LAL    </font></th>
  46.     <th bgcolor="#999999"><font face="Helvetica" size="2">No.Lote LAL         </font></th>
  47.     <th bgcolor="#999999"><font face="Helvetica" size="2">Sensitividad CSE    </font></th>
  48.     <th bgcolor="#999999"><font face="Helvetica" size="2">No.Lote CSE         </font></th>
  49.     <th bgcolor="#999999"><font face="Helvetica" size="2">Tecnica             </font></th>
  50.     <th bgcolor="#999999"><font face="Helvetica" size="2">Metodo              </font></th>
  51.     <th bgcolor="#999999"><font face="Helvetica" size="2">Formato             </font></th>
  52.   </tr>
  53.    <input type="hidden" name="ano" value="<?php echo $clave; ?>" />
  54.    
  55.   <?php
  56.   require('Conexion.php');
  57.  
  58.     $resultados = mysql_query("SELECT * FROM `mde13` where `AnoActual` like '$clave'");
  59.     $total_registros = mysql_num_rows($resultados);
  60.    
  61.   $Consultica="SELECT distinct md.*, re.*,co.`Abreviatura` FROM `mde13` md inner join `reactivos13` re on md.`No.Analisis`=re.`No.Analisis` inner join `confirmacion13` co on md.`No.Analisis`=co.`Analisis` where md.`AnoActual` like '$clave' and co.`Abreviatura`='MDE' order by md.`No.Analisis` LIMIT $inicio, $registros";
  62.   $result=mysql_query($Consultica,$Conexion) or die (mysql_error());
  63.   $total_paginas = ceil($total_registros / $registros);
  64.   if($total_registros) {
  65.   while ($filas2=mysql_fetch_array($result)){
  66.  
  67.   ?>
  68.  
  69.   <tr>
  70.     <td><font face="Helvetica" size="1"><center>MDE<?php echo $filas2['No.Analisis']; ?>    </center></font></td>
  71.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['Producto']; ?>          </center></font></td>    
  72.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['No.Lote']; ?>           </center></font></td>    
  73.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['Presentacion']; ?>      </center></font></td>    
  74.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['Cliente']; ?>           </center></font></td>    
  75.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['FormaFarmaceutica']; ?> </center></font></td>      
  76.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['FechaRecepcion']; ?>    </center></font></td>      
  77.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['FechaSiembre']; ?>      </center></font></td>    
  78.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['FechaLectura']; ?>      </center></font></td>
  79.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['ReactivoLAL']; ?>       </center></font></td>
  80.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['LoteLAL']; ?>           </center></font></td>
  81.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['ReactivoCSE']; ?>       </center></font></td>    
  82.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['LoteCSE']; ?>           </center></font></td>          
  83.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['Tecnica']; ?>           </center></font></td>        
  84.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['Metodo']; ?>            </center></font></td>
  85.     <td><font face="Helvetica" size="1"><center><?php echo $filas2['Abreviatura']; ?>       </center></font></td>
  86.   </tr>
  87.  
  88.   <?php
  89.  
  90.   }
  91.   ?>
  92.  
  93.   </table><br>
  94.  
  95.   <?php
  96.     } else {
  97.        
  98.         echo "<font color='darkgray'>(sin resultados)</font>";
  99.     }
  100.  
  101.     if($total_registros) {
  102.        
  103.         echo "<input type='hidden' name='ano' value='".$clave."' />";
  104.        
  105.         echo "<center>";
  106.        
  107.         if(($pagina - 1) > 0) {
  108.             //echo "<a href='EntrdaPruebaAdmin.php?pagina=".($pagina-1)."'>< Anterior</a> ";
  109.             echo "<a href='selcionarAno.php?pagina=".($pagina-1)."'>< Anterior</a> ";
  110.         }
  111.        
  112.         for ($i=1; $i<=$total_paginas; $i++){
  113.             if ($pagina == $i) {
  114.                 echo "<b>".$pagina."</b> ";
  115.             } else {
  116.                 echo "<a href='selcionarAno.php?pagina=$'>$i</a> ";
  117.             }  
  118.         }
  119.      
  120.         if(($pagina + 1)<=$total_paginas) {
  121.             echo " <a href='selcionarAno.php?pagina=".($pagina+1)."'>Siguiente ></a>";
  122.         }
  123.        
  124.         echo "</center>";
  125.         echo "Si tiene clave ".$clave;
  126.        
  127.     }
  128.   ?>
  129. <center>
  130. <input name="Agregar" type="button" value="Agregar" onClick="agregarUsuario()"> ¦ <input type="submit" value="Enviar" name="encabezado"/>
  131. </center>
  132.  
  133. </form></center>

la cuestión es que si lo hago así siempre me carga el formulario que carga el año, así que nunca voy a poder ver los otros registros, y si le digo que cargue el mismo formulario donde se encuentra la paginacion no me toma el año ingresado ayuda!!!!

  #2 (permalink)  
Antiguo 08/11/2013, 07:30
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: Paginacion basada en un campo de busqueda

<saludos>
Bueno, pues entonces envía el campo de búsqueda como parámetro en los href del mismo modo que envías el parámetro de la página, y lo usas en el query, no te parece?
</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
  #3 (permalink)  
Antiguo 08/11/2013, 08:19
Avatar de JeMaGa  
Fecha de Ingreso: julio-2011
Ubicación: Bogota
Mensajes: 430
Antigüedad: 12 años, 9 meses
Puntos: 4
Respuesta: Paginacion basada en un campo de busqueda

Seria algo asi

Código PHP:
Ver original
  1. echo "<a href='EntrdaPruebaAdmin.php?pagina=".($pagina-1)."&clave=".($clave)."'>< Anterior</a> ";

hay que tener en cuenta que es clave=".($clave)." esta en otro formulario, eso afecta???
  #4 (permalink)  
Antiguo 08/11/2013, 08:28
Avatar de JeMaGa  
Fecha de Ingreso: julio-2011
Ubicación: Bogota
Mensajes: 430
Antigüedad: 12 años, 9 meses
Puntos: 4
Respuesta: Paginacion basada en un campo de busqueda

Oye gracias funciono ya, lo habia intentado asi no me habia funcionado, por eso acudi al foro, y ahora si como tu me lo indicaste, Gracias :)

Etiquetas: busqueda, campo, fecha, formulario, mysql, paginacion, registro, select, sql, tabla
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 17:51.