Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Señalar página actual

Estas en el tema de Señalar página actual en el foro de PHP en Foros del Web. Hola gente Estoy teniendo algunos problemas con lo siguiente. Quizá sea porque llevo un par de días sin dormir trabajando en un proyecto, pero no ...
  #1 (permalink)  
Antiguo 31/07/2015, 21:37
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 7 meses
Puntos: 145
Pregunta Señalar página actual

Hola gente

Estoy teniendo algunos problemas con lo siguiente.
Quizá sea porque llevo un par de días sin dormir trabajando en un proyecto, pero no consigo solucionar lo siguiente:

Tengo una paginación estructurada de la siguiente manera:

Código PHP:
Ver original
  1. <?php
  2. //Cantidad de artículos por página
  3. $num_rec_per_page = 10;
  4.  
  5. //Si no está definida la página en el GET de la URL, va a la primera página
  6. if (isset($_GET["pagina"])) {
  7.     $page  = $_GET["pagina"];
  8. } else {
  9.     $page=1;
  10. };
  11.  
  12. $sql = "SELECT * FROM mitabla";
  13. $rs_result = mysqli_query($conexion, $sql); //Consulta SQL
  14. $total_records = mysqli_num_rows($rs_result);  //Cuenta el número total de registros
  15. $total_pages = ceil($total_records / $num_rec_per_page);
  16.  
  17. echo 'Página actual: '.$page.'<br>';
  18.  
  19. for ($i=1; $i<=$total_pages; $i++) {
  20.     echo "<a href='?pagina=".$i."'>Página ".$i."</a><br>";
  21. };
  22. ?>

Bien, esto funciona correctamente. Me muestra como resultado lo siguiente:

Cita:
(Suponiendo que estoy en la página 1 y solo hay 2)

Página actual: 1
Página 1
Página 2
Entonces, para el resultado final, yo le quitaría esta línea:

Código PHP:
Ver original
  1. echo 'Página actual: '.$page.'<br>'

Lo que necesito es que la página actual la marque con un estilo (CSS).
No se cómo hacerlo, estoy bloqueado

jrasias d ante braso
__________________
¿Te sirvió la respuesta? Deja un +1
  #2 (permalink)  
Antiguo 31/07/2015, 21:51
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Señalar página actual

hola , "un paginador no merece ni 5 minutos de charla, es tiempo perdido"
asi me dijo un jefe un dia cuando era junior

y es la verdad simplemente bajate cualquier paginador
  #3 (permalink)  
Antiguo 31/07/2015, 21:55
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 7 meses
Puntos: 145
Respuesta: Señalar página actual

Cita:
Iniciado por Patriarka Ver Mensaje
hola , "un paginador no merece ni 5 minutos de charla, es tiempo perdido"
asi me dijo un jefe un dia cuando era junior

y es la verdad simplemente bajate cualquier paginador
Gracias por el aporte, pero quisiera aprender a solucionar esto, no bajar algo ya hecho. Sino, bajaría algo ya hecho.
__________________
¿Te sirvió la respuesta? Deja un +1
  #4 (permalink)  
Antiguo 31/07/2015, 22:02
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Señalar página actual

aun estas lejos de hacer un buen paginador

pero debes ver esto:


Código PHP:
Ver original
  1. for ($i=1; $i<=$total_pages; $i++) {
  2.     $activo = ($page==$i) ? "activo":"";
  3.     echo "<a class='"-$activo-"' href='?pagina=".$i."'>Página ".$i."</a><br>";
  4. };
  #5 (permalink)  
Antiguo 31/07/2015, 22:06
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 7 meses
Puntos: 145
Respuesta: Señalar página actual

Cita:
Iniciado por Patriarka Ver Mensaje
aun estas lejos de hacer un buen paginador

pero debes ver esto:


Código PHP:
Ver original
  1. for ($i=1; $i<=$total_pages; $i++) {
  2.     $activo = ($page==$i) ? "activo":"";
  3.     echo "<a class='"-$activo-"' href='?pagina=".$i."'>Página ".$i."</a><br>";
  4. };
Genial, me funciona. ¿Eso es un operador ternario?
__________________
¿Te sirvió la respuesta? Deja un +1
  #6 (permalink)  
Antiguo 01/08/2015, 06:24
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 12 años, 11 meses
Puntos: 261
Respuesta: Señalar página actual

Buenas,

Cita:
Iniciado por NueveReinas Ver Mensaje
Genial, me funciona. ¿Eso es un operador ternario?
Exacto, el resultado es similar a:
Código PHP:
if($page == $i)
{
    
$activo "activo";
}
else
{
    
$activo "";

Aunque tiene sus inconvenientes al anidarlos.

Puedes ver algo más al respecto aquí:
http://php.net/manual/es/language.op...comparison.php

Saludos,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight

Etiquetas: actual, mysql, página, registro, select, sql, tabla
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 16:49.