Recorrer registros de formulario PHP hacia adelante y atrás

Estoy desarrollando un formulario en HTML, PHP el cual muestra registros que extrae de la base de datos en postgreSQL, hasta ahora lo que tengo hecho es que muestre los registros en los input, pero necesito poner 3 botones, uno que sea adelante otro atrás y uno más que sea grabar. Con el botón grabar no tengo problema porque ya tengo hechas las funciones que graban; pero he buscado en internet un función que me permita navegar con los registros hacia adelante y hacia atrás pero no he encontrado nada.

¿Me pueden apoyar con esto por favor?

El código que estoy utilizando es el siguiente:

<form action="" method="POST">
<div class="registros" id="">
<tr>
Consecutivo :<td><input type="text" value="<?php echo $registro->id_vdi;?>" style="width:30px;" id="id_vdi" /></td>
<tr>
Apellido Paterno: <td width="335"><input type="text" value="<?php echo $registro->apellido_paterno;?>" placeholder="" id="apellido_paterno" style="width:150px;" name="apellido_paterno"/></td>
Apellido Materno: <td width="335"><input type="text" value="<?php echo $registro->apellido_materno;?>" placeholder="" id="apellido_materno" style="width:150px;" name="apellido_materno"/></td>
Primer Nombre: <td width="335"><input type="text" value="<?php echo $registro->nombre_1;?>" placeholder="" id="nombre_1" style="width:150px;" name="nombre_1"/></td>
Segundo Nombre: <td width="335"><input type="text" value="<?php echo $registro->nombre_2;?>" placeholder="" id="nombre_2" style="width:150px;" name="nombre_2"/></td>
</tr><br /><br />
<tr>
Especialidad: <td width="335"><select name="especialidad" id="especialidad">
<option value=""><?php echo $registro->especialidad;?></option>
<option value="">Especialidad 2</option>
<option value="">Especialidad 3</option>
Cédula Profesional: <td width="335"><input type="text" value="<?php echo $registro->cedula_profesional;?>" placeholder="Cédula Profesional" id="cedula_profesional" style="width:130px;" name="cedula_profesional"/></td>
Cédula Especialista: <td width="335"><input type="text" value="<?php echo $registro->cedula_especialista;?>" placeholder="Cédula Especialista" id="cedula_especialista" style="width:130px;" name="cedula_especialista"/></td>
</tr>
</div>

</form>

Para recibir los registros de la base de datos estoy utilizando la función de PHP:  value="<?php echo $registro->cedula_profesional;?>"

El formulario se ve de la siguiente forma:

2 respuestas

Respuesta
1

Realicé este código y funciona perfecto, no es muy elegante pero hace exactamente lo que se requiere:

¿

<?php

require('conexion.php');

if(isset($_POST['siguiente'])){ // si existe..
$id_vdi=$_POST['id_vdi']+1; // la tomamos y le sumamos 1
$sql= pg_query("SELECT * FROM tabla1 WHERE id_vdi='$id_vdi'");
$registro = pg_fetch_object($sql);

}
if(isset($_POST['anterior'])){ // si existe..
$id_vdi=$_POST['id_vdi']-1; // la tomamos y le restamos 1
$sql= pg_query("SELECT * FROM tabla1 WHERE id_vdi='$id_vdi'");
$registro = pg_fetch_object($sql);

}
?>

Tomando en cuenta que el botón siguiente debe llamarse "siguiente" en el name="siguiente"

Respuesta
1

Para resolver esta duda lo mejor es que te leas un artículo que responde justo a esa pregunta:

Adelante y atrás con registros en PHP

Básicamente se trata de utilizar información de tipo GET y utilizar botones para los enlaces hacia detrás y hacia delante. Necesitarás primero haber contado cuantos elementos responden a la búsqueda del formulario, para poder saber si hay página siguiente o anterior.

Ejemplo:

<a href="?pagina=1">Atrás</a>

<a href="?pagina=2">Adelante</a>

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas