Foros del Web » Programando para Internet » PHP »

Como mostrar los ultimos ingresos de mi tabla.

Estas en el tema de Como mostrar los ultimos ingresos de mi tabla. en el foro de PHP en Foros del Web. Hola a todos, estoy armando una sección donde necesito mostrar los ultimos 5 ingresos que hice en mi tabla mysql, el tema es que no ...
  #1 (permalink)  
Antiguo 19/03/2010, 08:43
 
Fecha de Ingreso: mayo-2009
Mensajes: 68
Antigüedad: 15 años, 6 meses
Puntos: 0
Como mostrar los ultimos ingresos de mi tabla.

Hola a todos, estoy armando una sección donde necesito mostrar los ultimos 5 ingresos que hice en mi tabla mysql, el tema es que no se como hacerlo porque por id no puedo, ya que en dicha tabla se borran las entradas o agregan nuevas.
El codigo que uso actualmente es el siguiente:

para la consulta:
Código PHP:
mysql_select_db($database_conexion$conexion);
$query_Recordset1 "SELECT * FROM logros";
$Recordset1 mysql_query($query_Recordset1$conexion) or die(mysql_error());
$row_Recordset1 mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 mysql_num_rows($Recordset1); 
y para mostrarlo uso un echo:
Código PHP:
 echo $row_Recordset1['contenido']; 
Necesito hacer un echo por cada ingreso, solo los ultimos 5 para mostrarlos separados.

yo podría hacer que la consulta tenga por ejemplo where id= 21, pero por id no me sirve, como puedo hacer la consulta para que me muestre la ultima entrada, luego la ante ultima y así hasta llgar a la entrada numero 5.

Espero queme puedan ayudar.

Saludos,
Mariano
  #2 (permalink)  
Antiguo 19/03/2010, 08:59
 
Fecha de Ingreso: junio-2008
Ubicación: Capital Federal xD
Mensajes: 1.208
Antigüedad: 16 años, 5 meses
Puntos: 35
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

A ver, como es eso que no tienes un indice en la tabla, supongo que tienes un campo ID, te recomiendo que al eliminar un registro no lo borres de la tabla sino que lo desactives usando un campo digamos llamado enabled,
O sino deberias tener un campo que sirva como referencia para lograr lo que tu deseas, ¿no tienes un campo de alta del registro? o similar,

La query para obtener los ultimos 5 seria algo asi
Código PHP:
SELECT FROM tabla ORDER BY date DESC LIMIT 5 
debes ordenarlo en función de un campo cronológico
__________________
I am Doyle please insert code.

Última edición por doylelives; 19/03/2010 a las 13:21
  #3 (permalink)  
Antiguo 19/03/2010, 09:37
 
Fecha de Ingreso: mayo-2009
Mensajes: 68
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

Hola doylelives, esto me sirve mucho, ahora lo estoy probando pero como hago para mostrar el ante ultimo ingreso?
Porque si pongo limit 2, en DESC me sigue saliendo el ultimo ingreso.
  #4 (permalink)  
Antiguo 19/03/2010, 10:13
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima, Perú
Mensajes: 136
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

amarralos a una array y muestra el segundo elemento.

me gustaria ver la estructura de tu tabla, por cierto, estas usando dreamweaver???
  #5 (permalink)  
Antiguo 19/03/2010, 10:33
 
Fecha de Ingreso: mayo-2009
Mensajes: 68
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

hola dantrix, y cómo hago ese array?... y si por ahora uso Dream para harmas los codigos.

