Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/10/2009, 12:02
Avatar de Capote
Capote
 
Fecha de Ingreso: julio-2007
Ubicación: C h i l e
Mensajes: 136
Antigüedad: 16 años, 9 meses
Puntos: 0
Paginacion no me cambia el valor de la primera fila

Hola.
Estoy tratando de paginr los resultados que hago por medio de una consulta a una base de datos. La paginación resulta sin problemas pero sucede "algo extraño" , debido a que el primer valor siempre me lo imprime en la primera fila de todas las pagina y no me muestra el valor que corresponde en esa pagina y esa fila.
Aqui coloco un ejemplo de comoesta funcionando hasta ahora:

Ejemplo de impresion por pantalla:
Pagina 1: valor 1 --- valor 2--- valor 3
Pagina 2: valor 1 -- valor 5 --- valor 6 (Deberia montrar el valor 4 y no el valor 1)
Pagina 3: valor 1 -- valor 8 --- valor 9 (Deberia montrar el valor 5 y no el valor 1)
Pagina 3: valor 1 -- valor 11 --- N... (Deberia montrar el valor 10 y no el valor 1)

Ojalá se pueda entender lo que trate de explicar y que me puedan ayudar.
Aqui dejo mi codigo:

Código PHP:
<?php
                
//Carga de variables del Servidor de Base de Datos.
                
require ('base_de_datos.php');
                
//Conexion a la Base de Datos.
                
$conexion mysql_connect($host,$usuario,$password) or die ('Error de conexion, el error es: '.mysql_error());
                
//Seleccion de la Base de Datos.
                
mysql_select_db($bd,$conexion) or die ('Error de selecion de Base de Datos, el error es: '.mysql_error());
                
//Confeccion de la consulta SQL.                
                
$consulta 'SELECT id_vehiculo, patente_vehiculo, marca_vehiculo, modelo_vehiculo, ano_vehiculo, descripcion_estado_vehiculo FROM vehiculo JOIN estado_vehiculo USING (id_estado_vehiculo)';    
                
//Ejecucion de la consulta SQL.
                
$resultado mysql_query($consulta,$conexion) or die ('Error en la consulta SQL, el error es : '.mysql_error());
                
//Contar cantidad de registros
                
$num_registros=mysql_num_rows($resultado);
                
//echo"$num_registros";
                //Comprueba existencia de resultado
                
if (mysql_num_rows($resultado))
                {
                    
//Muestra los resultados
                    
for ($i 0;$i <= mysql_num_rows($resultado)-1$i++)
                    {
                        if (!
mysql_data_seek($resultado$i))
                        {
                            echo 
"No se puede mostrar la fila ".$i.", el error es: ".mysql_error();
                            continue;
                        }
                        if (!(
$registro mysql_fetch_row($resultado)))
                        {
                            continue;
                        }
                            
//******PAGINACION*********
                    //cantidad de registros por pagina
                    
$registros=3;
                    
//numero de pagina 
                    
$pagina=$_GET["num"];
                    if (
is_numeric($pagina))
                         
$inicio=(($pagina-1)*$registros);
                    else
                        
$inicio=0;
                    
$resultado mysql_query("SELECT id_vehiculo, patente_vehiculo, marca_vehiculo, modelo_vehiculo, ano_vehiculo, descripcion_estado_vehiculo FROM vehiculo JOIN estado_vehiculo USING (id_estado_vehiculo) limit $inicio,$registros " ,$conexion);
                    
$paginas=ceil($num_registros/$registros);
                        echo 
'<tr bgcolor="#cccccc">';
                        echo 
'<td><div align="center"><form name="buscar" method="post" action="modificar_vehiculo.php"><input type="submit" value="'.$registro[0].'"><input type="hidden" name="id_vehiculo" value="'.$registro[0].'"><input type="hidden" name="enviar" value="Buscar"></form></div></td>';
                        echo 
'<td><label style="font-size:12px"><div align="center">'.$registro[1].'</div></label></td>';
                        echo 
'<td><label style="font-size:12px"><div align="center">'.$registro[2].'</div></label></td>';
                        echo 
'<td><label style="font-size:12px"><div align="center">'.$registro[3].'</div></label></td>';
                        echo 
'<td><label style="font-size:12px"><div align="center">'.$registro[4].'</div></label></td>';
                        echo 
'<td><label style="font-size:12px"><div align="center">'.$registro[5].'</div></label></td>';
                        echo 
'</tr>';
                    }
                }
                else
                {
                                
?>
                    </table>                    
    
                    <table width="100%" class="Estilo1" align="center">
                        <tr>
                            <td><label style="font-size:20px"><div align="center">No existen registros!</div></label></td>
                        </tr>
                    </table>        
<?php
              
//cierra else
               
}
                
?>        
   
<?php
   
                
//Imprimir numeros de paginas
            
if ($pagina>1)
                     echo 
"<a href='maestro_vehiculos.php ?num=" . ($pagina-1) ."' > Anterior</a> " ;    
                     for (
$cont=1;$cont<=$paginas;$cont++)
                       {
                         if (
$cont==$pagina)
                            echo 
$cont " " ;
                         else
                             echo 
"<a href='maestro_vehiculos.php?num=".$cont ."'>$cont</a> " ;
                       }
            if (
$pagina<$paginas)
                   echo 
"<a href='maestro_vehiculos.php ?num=" . ($pagina+1) ."'> Siguiente</a> " ;
     echo
"</table>";
?>
    
      <?php
      
 
//cierra funcion
    
}
    
?>