Sitios web

Mostrar los últimos registros de una base de datos MySQL

Mostramos un pequeño script programado en PHP que sirve para que los gestores de sitios web puedan añadir un widget especial en su o sus sitios. Solo hay que añadir algunos datos para colocarlo en el lugar adecuado.

Mostrar los últimos registros de una base de datos MySQL

Como nos ocurre a nosotros en Batiburrillo.net, tal vez, como gestor de un sitio web, te gustaría incluir en el sidebar de las páginas un widget que muestre datos almacenados en una base de datos. No importa que el sitio esté construido sobre WordPress u otro CMS, lo que os proponemos es válido para cualquier sistema que se asiente sobre el lenguaje de scripts PHP y maneje bases de datos en MySQL.

Proceso a seguir

Si quieres mostrar los últimos registros de una base de datos (MySQL), que gestiona, por ejemplo, tu sección de descargas de software, puedes, utilizando PHP, realizar una consulta desde cualquier página para ver los resultados.

Dicha consulta debe contener los pasos siguientes:

  1. Llamada a la base de datos, en la que hay que incluir el servidor ($mysql_host), el nombre de usuario ($mysql_user), la contraseña ($mysql_pass) y el nombre de la base ($mysql_db). Los datos debes ponerlos en la parte superior del script. Se indicará también, en la variable $nolinksnew, el número de registros a mostrar.
  2. Extracción de los datos indicando la tabla (en nuestro caso soft_descarga) y los campos que entran en juego.
  3. Presentación en la página de los datos extraídos, utilizando la instrucción echo. Se utilizarán dos opciones:
    En la variable $longitud se indica el máximo número de caracteres a mostrar en la página.
    Si el título supera ese número, se escribirán los caracteres indicados y, a continuación, puntos suspensivos (…).
    Si el título no supera el número, se escribirá el nombre completo.
    (El parámetro title permitirá ver, en cualquier caso, el nombre completo al colocar el puntero del ratón).
<?php
$mysql_host = "tu_servidor";
$mysql_user = "tu_nombre";
$mysql_pass = "tu_contraseña";
$mysql_db = "tu_base";

$nolinksnew = "10";

$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass)
or die ("No se puede establecer la conexión");
mysql_select_db($mysql_db, $mysql_mylink)
or die ("No se puede conectar a la base de datos");

if ($start) {
settype($start, 'integer');
} else {
$start = 0;
}

$climit = $nolinksnew + 0;

if (!$newdays)
{
$newdays=$daysnew;
}
else
{
$newdays=$newdays;
}

$rime1 = mysql_query("SELECT COUNT(*) from soft_descarga WHERE (to_days(NOW()) - to_days(soft_descarga.fecha)) <= $newdays") or die(mysql_error());
$totalnum = mysql_result($rime1, 0, 0);

$rime=mysql_query("SELECT * FROM soft_descarga WHERE (to_days(NOW()) - to_days(soft_descarga.fecha)) <= $newdays ORDER BY fecha DESC, desc_id DESC LIMIT $start, 
$climit");

while($row = mysql_fetch_array($rime)) {
extract($row);
$ndesc_name = $desc_name;
$longitud = strlen($desc_name);
If ($longitud > 20) {
$desc_name = substr($desc_name,0,17);
echo "- <b><a href='../descargas/index.php?desc_id=$desc_id' title='$ndesc_name'>$desc_name...</b></a></b><br>";
}
else
{
echo "- <b><a href='../descargas/index.php?desc_id=$desc_id' title='$ndesc_name'>$desc_name</b></a></b><br>";
}
}
mysql_close ($mysql_mylink);
?>
<?php
$mysql_host = "tu_servidor";
$mysql_user = "tu_nombre";
$mysql_pass = "tu_contraseña";
$mysql_db = "tu_base";

$nolinksnew = "10";

$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass)
or die ("No se puede establecer la conexión");
mysql_select_db($mysql_db, $mysql_mylink)
or die ("No se puede conectar a la base de datos");

if ($start) {
settype($start, 'integer');
} else {
$start = 0;
}

$climit = $nolinksnew + 0;

if (!$newdays)
{
$newdays=$daysnew;
}
else
{
$newdays=$newdays;
}

$rime1 = mysql_query("SELECT COUNT(*) from soft_descarga WHERE (to_days(NOW()) - to_days(soft_descarga.fecha)) <= $newdays") or die(mysql_error());
$totalnum = mysql_result($rime1, 0, 0);

$rime=mysql_query("SELECT * FROM soft_descarga WHERE (to_days(NOW()) - to_days(soft_descarga.fecha)) <= $newdays ORDER BY fecha DESC, desc_id DESC LIMIT $start, 
$climit");

while($row = mysql_fetch_array($rime)) {
extract($row);
$ndesc_name = $desc_name;
$longitud = strlen($desc_name);
If ($longitud > 20) {
$desc_name = substr($desc_name,0,17);
echo "- <b><a href='../descargas/index.php?desc_id=$desc_id' title='$ndesc_name'>$desc_name...</b></a></b><br>";
}
else
{
echo "- <b><a href='../descargas/index.php?desc_id=$desc_id' title='$ndesc_name'>$desc_name</b></a></b><br>";
}
}
mysql_close ($mysql_mylink);
?>

Conclusión

Es evidente que lo que mostramos solo tiene valor para usuarios que dispongan de unos ciertos conocimientos de programación. El artículo que acabamos de publicar ahora lleva ya algún tiempo en las páginas de Lecciones. Lo hemos traído de nuevo a portada con el fin de mostrar un especial valor añadido a un sitio web.

Fabriciano González

Amante de la informática y de Internet entre otras muchas pasiones. Leo, descifro, interpreto, combino y escribo. Lo hago para seguir viviendo y disfrutando. Trato de dominar el tiempo para que no me esclavice.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.