Foros del Web » Programando para Internet » PHP »

El WHERE de mi consulta descompone mi paginacion

Estas en el tema de El WHERE de mi consulta descompone mi paginacion en el foro de PHP en Foros del Web. Que tal forer@s: Pues eso resulta q al poner una condicion en el where de mi consulta mi paginacion se rompe , si hago la ...
  #1 (permalink)  
Antiguo 11/10/2010, 09:38
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años
Puntos: 23
El WHERE de mi consulta descompone mi paginacion

Que tal forer@s:

Pues eso resulta q al poner una condicion en el where de mi consulta mi paginacion se rompe , si hago la consulta sin la condicion where funciona ok, me muestra 10 resgistros y al cambiar de "pagina" los otros diez y asi, pero con el where me muestra 10 cambio de pagina y ya no salen los demas regreso a la pagina 1 de nuevo y ya no salen ni los que habian salido antes

aca dejo mi codigo php, la paginacion la hago con ajax pero esa funciona ok ya que la utilizo en varias otras consultas. Solo esta me trae problema.

Código PHP:
<?PHP
$conn_mysql_1
=Conecta_db_resguardos();

    
$registros 10
    if(isset(
$_GET['pag'])){  
        
$inicio=($_GET['pag']-1)*$registros;  
        
$PagAct=$_GET['pag']; 
    }else{  
        
$inicio=0;  
        
$PagAct=1
    }
    
    
$date_initrim($_GET['date_ini']);
    
$date_fintrim($_GET['date_fin']);
    
    
$NroRegistros=mysql_num_rows(mysql_query("SELECT id FROM tb_transaccion"));         
    global 
$sql_query
    
$sql_query "SELECT id, notran, rpe_entrega, rpe_recibe, rpe_autoriza, num_inventario, fecha_elab, cvemov, realizado FROM tb_transaccion WHERE (('$date_ini' <= fecha_elab) AND ('$date_fin' >= fecha_elab)) ORDER BY fecha_elab DESC LIMIT $inicio, $registros";     
    
$res=mysql_query($sql_query) or die('Error en la consulta'.mysql_error());         
?>        
<div>
    <table align="center" id="tabla_res" style="text-align:center;">
           <caption>Resguardos</caption>
           <tr>
                  <th>#</th>
               <th>N&uacute;m. Resguardo</th>
               <th>RPE Entrega</th>
               <th>RPE Recibe</th>
               <th>RPE Autorizo</th>
               <th>N&uacute;m. Inventario</th>
               <th>Fecha de<br />elaboraci&oacute;n</th>
               <th>Movimiento</th>
               <th>Estado</th>
            </tr>
            <?PHP
            
