InicioHazlo Tu MismoComo hacer un Sistema de Noticias con PHP y MySQL

Como hacer un Sistema de Noticias con PHP y MySQL

Hazlo Tu Mismo9/21/2012
En este tutorial desarrollaremos un sistema de noticias (tipo blog) que puede ser implementado en cualquier proyecto web en el que estéis trabajando. Este sistema incluye un archivo para mostrar las noticias, otro para añadir una nueva noticia, otro para modificarla y, por último, uno para eliminarlas Paso 1. Creamos la tabla en la base de datos. Copia, pega y ejecuta el siguiente código SQL: CREATE TABLE `noticias` ( `id` int(11) NOT NULL AUTO_INCREMENT , `titulo` varchar(100) NOT NULL , `fecha` datetime NOT NULL , `texto` text NOT NULL , PRIMARY KEY (`id`) ) Paso 2. Creamos el archivo de conexión con la base de datos. Paso 3. Ahora vamos a crear el archivo que incluya todas las noticias. Este consta de dos partes. Mediante una condicional (if) haremos que muestre una noticia según la id que recibe por medio de GET. Si no GET no recibe ningún valor, se muestran todas las noticias. Para entenderlo mejor, veamos el código. 0) // Si existe la noticia, la muestra { while($columna = mysql_fetch_assoc($query_noticias)) // Realizamos un bucle que muestre todas las noticias, utilizando while. { echo '
'.$columna['titulo'].' '.$columna['fecha'].'
'.$columna['texto'].'
Atrás
'; } } else { echo 'La noticia que solicitas, no existe.'; // Si no, muestra un error } } else { echo 'Debes seleccionar una noticia.'; // Si GET no recibe ningún valor, muestra un error } } else { $query_noticias = mysql_query("SELECT * FROM ".$db_table.""); // Ejecutamos la consulta $limite = 100; // Número de carácteres a mostrar antes de el "Leer más" while($columna = mysql_fetch_assoc($query_noticias)) // Realizamos un bucle que muestre todas las noticias, utilizando while. { echo '
'.$columna['titulo'].' '.$columna['fecha'].'
'.substr($columna['texto'], 0, $limite).' [...]
Leer más
'; } } ?> Paso 4. Ahora tenemos que crear los archivos que añadan, modifiquen y eliminen las noticias. Dejo los respectivos códigos: nueva_noticia.php: Con este archivo lo que hacemos es, mediante INSERT de SQL, insertar un nuevo registro en la base de datos que contendrá la noticia.
Título de la noticia:
Texto de la noticia:
modificar_noticia.php: Para modificar una noticia utilizaremos este archivo, que hace uso de UPDATE para actualizar un registro. '.$columna_MostrarTitulos['titulo'].' / '.$columna_MostrarTitulos['fecha'].'
'; // Mostramos un enlace para modificar cada noticia } if(isset($_POST['modificar'])) // Si el boton de "modificar" fúe presionado ejecuta el resto del código { $id = (int) mysql_real_escape_string($_POST['id']); $titulo = mysql_real_escape_string($_POST['titulo']); $texto = mysql_real_escape_string($_POST['texto']); $query_modificar = mysql_query("UPDATE ".$db_table." SET titulo = '".$titulo."', fecha = NOW(), texto = '".$texto."' WHERE id = '".$id."'"); // Ejecutamos la consulta para actualizar el registro en la base de datos if($query_modificar) { echo 'La noticia se modificó corectamente'; // Si la consulta se ejecutó bien, muestra este mensaje } else { echo 'La noticia no se modificó'; // Si la consulta no se ejecutó bien, muestra este mensaje } } if(isset($_GET['noticia'])) { $id_noticia = (int) mysql_real_escape_string($_GET['noticia']); // Recibimos el id de la noticia por medio de GET $query_NoticiaCompleta = mysql_query("SELECT id, titulo, texto FROM ".$db_table." WHERE id = '".$id_noticia."' LIMIT 1"); // Ejecutamos la consulta $columna_MostrarNoticia = mysql_fetch_assoc($query_NoticiaCompleta); echo '
Título de la noticia:
Texto de la noticia:
'; } ?> eliminar_noticia.php: Este archivo lo utilizaremos para eliminar una noticia de la base de datos, utilizando DELETE. Eliminar
'; // Mostramos el titulo y un enlace para eliminar la noticia } if(isset($_GET['noticia'])) { $id = (int) mysql_real_escape_string($_GET['noticia']); $query_eliminar = mysql_query("DELETE FROM ".$db_table." WHERE id = '".$id."'"); // Ejecutamos la consulta para eliminar el registro de la base de datos if($query_eliminar) { echo 'La noticia se eliminó corectamente'; // Si la consulta se ejecutó bien, muestra este mensaje } else { echo 'La noticia no se eliminó'; // Si la consulta no se ejecutó bien, muestra este mensaje } } ?> estilos.css Esta parte es opcional, es solo para añadirle un poco de CSS: body { background-color: #D7D8DA; font-family:Georgia, "Times New Roman", Times, serif; } a, a:visited { color: #5D5E60; text-decoration:none; } a:hover { text-decoration: underline; } #menu { background-color: #DCDCDC; border:1px solid #A7A7A7; width: 260px; margin: auto; padding: 10px; margin-bottom: 10px; border-radius: 4px; -moz-border-radius:4px; -webkit-border-radius:4px; } #menu a{ color: #434444; text-decoration:none; } #menu a:hover{ text-decoration: underline; } #contenido { background-color: #B7B9C0; width: 900px; margin: auto; padding: 20px; border-radius: 4px; -moz-border-radius:4px; -webkit-border-radius:4px; } aclaro, el estilo no esta bien trabajado esta echo muy básico, recomiendo que prueben con un servidor local " localhost " cualquier problema no duden en consultar esto es un sistema básico que se necesita en cualquier web
Datos archivados del Taringa! original
44puntos
0visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
1visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

b
bladwer🇦🇷
Usuario
Puntos0
Posts19
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.