Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Mostrar una base de datos por orden

Estas en el tema de Mostrar una base de datos por orden en el foro de PHP en Foros del Web. Tengo una base de datos y la muestro en una tabla de la siguiente manera, pues incluye paginación: Código: <?php $link = @mysql_connect($host,$user,$pw); mysql_select_db($db, $link); ...
  #1 (permalink)  
Antiguo 18/08/2013, 13:46
 
Fecha de Ingreso: agosto-2013
Mensajes: 6
Antigüedad: 11 años, 3 meses
Puntos: 0
Pregunta Mostrar una base de datos por orden

Tengo una base de datos y la muestro en una tabla de la siguiente manera, pues incluye paginación:

Código:
<?php
$link = @mysql_connect($host,$user,$pw);
mysql_select_db($db, $link);

// maximo por pagina
$limit = 20;

// pagina pedida
$pag = (int) $_GET["pag"];
if ($pag < 1)
{
   $pag = 1;
}
$offset = ($pag-1) * $limit;

$sql = "SELECT SQL_CALC_FOUND_ROWS USUARIO,FECHA,MENSAJE FROM mensaje LIMIT $offset, $limit";
$sqlTotal = "SELECT FOUND_ROWS() as total";

$rs = mysql_query($sql);
$rsTotal = mysql_query($sqlTotal);

$rowTotal = mysql_fetch_assoc($rsTotal);
// Total de registros sin limit
$total = $rowTotal["total"];
?>
<?php
         while ($row = mysql_fetch_assoc($rs))
         {
            $usuariotabla = $row["USUARIO"];
            $fechatabla = $row["FECHA"];
            $mensajetabla = $row["MENSAJE"];
            
         ?>
<div id="tabla">
<TABLE WIDTH="667" bordercolor="white"  style="border-collapse:collapse;" border="1">

<TD WIDTH="60px" bgcolor="#ff8000">
<p><a title="<?php echo $fechatabla; ?>" href="perfilpublico.php?user=<?php echo $usuariotabla ?>"><?php echo $usuariotabla; ?></a></p>
</TD>


<TD WIDTH="607px" bgcolor="#000000">
<p style="color:white"><?php echo $mensajetabla; ?></p>
</TD>

</TABLE>
</div>
<?php
         }
      ?>
      <tfoot>
      <tr>
         <td colspan="2">
      <center><div id='paginacion'><?php
         $totalPag = ceil($total/$limit);
         $links = array();
         for( $i=1; $i<=$totalPag ; $i++)
         {
            $links[] = "<a href=\"?pag=$i\">$i</a>"; 
         }
         echo implode(" - ", $links);
      ?></div></center>
         </td>
      </tr>
   </tfoot>
	</div>
Lo que da como resultado una tabla en la que sale el nombre del usuario y el mensaje que envió mediante un formulario. Pero los mensajes más recientes van apareciendo hacia abajo en la tabla, quedando arriba los mas antiguos. Alguien sabe como hacerle para que aparezcan los mas nuevos arriba? Muchas gracias.
  #2 (permalink)  
Antiguo 18/08/2013, 13:53
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Mostrar una base de datos por orden

Puedes usar la clausula ORDER BY de SQL, cosa que nada tiene que ver con PHP por si no lo habías notado.

PDTA: Estudia algo de SQL para que no confundas temas de SQL como si fueran de PHP.

Google: ORDER BY SQL
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 18/08/2013, 14:07
 
Fecha de Ingreso: agosto-2013
Mensajes: 6
Antigüedad: 11 años, 3 meses
Puntos: 0
De acuerdo Respuesta: Mostrar una base de datos por orden

Cita:
Iniciado por pateketrueke Ver Mensaje
Puedes usar la clausula ORDER BY de SQL, cosa que nada tiene que ver con PHP por si no lo habías notado.

PDTA: Estudia algo de SQL para que no confundas temas de SQL como si fueran de PHP.

Google: ORDER BY SQL
Muchas gracias, logré solucionarlo con ORDER BY

Etiquetas: php+base+de+datos
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 13:03.