Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/07/2013, 15:15
MrKaiser
 
Fecha de Ingreso: febrero-2013
Ubicación: Bariloche - Argentina
Mensajes: 7
Antigüedad: 11 años, 9 meses
Puntos: 0
No se actualizan los datos

Bien, saludos a todos.
Estoy haciendo un sistema de paginación con AJAX. El problema es que a la hora de cargar la segunda página el código deja de funcionar. Osea cargo otra pagina que no sea la primera, se reciben bien los datos y ya el codigo no funciona a la segunda vez.

Es como si el código que recibo mediante ajax, no funcionara, no existiera.

Cabe aclarar que el código si funciona con versiones mucho más viejas de JQuery, pero yo quiero hacerlo con la versión que tengo.

El script deberia paginar las veces que el usuario se conectó a la web. El momento y la ip. Ya descarté problemas en el código PHP, es problema de JQuery porque como dije anteriormente con versiones viejas funciona bien.
Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.     $(document).ready(function() {    
  3.     $('.paginate a').on('click', function(){
  4.                //Obtenemos el valor de la pagina a la que queremos ir
  5.         var page = $(this).attr('data');    
  6.  
  7.             $.ajax({
  8.                 type: "POST",
  9.                 url: "include/logins2.php",
  10.                 cache: false,
  11.                 data:
  12.                 {
  13.                     pagina: page,
  14.                                         //Enviamos la variable para que el archivo php sea accesible solo de esta pagina
  15.                     supervar: true,
  16.                                         //Enviamos la variable del id del usuario en la tabla
  17.                     idc: <?php echo $idc; ?>
  18.                 },
  19.                 success: function(data) {
  20.                                         //Cuando tenemos éxito obtenemos los datos y los guardamos en el div contentlog. Creo que acá esta el error
  21.                     $('#contentlog').html(data);
  22.                 }
  23.             });
  24.         });              
  25.     });    
  26. </script>
Código HTML:
Ver original
  1. <div class="alert alert-success" id="logins">
  2.     <h4 style="text-align: center;">Inicios de Sesión</h4>
  3.     <div id="contentlog">
  4.     <?php
  5.     require('./include/logins2.php');
  6.     ?>
  7.     </div>
  8. </div>

Este es el archivo logins2.php que es llamado mediante AJAX

Código PHP:
Ver original
  1. <?php
  2. if($supervar == true)
  3. {
  4.     include('db.php');
  5.     $logins = sprintf("SELECT * FROM loginser WHERE sqlid = '%s'",
  6.                 $idc);
  7.     //$query_num_services =  mysql_query("SELECT count(*) FROM loginser WHERE sqlid = $idc");
  8.     $numer = mysql_query($logins);
  9.     $num_total_registros = mysql_num_rows($numer);
  10.     //Si hay registros
  11.     echo $num_total_registros;
  12.     if ($num_total_registros > 0)
  13.     {
  14.         //numero de registros por página
  15.         $rowsPerPage = 5;
  16.  
  17.         //por defecto mostramos la página 1
  18.         $pageNum = 1;
  19.  
  20.         if(isset($_POST['pagina']))
  21.         {
  22.             $pageNum = $_POST['pagina'];
  23.         }
  24.         //contando el desplazamiento
  25.         $offset = ($pageNum - 1) * $rowsPerPage;
  26.         $total_paginas = ceil($num_total_registros / $rowsPerPage);
  27.         $sel = sprintf("SELECT * FROM loginser WHERE sqlid = '%s' ORDER BY id DESC LIMIT %s,%s",
  28.         $idc, $offset, $rowsPerPage);
  29.         $que = mysql_query($sel);
  30.         $num = mysql_num_rows($que);
  31.         ?>
  32.             <div class="contact-input" style="color: black;">
  33.                 <table class="table-light" style="margin: auto; text-align: center;">
  34.                 <tr>
  35.                     <th style="width:30%; text-align: center;">Fecha y Hora</th>
  36.                     <th style="text-align: center;">IP</th>    
  37.                 </tr>
  38.         <?php
  39.         if ($num)
  40.         {
  41.             while ($i < $num and $tos = mysql_fetch_assoc($que))
  42.             {
  43.                 $momento= htmlentities($tos[momento], ENT_QUOTES,'UTF-8');
  44.                 $iplog = htmlentities($tos[ip], ENT_QUOTES,'UTF-8');
  45.                
  46.                 echo "<tr>";
  47.                 echo "<td>$momento</td>";
  48.                 echo "<td>$iplog</td>";
  49.                 echo "</tr>";
  50.             }
  51.             ?>
  52.                 </table>
  53.             </div>
  54.             <?php
  55.         }
  56.         else
  57.         {
  58.             echo "Sin resultados";
  59.         }
  60.        
  61.         if ($total_paginas > 1) {
  62.                             echo '<div class="paginate">';
  63.                             echo '<ul>';
  64.                             if ($pageNum != 1)
  65.                                 echo '<li><a data="'.($pageNum-1).'">Anterior</a></li>';
  66.                                 for ($i=1;$i<=$total_paginas;$i++) {
  67.                                     if ($pageNum == $i)
  68.                                         //si muestro el índice de la página actual, no coloco enlace
  69.                                         echo '<li><a>'.$i.'</a></li>';
  70.                                     else
  71.                                         //si el índice no corresponde con la página mostrada actualmente,
  72.                                         //coloco el enlace para ir a esa página
  73.                                         echo '<li><a data="'.$i.'">'.$i.'</a></li>';
  74.                                  }
  75.                                  if ($pageNum != $total_paginas)
  76.                                      echo '<li><a data="'.($pageNum+1).'">Siguiente</a></li>';
  77.                                  echo '</ul>';
  78.                                   echo '</div>';
  79.                             }
  80.     }
  81. }