Este tutorial consta de 3 partes: La primera genera un sistema de noticias a través de un panel de administración y las muestra en orden según su fecha, la segunda parte muestra un sistema de edición y borrado de estas noticias. La tercera y última parte veremos como generar un sistema de comentarios para nuestras noticias.

Primero creamos la base de datos para las noticias:

     create table noticias (
id_noticia int(4) auto_increment not null,
autor varchar(255),
titulo varchar(255),
categoria varchar(255),
fecha datetime not null,
noticia blob, key(id_noticia)
)

Un poco de explicación: id_noticia se incrementará cada vez que insertemos un registro desde el panel de administración (que crearemos luego) lo que nos facilitará la lectura de la noticia y asignarle sus respectivos comentarios. Lo demás está a la vista.

Ahora veremos el código a incluir en la página que llamaremos index.php (Que original ¿no?)

<html>
<head>
<title>Sistema de noticias</title>
<?
//conectamos a la base
$connect=mysql_connect("servidor","nombre_de_la_base","pass")';
//Seleccionamos la base
mysql_select_db("nombre_de_la_base",$connect); //hacemos las consultas
$result=mysql_query("select * from noticias order by fecha Desc", $connect);
$totalregistros=mysql_num_rows($result);
?>
</head>
<body>
//Recogemos las consultas en un array y las mostramos
<?
while($row=mysql_fetch_array($result))
{
echo '<h2>'.$row[titulo].'</h2><br><p>'.$row[articulo].'</p><br><tudiv>'.$row[autor].'|'.$row[fecha].'| '.$row[categoria].' |
'<a href="ver.php?id='.$row[id_noticia].'">comentarios()</a> |
<a href="editar.php?id='.$row[id_noticia].'">editar</a>';</tu div> //Hemos puesto los enlaces para "Comentarios" y "Editar" cosa que ocuparemos
más adelante como se puede ver el id nos servirá para casi todo.
}
mysql_free_result($result)
?>
</body>
</html>

Nota: Se puede usar cualquier función de conversión de fechas para mostrar fecha en español y separarla de la hora. Acá no se hará por no ser el fin de este tutorial

Es hora de crear el panel de administración. En realidad es en donde generamos la noticia que luego mostrará el index. Lo llamaremos administrar.php (otro destello de creatividad). Obviaremos el código de la estructura html y nos enfocaremos en el formulario que enviará los datos

 <form action="procesanoticia.php" method="post">
Título noticia:<br>
<input type="text" name="titulo"><br>
Autor:<br>
<input type="text" name="autor"><br>
Categoría:<br>
<input type="text" name="categoria"><br>
Escriba el articulo<br>
<textarea name="articulo" cols="50" rows="10"></textarea><br>
<input type="submit" value="Publicar"><br>
</form>

Como vemos, este formulario envía por método POST todas las variables necesarias para el llenado de nuestra base. Dichas variables las recibe un script llamado procesanoticia.php el cual veremos a continuación:

 <?
//recibimos las variables enviadas por el formulario
$titulo=$_POST[titulo];
$autor=$_POST[autor];
$categoria=$_POST[categoria];
$articulo=$_POST[articulo];
//conectamos a la base
$connect=mysql_connect("servidor","nombre de la base","pass")';
//Seleccionamos la base
mysql_select_db("nombre de la base",$connect);
//insertamos los registros almacenados en las variables
mysq_query("insert into noticias(titulo,autor,categoria,articulo,fecha)
values('$titulo','$autor','$categoria','$articulo',NOW()",$connect)
header("location: index.php");
?>

Se llena la base con todos los parámetros recibidos del formulario. Cabe destacar que para la fecha se ocupo la funcion NOW() esta función rellena la base con la fecha y hora del servidor. La primera parte y el trabajo pesado ya está hecho. Falta que estas noticias puedan ser editatas o borradas, tema que se verá en la Segunda parte