if($NroRegistros){
                
$cont=1;
                while(
$row=mysql_fetch_array($resMYSQL_ASSOC)){
                    
$edo=$row['realizado'];
                    if (
$edo==1){ 
                       
$estado='Realizado';
                    } else{ 
                      
$estado='Pendiente';
                    }
                    
$mov=$row['cvemov'];
                    
$sql_query "Select movimiento from tb_movimiento where id='$mov'";
                    
$res2=mysql_query($sql_query) or die('Error en la consulta'.mysql_error());
                    
$row2=mysql_fetch_array($res2MYSQL_ASSOC);
            
?>
            <tr>
                <td><?PHP echo $cont ?></td>
                <td><?PHP echo $row['notran'?></td>
                <td><a href='"javascript:VentanaRPE('<?PHP echo $row['rpe_entrega'?>')"><?PHP echo $row['rpe_entrega'?></a></td>
                <td><a href="javascript:VentanaRPE('<?PHP echo $row['rpe_recibe'?>')"><?PHP echo $row['rpe_recibe'?></a></td>
                <td><a href="javascript:VentanaRPE('<?PHP echo $row['rpe_autoriza'?>')"><?PHP echo $row['rpe_autoriza'?></a></td>
                <td><a href="javascript:VentanaNUMINV('<?PHP echo $row['num_inventario'?>')"><?PHP echo $row['num_inventario'?></a></td>
                <td><?PHP echo $row['fecha_elab'?></td>
                <td><?PHP echo $row2['movimiento'?></td>
                <td><?PHP echo $estado ?></td>
            </tr>
            <?PHP
                     $cont
++;
                    
mysql_free_result($res2);
                }
                
mysql_free_result($res);
            
?>
        </table>
        <?PHP
        
} else {
          echo 
"<table id='tabla_res' width='400' align='center' style='text-align:center;' ><caption>Sin Resguardos </caption></table>";
        }    
    
        
//******--------determinar las páginas---------******// 
                        
        //$NroRegistros=mysql_num_rows(mysql_query("select id from tb_transaccion where realizado is false")); 
        
$PagAnt=$PagAct-1
        
$PagSig=$PagAct+1
        
$PagUlt=$NroRegistros/$registros
        
$Resi=$NroRegistros&#37;$registros; 
                
        
echo "<br /><div align='center'>";
        if(
$Resi>0$PagUlt=floor($PagUlt)+1
            echo 
"<a style='cursor: pointer; text-decoration:none' onclick=\"Pagina('1', 'res_monitor', '../CIByR/pag_operador/m_consulta')\"><img src='../../CIByR/images_icon/first.png' style='border: 0px; outline: none;' width='20px' height='20px' /><span class='succes'>Primero</span></a> "
        if(
$PagAct>1
            echo 
"<a style='cursor: pointer; text-decoration:none' onclick=\"Pagina('$PagAnt', 'res_monitor', '../CIByR/pag_operador/m_consulta')\"><img src='../../CIByR/images_icon/go-left.png' style='border: 0px; outline: none;' width='20px' height='20px' /><span class='succes'>Anterior</span></a> "
            echo 
" <b class='title'> Página ".$PagAct."/".$PagUlt"</b> "
        if(
$PagAct<$PagUlt)  
            echo 
"<a style='cursor: pointer; text-decoration:none' onclick=\"Pagina('$PagSig', 'res_monitor', '../CIByR/pag_operador/m_consulta')\"><span class='succes'>Siguiente</span><img src='../../CIByR/images_icon/go-right.png' style='border: 0px; outline: none;' width='20px' height='20px' /></a> "
            echo 
"<a style='cursor: pointer; text-decoration:none' onclick=\"Pagina('$PagUlt', 'res_monitor', '../CIByR/pag_operador/m_consulta')\"><span class='succes'>&Uacute;ltimo</span><img src='../../CIByR/images_icon/go-last.png' style='border: 0px; outline: none;' width='20px' height='20px' /></a>";
        echo 
"</div>";
        
?>
</div>
Alguien ve algo que ande mal???
Esta bien mi where con la condicion como la puse??

Gracias
  #2 (permalink)  
Antiguo 11/10/2010, 09:45
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: El WHERE de mi consulta descompone mi paginacion

Claro tienes que propagar también las variables de tu where al usar la consulta, ya que tienes que tener esas variables en tu URL para que te respete los valores.

Saludos.
  #3 (permalink)  
Antiguo 11/10/2010, 09:50
Avatar de egepe  
Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 14 años, 4 meses
Puntos: 7
Respuesta: El WHERE de mi consulta descompone mi paginacion

Yo lo veo y realmente no le encuentro nada, yo los hago al revez, es decir primero el nombre del campo de la tabla y luego el nombre de la variable que me dá el valor, pero no debe haber problema en ellos hasta se va mejor!!!

Mi pregunta sería relacionado con la consulta, te debe dar más de 10 registros? porque puede ser eso. Ya ve visto esa función ajax de paginación y no deberías tener problema.

Te sugiero que hagas ese mismo select aparte directamente a la base de datos. Si tienes myphpadmin podrías tomarlo y correrlo ahí, para saber si te encuentra más de 10 registros!!!!

Saludos

Seguire viendolo pero no encuentro nada extraño....
  #4 (permalink)  
Antiguo 11/10/2010, 10:29
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años
Puntos: 23
Respuesta: El WHERE de mi consulta descompone mi paginacion

GRacias a los dos!!

egepe si tenian q salir mas de 10 registros, ya que habia probado antes sin el where...

GatorV efectivamente, probe mandando las variables de las fechas a la funcion ajax y regresandolas de igual manera y ya funciono a la perfecion... Gracias
  #5 (permalink)  
Antiguo 11/10/2010, 12:55
Avatar de egepe  
Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 14 años, 4 meses
Puntos: 7
Respuesta: El WHERE de mi consulta descompone mi paginacion

Estas verificando que $PagSig llega bien al ajax, y luego envías bien ese valor como parametro en el Ajax. open(GET,"app.php?pag=valor arriba".....

te sugeriría que colocaras un alert con los parametros que estas enviando de regreso desde el ajax al php. Porque veo que además pasas unas fechas y no solo el nro de pagina y no veo como armas el GET para que traiga date_ini y date_fin.

Te recomendaría que en la funcion Pagina envíes las fechas ini y fin como parametros, porque te repito no sé cómo la estas armando en el ajax.

Saludos
  #6 (permalink)  
Antiguo 11/10/2010, 13:03
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años
Puntos: 23
Respuesta: El WHERE de mi consulta descompone mi paginacion

Si gracias egepe, ya lo solucione, le envio al ajax las fechas que utilizo de rango para el where, asi funciona ok.

Si no se las enviara como lo tenia inicialmente, no me mostraba mis otros registros solo 10.

Al ajax le envio, el no de pagina, el div en el que aparecera, la ruta de la pagina y las fechas

XD

Gracias

Etiquetas: paginacion
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 04:46.