Foros del Web » Programando para Internet » PHP »

Hacer paginacion

Estas en el tema de Hacer paginacion en el foro de PHP en Foros del Web. Hola necesito hacer paginacion para un buscador de docente , el problema esta, en que cuando hago click en sgte para ver mas registros, al ...
  #1 (permalink)  
Antiguo 06/11/2008, 10:31
 
Fecha de Ingreso: agosto-2008
Mensajes: 30
Antigüedad: 15 años, 8 meses
Puntos: 0
Hacer paginacion

Hola necesito hacer paginacion para un buscador de docente , el problema esta, en que cuando hago click en sgte para ver mas registros, al llamar nuevamente a la pagina, parece q se borra los valores que estan en la vbles del formulario del buscador, que ultilizo para buscar en base de datos, de manera tal q al hacer click e sgte ya no se muestra nada,pero no se de q otra manera poder hacer la paginacion de docente tieniendo este codigo, gracias y espero sugerencia de hacer o mejorar lo hecho.
Código PHP:
<?
///CONEXION
if ( $_SESSION['id_facu'] != $SelectF 
     {   
$_SESSION['id_facu'] = $SelectF ;//;$_SESSION['facu']   }
if ( $_SESSION['id_carr'] != $SelectC 
     { 
$_SESSION['id_carr'] = $SelectC;//; $_SESSION['carr'] }
   
if($_SESSION['id_mat'] != $SelectM )
     {    
$_SESSION['id_mat'] = $SelectM;//$_SESSION['mat']   }
   
 
$_SESSION['cant_regPag']=2$_SESSION['pagina'] = $_GET["pagina"];
 if (empty(
$_SESSION['pagina']))
    {
      
$_SESSION['inicio'] = 0;  $_SESSION['pagina'] = 1
    } 
 else 
    { 
     
$_SESSION['inicio'] = ($_SESSION['pagina'] - 1) * $_SESSION['cant_regPag']; 
    }              

function 
cargar_docentes()
{
  
$sql="SELECT D.docent_id, D.docent_apel,D.docent_imag, D.docent_nom, M.mat_nom, F.facu_nom,M.mat_id,X.carr_id FROM docentes as D INNER JOIN docentes_carreras_materias as X ON D.docent_id=X.docent_id INNER JOIN materias as  M ON X.mat_id=M.mat_id INNER JOIN carreras as C ON X.carr_id=C.carr_id INNER JOIN facultades as F ON F.facu_id=C.facu_id WHERE";
  
$control=0;
  if(
$_POST['textDA'] != "" || $_POST['textDN'] != "" || !empty($_POST['SelectF']) || !empty($_POST['SelectC']) || !empty($_POST['SelectM']))
    { 
      
$band true;
      if(
$_POST['textDA'] != "")
        {
         
$n $_POST['textDA'];
         
$sql $sql." D.docent_apel LIKE '%$n%'"
         
$control 1;
        }
      if(
$_POST['textDN'] != "")
       { 
          if(
$control == 1)
          {
$sql=$sql." AND";}
          else {
$control=1;}
         
$n=$_POST['textDN'];$sql=$sql." D.docent_nom LIKE '%$n%'";
       }
      if(!empty(
$_POST['SelectF']))
       {
         if(
$control == 1)
       {
$sql=$sql." AND";}
        else {
$control=1;}
        
$n $_POST['SelectF']; $sql $sql." F.facu_id='$n'";
       }
      if(!empty(
$_POST['SelectC']))
       {
             if( 
$control == )
             {
$sql=$sql." AND";}
             else
             {
$control=1;}
             
$n=$_POST['SelectC']; $sql=$sql." C.carr_id='$n'";
       }
      if(!empty(
$_POST['SelectM']) )
       {
         if(
$control==1)
        {
$sql=$sql." AND";}
         else
       {
$control=1;}
       
$n=$_POST['SelectM'];  $sql=$sql." M.mat_id='$n'" ;
       }
   
$sql=$sql." GROUP BY D.docent_apel, D.docent_nom ORDER BY  D.docent_apel, D.docent_nom";//M.mat_nom";
         
$result=mysql_query($sql) or die("Error en $consulta <br>MySQL dice: ".mysql_error());
       
$nreg_query mysql_num_rows($result); 
       if(
$nreg_query != 0)
       {
         
$sql$sql." LIMIT ".$_SESSION['inicio'].",".$_SESSION['cant_regPag']."";     
         
$result=mysql_query($sql) or die("Error en $consulta <br>MySQL dice: ".mysql_error()); 
         
$_SESSION['total_paginas'] = ceil($nreg_query $_SESSION['cant_regPag'] ); 
         while(
$row=mysql_fetch_array($result))
         {
           if(
$band == true)
          { echo 
"<table width='450' border='1' align='center' cellpadding='5' cellspacing='0'>";
           echo 
"<tr ><td height='20'></td><td>Apellido</td><td>Nombre</td><td>Ir a ficha</td></tr>";//<td>Materia</td><td>Facultad</td>;
           
$band=false;
          }
           echo 
"<tr><td><div align='center'><img src='".$row['docent_imag']."' width='30' height='30'></div></td><td>".$row['docent_apel']."</td><td>".$row['docent_nom']."</td><td><a href='ficha.php?a=".urlencode($row["docent_apel"])."&n=".urlencode($row["docent_nom"])."&m=".urlencode($row["mat_id"])."&i=".$row["docent_id"]." id='enlace'>ir a ficha</a></td></tr>";//<td>".$row['mat_nom']."</td><td>".$row['facu_nom']."</td></td> 
       
}
        if(
$band == false)
        { echo 
"</table>";}
       }
       else
       {    echo 
"No hay Registro"; } 
    } 
  else
  {
   echo 
"ERROR";
  }

  if(empty(
$nreg_query))
     {  return 
0;}
  else
     { return 
$nreg_query; }     
 }
    
?>
//cabeza resto
</head>
 <body>
<form action="docenteslimit.php" method="Post">
        <table width="494" height="207" border="0" align="center" class="tablaD">
          <tr>
            <td height="24" colspan="4"><label></label></td>
          </tr>
          <tr>
            <td height="24" colspan="4">completo los campos indicados , en base a los datos q conoce </td>
          </tr>
          <tr>
            <td width="64" height="24"><div align="center"> <span class="Estilo5">Apellido :</span> </div></td>
            <td><div align="center">
                <input type="text" name="textDA" value="<? echo $_POST['textDA'] ;?>" >
            </div></td>
            <td><div align="center"> <span class="Estilo5">Nombre:</span> </div></td>
            <td><div align="center">
                <input type="text" name="textDN" value="<? echo $_POST['textDN'];?>" >
            </div></td>
          </tr>
          <tr>
            <td width="64" height="24"><div align="center"> <span class="Estilo5">Facultad:</span> </div></td>
            <?
              $sql
="SELECT * FROM facultades WHERE  facu_id >1";
              
$result=mysql_query($sql);  
              echo
"<td width='155'><div align='center'>";
              echo 
"<select name='SelectF' id='cod_facu'    onchange='submit()'>";
              echo 
"<option value=0 selected> NO CONOCE FACULTAD</option>";
        
        while (
$row=mysql_fetch_array($result))
           {
             
$facu=$row["facu_nom"];   $facu_id=$row["facu_id"];
             if(
$_SESSION['id_facu'] == $facu_id )
                  {   echo 
'<option value = '.$facu_id.' selected>'.$facu.'</option>';  SESSION['facu']= $facu_id;
       }
     else 
       {   echo 
'<option value='.$facu_id.' >'.$facu.'</option>';        }
               }
               echo
"</select></div></td>";                
               echo
"<td width='64' class='Estilo5'><div align='center'>";
               echo 
"Carrera</div></td>";
               echo 
"<td width='155'><div align='center'>";
               echo 
"<select name='SelectC' id='cod_carr' onchange='submit()'>";
               echo 
"<option value=0 selected> NO CONOCE CARRERA</option>";
              
$sql="SELECT * FROM carreras";
              if(!empty(
$_SESSION['id_facu']) || $_SESSION['id_facu']>0)
                {
       
$sql=$sql." WHERE facu_id='".$_SESSION['id_facu']."'";
     }
     
$sql=$sql." order by 2";$result=mysql_query($sql);  
                 while(
$row=mysql_fetch_array($result))
     {
                  
$carr=$row["carr_nom"];$carr_id=$row["carr_id"];
      if(
$_SESSION['id_carr'] == $carr_id )
              { echo 
'<option value='.$carr_id.' selected>'.$carr.'</option>';        
            
$_SESSION['carr'] = $carr_id
                      }
        else 
          {  echo 
'<option value='.$carr_id.' >'.$carr.'</option>';        }
                  }
          
                echo 
"</select></div></td></tr>";
    echo 
"<tr><td width='64' class='Estilo5'><div align='center'>Materias</div></td>";
                echo 
"<td width='155'><div align='center'>";
          echo 
"<select name='SelectM' id='cod_mat' onchange='submit()'>";
    echo 
"<option value=0 >NO CONOCE MATERIA</option>";            $control=0;
     
$sql="SELECT  M.mat_id,M.mat_nom FROM materias M INNER JOIN materias_carreras R ON M.mat_id=R.mat_id INNER JOIN carreras C ON C.carr_id=R.carr_id";
        if(!empty(
$_SESSION['id_carr']) || $_SESSION['id_carr']>0)
          {
             
$sql=$sql." WHERE R.carr_id='".$_SESSION['id_carr']."'";
               
$control=1;
          }
       if(!empty(
$_SESSION['id_facu']) || $_SESSION['id_facu']>0)
          {
            if(
$control==1)
          {
$sql=$sql." AND";}
          else
         {
$sql=$sql." WHERE";} 
          
$sql=$sql." C.facu_id='".$_SESSION['id_facu']."'";
         }
      
$sql=$sql."GROUP BY M.mat_nom order by 2";
                 
$result=mysql_query($sql);
     while(
$row=mysql_fetch_array($result))
        {
                    if(
$_SESSION['id_mat'] == $row["mat_id"] )
            { 
         echo 
'<option value='.$row["mat_id"].' selected>'.$row["mat_nom"].'</option>';
          
$_SESSION['mat'] = $row["mat_id"];
           }
        else 
           { 
                       echo 
'<option value='.$row["mat_id"].'>'.$row["mat_nom"].'</option>';  
                      }
                  }
    echo 
"</select></div></td>";
                        
            
?>
            <td></td>
            <td><div align="center">
                <input type="submit" name="Buscar" value="Buscar">
            </div></td>
          </tr>
          <tr>
            <td height="61" colspan="4">
    <div id="Layer1" style="visibility:visible; height:67px ;width:500px ">
            <? 
      
if ($_POST['Buscar']=="Buscar")
       {
         if(
cargar_docentes()>0)
        {
         if( (
$_SESSION['pagina'] - 1) > 0)
         {
          echo 
"<a href='docenteslimit.php?pagina=".($_SESSION['pagina'] - 1)."'><Anterior</a> ";
          }
          for (
$i=1$i<=$total_paginas$i++)
                 { 
                  if (
$_SESSION['pagina'] == $i
                    {
                   echo 
"<b>".$_SESSION['pagina']."</b> "
                  } 
                else 
                    {
                                   echo 
"<a href='docenteslimit.php?pagina=$i'>$i</a>";                  }    
               }
           if ((
$_SESSION['pagina'] + 1)<=$_SESSION['total_paginas'])       
                          {
                echo 
" <a href='docenteslimit.php?pagina=".($_SESSION['pagina']+1)."'>Siguiente></a>";
               }
                      
            } 
            }
        
?>
  </div>
  </label>
  </div>
  </td>
  </tr>
  </table>
</form>
</body>
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:23.