Estoy intentando renovarlo dándole un poco de vida al mismo, nuevo diseño, y un formato de blog de noticias en el inicio que sea dinámico. La idea de esto surge en que el sitio nace de una comunidad que comenzó como un foro de foroactivo y se fue expandiendo. El foro tiene varios usuarios, entre ellos 3 administradores (uno soy yo). La idea era que, los otros dos administradores también pudieran actualizar la página web agregándole noticias y no tengan que depender todo el tiempo de mí y mis conocimientos de HTML para estar actualizándola.
Hasta ahora seguí una guía paso por paso para poder crear una base de datos, con cuatro tablas (usuarios, categorías, noticias, comentarios). Logré hacer un formulario de registro y un panel de control para admins con el que llenando formularios las noticias se agreguen a la base de datos y se muestren en el index.php y que clickeando en el título se acceda a la nota completa que también se muestra según el ID de la misma.
El problema es que yo sigo agregando noticias, pero llega un punto en el que necesito hacer un paginado de las mismas, no quiero tener una web donde el usuario tenga que scrollear hasta el infinito para encontrar una noticia vieja. Es muy tedioso. Intenté seguir varias guías para poder armar el dichoso paginado pero no puedo hacer que funcione. Siempre termino con algún error de variable no definida en algún lado. Por eso les pido su ayuda, si le podrían dar una mano a este novato con el armado de un paginado para las noticias. Les dejo aquí abajo los campos de la tabla de noticias y del index.php (si necesitan algún otro, me avisan y lo agrego).
De antemano, muchísimas gracias por molestarse.
CAMPOS DE TABLA NOTICIAS
idNoticia
titulo
copete
cuerpo
idUsuario
idCategoria
fPublicacion
fCreacion
fModificacion
INDEX.PHP
Código:
<?php // iniciamos session session_start (); // archivos necesarios require_once 'admin/config.php'; require_once 'admin/conexion.php'; require_once 'admin/esUsuario.php'; // obtengo puntero de conexion con la db $dbConn = conectar(); // vemos si el usuario quiere desloguar if ( !empty($_GET['salir']) ) { // borramos y destruimos todo tipo de sesion del usuario session_unset(); session_destroy(); } // verificamos que no este conectado el usuario if ( !empty( $_SESSION['usuario'] ) && !empty($_SESSION['password']) ) { $arrUsuario = esUsuario( $_SESSION['usuario'], $_SESSION['password'], $dbConn ); } // listado de noticias // traemos listado de noticias $arrNoticias = array(); $query = "SELECT idNoticia, titulo, copete FROM `noticias` WHERE fPublicacion < '".date('Y-m-d H:i:s')."' ORDER BY fPublicacion DESC"; $resultado = mysql_query ($query, $dbConn); while ( $row = mysql_fetch_assoc ($resultado)) { array_push( $arrNoticias,$row ); } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Blog Personal</title> </head> <body> <h1>Blog Personal</h1> <?php if ( !empty($_GET['registro']) ) { ?> <div>El registro ha sido exitoso.</div> <?php } ?> <?php if ( empty($arrUsuario['usuario']) ) { ?> <ul> <li><a href="ingresar.php">Iniciar sesión</a></li> <li><a href="registrar.php">Regístrate gratis</a></li> </ul> <?php } else { ?> <p>Bienvenido <?php echo $arrUsuario['usuario'] ?> - <a href="index.php?salir=true">Salir</a></p> <?php if ( $arrUsuario['tipo'] == 'admin' ) { ?> <ul> <li><a href="admin/index.php">Panel de administración</a></li> </ul> <?php } ?> <?php } ?> <h2>Noticias</h2> <?php foreach ( $arrNoticias as $noticias ) { ?> <div> <h3><a href="vernoticia.php?idNoticia=<?php echo $noticias['idNoticia']; ?>"><?php echo $noticias['titulo']; ?></a></h3> <p><?php echo $noticias['copete']; ?></p> </div> <?php } ?> </body> </html>