mi tabla es la siguiente:
logros` (`id`, `titulo`, `contenido`) VALUES
(24, '', 'Logro 1'),
(25, '', 'Logro 2'),
(26, '', 'Logro 3'),
(27, '', 'logro 4'),
(28, '', 'logro 5'),
(29, '', 'logro 6'),
(30, '', 'logro 7');


como las filas se borran y se ingresan nuevas el Id nunca va aser el mismo y necesito tener un echo para cada id, el ultimo ingresodo, el ante ultimo y así sucesivamente hasta los ultimos 5. se que es un poco desordenado pero no se como hacerlo bien.
  #6 (permalink)  
Antiguo 19/03/2010, 16:50
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima, Perú
Mensajes: 136
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

Código PHP:
Ver original
  1. $query_Recordset1 = "SELECT * FROM logros ORDER BY id DESC LIMIT 5";

Esa modificacion deberia darte los ultimo 5 ingresos

Saludos
  #7 (permalink)  
Antiguo 19/03/2010, 20:34
 
Fecha de Ingreso: mayo-2009
Mensajes: 68
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

gracias dantrix, pero como hago por ejemplo para mostrar el ante ultimo ingreso???

esto se puede hacer solo con un echo...??
  #8 (permalink)  
Antiguo 19/03/2010, 20:51
 
Fecha de Ingreso: diciembre-2009
Mensajes: 612
Antigüedad: 15 años
Puntos: 16
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

Saca la busqueda en un array

En donde el 0 será el ultimo, el 1 el penúltimo...

Valla, que por ejemplo el antepenultimo sería $array[3]
  #9 (permalink)  
Antiguo 19/03/2010, 21:39
 
Fecha de Ingreso: diciembre-2008
Mensajes: 69
Antigüedad: 16 años
Puntos: 0
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

No estoy seguro, pero no te funcionaría si utilizas...?

Código MySQL:
Ver original
  1. LIMIT 1,1

Probalo y contame!
Un saludo
  #10 (permalink)  
Antiguo 19/03/2010, 21:49
 
Fecha de Ingreso: mayo-2009
Mensajes: 68
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

Gracias aagus, pero si quiero hacer un echo para el ultimo ongreso de mi tabla y otro echo para el ante ultimo y asi mostrar los ultimos 5 en impresiones distintas necesito hacer una consult apra cada uno de ellos???

yo quiero hacer un print de mi ultimo ingre, abajo, otro de mi ante ultimo... y asi hasta llegar a los ultimos 5

Última edición por marianoear; 19/03/2010 a las 21:56
  #11 (permalink)  
Antiguo 19/03/2010, 22:04
 
Fecha de Ingreso: diciembre-2008
Mensajes: 69
Antigüedad: 16 años
Puntos: 0
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

Entiendo, lo que se me ocurre es que sea

Código PHP:
Ver original
  1. $consulta=("SELECT FROM alalal LIMIT 5");
  2. while($registro=mysql_fetch_array($consulta)){
  3. echo"" .$registro["campo"]. "";}

Creo haber entendido y espero que eso te sirva, sino tendrás que usar mysql_num_rows y empezar a numerar campos.
Contame tus resultados.

Última edición por aagus; 19/03/2010 a las 22:08 Razón: Olvidé un paréntesis
  #12 (permalink)  
Antiguo 20/03/2010, 03:00
 
Fecha de Ingreso: abril-2008
Mensajes: 453
Antigüedad: 16 años, 8 meses
Puntos: 16
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

ok:
tenes estos datos
(24, '', 'Logro 1'),
(25, '', 'Logro 2'),
(26, '', 'Logro 3'),
(27, '', 'logro 4'),
(28, '', 'logro 5'),
(29, '', 'logro 6'),
(30, '', 'logro 7');

con el ORDER BY [campo] [ORDEN [ ASC|DESC]] ordenas los campos segun el campo Ascendente o Descentende por defecto el orden es ID Ascendente por lo que vas a ver siempre de menor a mayor de primeros a ultimos

la id del campo son autoincremente por lo que el numero mas alto del campo id es el resultado de la ultima fila.

si ordenas el campo id en forma descendente vas a obtener de ultimos a primeros.

con el campo LIMIT [inicio,fin] obtenes los campos a partir de la fila de inicio hasta la de fin, inicio por defecto es 1, asi que tomara los resultados desde la primer fila hasta la que pongamos como fin LIMIT 5 tomara las primeras 5 filas, pero no quiere decir que sean los primeros regitros sino que son las primeras que aparecen en el resulset.

para obtener las ultimas 5 hace como bien te explicaron pero ordenalas por id,

Código PHP:
Ver original
  1. <?php
  2.      
  3.  $query = mysql_query("SELECT * FROM comentarios ORDER BY id DESC LIMIT 5");
  4. while($fila = mysql_fetch_array($query)){
  5.     $filas[] = $fila; //creas el array con el resultado
  6. }
  7. $ultimo_indice = (count($filas)-1);
  8.  
  9.  
  10. $primera = $filas[0]; // tendra los datos del ultimo id
  11. $segunda = $fila[1]; //tendra los datos de la penultima id
  12.  
  13. $ultima = $fila[$ultimo_indice];
  14.  
  15. echo $primera['id'];
  #13 (permalink)  
Antiguo 20/03/2010, 08:39
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima, Perú
Mensajes: 136
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

Cita:
Iniciado por samu22 Ver Mensaje
ok:
tenes estos datos
(24, '', 'Logro 1'),
(25, '', 'Logro 2'),
(26, '', 'Logro 3'),
(27, '', 'logro 4'),
(28, '', 'logro 5'),
(29, '', 'logro 6'),
(30, '', 'logro 7');

con el ORDER BY [campo] [ORDEN [ ASC|DESC]] ordenas los campos segun el campo Ascendente o Descentende por defecto el orden es ID Ascendente por lo que vas a ver siempre de menor a mayor de primeros a ultimos

la id del campo son autoincremente por lo que el numero mas alto del campo id es el resultado de la ultima fila.

si ordenas el campo id en forma descendente vas a obtener de ultimos a primeros.

con el campo LIMIT [inicio,fin] obtenes los campos a partir de la fila de inicio hasta la de fin, inicio por defecto es 1, asi que tomara los resultados desde la primer fila hasta la que pongamos como fin LIMIT 5 tomara las primeras 5 filas, pero no quiere decir que sean los primeros regitros sino que son las primeras que aparecen en el resulset.

para obtener las ultimas 5 hace como bien te explicaron pero ordenalas por id,

Código PHP:
Ver original
  1. <?php
  2.      
  3.  $query = mysql_query("SELECT * FROM comentarios ORDER BY id DESC LIMIT 5");
  4. while($fila = mysql_fetch_array($query)){
  5.     $filas[] = $fila; //creas el array con el resultado
  6. }
  7. $ultimo_indice = (count($filas)-1);
  8.  
  9.  
  10. $primera = $filas[0]; // tendra los datos del ultimo id
  11. $segunda = $fila[1]; //tendra los datos de la penultima id
  12.  
  13. $ultima = $fila[$ultimo_indice];
  14.  
  15. echo $primera['id'];
Pero si el array siempre va a tener cinco elementos, no es mas facil llamar al segundo elemento???
  #14 (permalink)  
Antiguo 20/03/2010, 12:32
 
Fecha de Ingreso: abril-2008
Mensajes: 453
Antigüedad: 16 años, 8 meses
Puntos: 16
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

Cita:
Iniciado por dantrix Ver Mensaje
Pero si el array siempre va a tener cinco elementos, no es mas facil llamar al segundo elemento???
Claro pero es para que supiera cual es el primer registro dentro del array, si le pusiera $fila[1]; solamente capaz que no entenderia porque se usa eso, la idea fue explicarle como se gurdaban los datos en el array donde 0 es el primer nodo del array y que es independiente a los registros de la bd, ya que si se cambia el orden de busqueda $fila[1] no va a ser el anteultimo registro sino que el segundo
  #15 (permalink)  
Antiguo 20/03/2010, 12:57
 
Fecha de Ingreso: marzo-2010
Ubicación: Lima, Perú
Mensajes: 136
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Como mostrar los ultimos ingresos de mi tabla.

Cita:
Iniciado por samu22 Ver Mensaje
Claro pero es para que supiera cual es el primer registro dentro del array, si le pusiera $fila[1]; solamente capaz que no entenderia porque se usa eso, la idea fue explicarle como se gurdaban los datos en el array donde 0 es el primer nodo del array y que es independiente a los registros de la bd, ya que si se cambia el orden de busqueda $fila[1] no va a ser el anteultimo registro sino que el segundo
Eso esta mas claro, aunque pensandolo mejor, tu solución es escalable.

Saludos,

me imagino que hilo cerrado?

Etiquetas: ingresos, ultimo, tablas
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 04:15.