Poco a poco...aprendiendo [alguien ayuda?]

Por supuesto que quiero jeje perdon por la tardanza estaba en otra cosa :P

Bueno lo que puedes hacer es agregar otra columna en la tabla que diga "seccion" donde puedes elegir en cual ponerla, despues en el formulario para añadir una nueva puedes poner un desplegable por ejemplo:

<select name="seccion">
<option value="novedades">Novedades</option>
<option value="actualidad">Actualidad</option>
<option value="deportes">Deportes</option>
</select>

y despues en el archivo que ingresa las noticias debes modificarlo para que te quede asi:

<?php
include "config.php"; // Incluimos el archivo de la conexion
$titulo=$_POST['titulo'];
$noticia=$_POST['noticia'];
$seccion=$_POST['seccion'];
$ahora=date("d/m/y h:m:s"); // Conseguimos la fecha actual
if ($titulo=='')
{
echo "Para insertar una noticia debe ingresar un titulo";
}
elseif ($noticia=='')
{
echo "Para insertar una noticia debes escribir una!!!";
}
else
{
// Ya vamos a hacer la tabla mysql "noticias", tranquilo tranquilo xD
if (!mysql_query("INSERT INTO `noticias`(titulo,noticia,fecha) values ('".$titulo."','".$noticia."','".$ahora."','".$seccion."')")) die (mysql_error());
echo "Se ha añadido la noticia ".$titulo.".";
}
?>

Y luego en el listado (aun sin hacer lo de Anterior y Siguiente lo modificamos asi:

<?php
include "config.php"; // Hacemos la conexion como siempre
$noticias = mysql_query("SELECT * FROM `noticias` WHERE seccion='".$_GET['seccion']."' ORDER BY fecha DESC"); /* Seleccionamos todas las noticias y las ordenamos en orden descendiente por fecha */
while ($noticia = mysql_fetch_array($noticias)) // Mientras haya noticias:
{
echo "<table border='0' class='noticia'>";
echo "<tr>";
echo "<td class='titulo'>".$noticia['titulo']."</td>"; // Insertamos el titulo
echo "</tr>";
echo "<tr>";
echo "<td class='contenido'>".$noticia['noticia']."</td>"; // Insertamos el contenido
echo "</table>
"
}
?>

Y alli para acomodar segun la seccion, tendras que visitar las direcciones
noticias.php?seccion=actualidad y automaticamente se acomoda de acuerdo a la seccion que pongas en la url, y tambien debes cambiar los includes por include "noticias.php?seccion=la que quieras"
Y alli para acomodar segun la seccion, tendras que visitar las direcciones
noticias.php?seccion=actualidad y automaticamente se acomoda de acuerdo a la seccion que pongas en la url, y tambien debes cambiar los includes por include "noticias.php?seccion=la que quieras"

Hola,

eso es lo que no me quedo claro, lo demas esta bein, pero...es decir, en la seccion de arte, por ejemplo ¿que pongo?.

Adios
yo modifique el codigo que toma todas las noticias desde la base de datos, para que tome todas las noticias pero de una determinada seccion, esa seccion la determino con el metodo $_GET, este metodo lo que hace es pasar variables por url, por ejemplo si yo pusiera $saludo=$_GET['saludo']; la variable $saludo va a tener lo que este en la url que por ejemplo si yo pusiera noticias.php?saludo=hola, la variable $saludo va a ser igual a "hola", si yo cambiara el ?saludo=hola por ?saludo=adios, la variable contendra la palabra adios, se entiende? Es decir, para elegir una noticia de una seccion debes decir de que seccion es por url, pero ojo que debe ser si o si uan seccion que exista, si pones ?seccion=inexistente, no tendra sentido y no aparecera ninguna noticia en el archivo noticias.php logro explicarme ?

Saludos. :lol:
le das un include con la variable de la seccion de historia, o sea:

<html>
<head>
<title>Noticias - Historia</title>
</head>
<body>
<?php
include "../noticias.php?seccion=historia";
?>
</body>
</html>

Para ver si dejas de decir adios xD: No se dice adios, se dice hasta luego, siempre volveras a ver a quien saludaste. :P
hola,

ok, todo bien entonces. Y ahora lo de poner solo dos noticias por index... y repartirlas en mas archivos!

Adios, digo, asta luego XD
jaja :P, despues lo de almacenamiento por paginas... eso es mas dificil, yo nada mas se hacer lo de siguiente » y « anterior pero lo de 1 2 y 3 eso ya tengo que aprenderlo XD, si quieresque te explique lo de siguiente y anterior solo dime ;)
jjjajajjajajaja cada vez mas saludos XD

Bueno, para lo del listado tienes que modificar un par de cosas, aqui te digo cuales (en el archivo noticias.php)

al principio, añadir:

if (!isset($_GET['pag']))
$pag=0;
else
$pag=$_GET['pag'];
$news=0;

luego al final del query que obtiene las noticias, o sea lo de mysql_query("...
añadirle al final del order by esto:

ORDER BY fecha LIMIT $pag,10

Despues, dentro del while o sea dentro de while ($noticia=mysql_fetch_array($noticias)) { agregar:

$news++;
Lo que marque en rojo es lo que debes modificar segun cuantas noticias por pagina mostrar, luego para lo de siguiente y anterior, agregar antes del final de "?>" esto:

if ($pag!=0)
{
$seccion=$_GET['seccion'];
$anterior=$pag-10;
echo "« Anterior";
}
/* Lo que marque en rojo aqui tambien debes modificarlo segun el numero que pusiste en el mysql_query */
if ($news >= 10)
{
$seccion=$_GET['seccion'];
$siguiente=$pag+10;
echo "Siguiente »
}

y eso es todo, creo que parece complicado pero mucho no es
Hola,

jeje, al final fue un verdadero adios!

pero bueno, vamos a lo nuestro, despues de todo esto, creo que ya lo tengo preparado todo, para incluirlo en mi web. Antes queria pedirte permiso para usar una cosa tuya, EL sistema de enviado de aportes con php que hiciste en lo de made in descargas... lo he puesto con cosas cambiadas y arregaldo...asi que si no quieres y te a costado algo hacer yo lo quito ¿va?...quiero que veas como me va la web, quizas asi entiendas todo: www.sdelbiombo.tk

por lo demas, queria pedirte otra cosilla, que puede ser algo dificil...resumirme todo lo que hay que poner, ya que me he liado un poco,jeje

Adios y mis mas grandees enhorabuenas
En total los archivos te quedarian asi:

config.php:
<?php
$dbhost="localhost"; // Aqui pones tu host mysql
$dbuser="root"; // Aqui lo mismo pero con el usuario
$dbpass=""; // Aqui lo mismo para la contraseña
$db="pruebas"; // Aqui ingresa el nombre de la base de datos

mysql_connect("$dbhost","$dbuser","$dbpass");
mysql_select_db("$db");
?>
nueva_noticia.html:
<form action="nueva_noticia.php" method="post">
<table border="0">
<tr>
<td>Titulo de Noticia: </td><td><input type="text" name="titulo" /></td>
</tr>
<tr>
<td colspan="2" align="center">Cuerpo de noticia: </td>
</tr>
<tr>
<td colspan="2" align="center"><textarea rows="8" cols="40" name="noticia"></textarea></td>
</tr>
<tr>
<td>Seccion: </td><td><select name="seccion">
<option value="novedades">Novedades</option>
<option value="actualidad">Actualidad</option>
<option value="deportes">Deportes</option>
</select></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Añadir noticia" /></td>
</tr>
</table>
</form>
nueva_noticia.php:
<?php
include "config.php"; // Incluimos el archivo de la conexion
$titulo=$_POST['titulo'];
$noticia=$_POST['noticia'];
$seccion=$_POST['seccion'];
$ahora=date("d/m/y h:m:s"); // Conseguimos la fecha actual
if ($titulo=='')
{
echo "Para insertar una noticia debe ingresar un titulo";
}
elseif ($noticia=='')
{
echo "Para insertar una noticia debes escribir una!!!";
}
else
{
// Ya vamos a hacer la tabla mysql "noticias", tranquilo tranquilo xD
if (!mysql_query("INSERT INTO `noticias`(titulo,noticia,fecha,seccion) values ('".$titulo."','".$noticia."','".$ahora."','".$seccion."')")) die (mysql_error());
echo "Se ha añadido la noticia ".$titulo.".";
}
?>
install.php:
<?php
include "config.php"; // Hacemos la conexion
if (!mysql_query("CREATE TABLE `noticias` (
titulo varchar(50),
noticia varchar(900),
fecha varchar(24),
seccion varchar(50)
)")) die (mysql_error()); // Posible mensaje de error
echo "Se ha creado la tabla para las noticias."; // Damos mensaje de exito
?>
noticias.php:
<?php
include "config.php"; // Hacemos la conexion como siempre
$noticias = mysql_query("SELECT * FROM `noticias` WHERE seccion='".$_GET['seccion']."' ORDER BY fecha DESC"); /* Seleccionamos todas las noticias y las ordenamos en orden descendiente por fecha */
while ($noticia = mysql_fetch_array($noticias)) // Mientras haya noticias:
{
echo "<table border='0' class='noticia'>";
echo "<tr>";
echo "<td class='titulo'>".$noticia['titulo']."</td>"; // Insertamos el titulo
echo "</tr>";
echo "<tr>";
echo "<td class='contenido'>".$noticia['noticia']."</td>"; // Insertamos el contenido
echo "</table>
"
}
if ($pag!=0)
{
$seccion=$_GET['seccion'];
$anterior=$pag-10;
echo "« Anterior";
}
/* Lo que marque en rojo aqui tambien debes modificarlo segun el numero que pusiste en el mysql_query */
if ($news >= 10)
{
$seccion=$_GET['seccion'];
$siguiente=$pag+10;
echo "Siguiente »
}
?>

No me molesta para nada lo que me dijiste primero ;)
saludos
Hola,

bueno, KenLogo, queria pedirte, ya que eres un crack, una cosa con php, si es posible claro!
Es decir, que quiero tener una contraseña para que la gente mande temas, es poner una contraseña para que lagente pueda o no, no se si me entiendes. Vamos proteger la zona de envios para que la gente no empieze a enviar cosas a la ligera. Tambien si es posible poner una solicitud en la misma pagina.

Adios y muchas gracias, no sabes lo tanto que te debo.
ya lo he explicado en el tutorial php primero crearemos un login donde puedan ingresar la contraseña:

login.php
<form action="logeo.php" method="post">
Introduzca la contraseña:

<input type="password" name="pass">

<input type="submit" value="entrar">
</form> 

logeo.php
<?
$pass=$_POST['pass'];
if ($pass=="hola"){
setcookie("pass", "".$pass"", time()+(3600 * 24));
echo 'La contraseña es correcta puede pasar';
}else{
echo 'la contraseña es incorrecta no puede pasar';
}
?> 

ahora en la pagina que deseas bloquear en este caso la de el upload pones esto hasta arriba del body:
<?
$saludo = $_COOKIE['pass'];
if (!isset($_COOKIE['pass'])) die("esta zona es para usuarios con contraseña");
?>
y listo
Hola linkgl,

no podrias ser meter una contraseña para que no cualquier persona pueda meterse, es decir, que al venir a subir una noticiasm se pida contraseña, asi evito defraudadores!!

Adios
cambia estas lineas

<?
$pass=$_POST['pass'];
if ($pass=="hola"){
setcookie("pass", "".$pass"", time()+(3600 * 24));
echo 'La contraseña es correcta puede pasar';
}else{
echo 'la contraseña es incorrecta no puede pasar';
}
?>

donde dice if($pass=="aqui es la contraseña")

puedes escribir lo que sea ejemplo:

<?
$pass=$_POST['pass'];
if ($pass=="lo que sea"){
setcookie("pass", "".$pass"", time()+(3600 * 24));
echo 'La contraseña es correcta puede pasar';
}else{
echo 'la contraseña es incorrecta no puede pasar';
}
?>
Hola,

no lo habeis entendido :( lo que quiero es, que al venir a subir las noticias como nos dice nuestro amigo kenLogo, en los apartados a rellenar que aparezca una parte que indique "contraseña previamente obtenida del moderador" osea, yo! y luego en letra pequeña soloicitar contraseña, asi se ponen en contacto conmigoo y puedo darle la contraseña si quiero, y luego cambiarla cuando quiero y demas...

Adios
Disculpen mis momentos de ausencia pero estuve un buen tiempo sin energia electrica y no podia encender la pc pero ya volvi xD
Para proteger lo de las noticias con contraseña solo agrega este codigo en el formulario:

<?php
if ($_POST['user']!="nosabernada" || $_POST['pass']!="Tu contraseña")
{
echo "Error! Nombre de usuario o contraseña incorrecto.";
}
else
{
?>

Todo eso agregalo antes del <html>, despues, abajo de todo despues del </html> agrega:

<?php
}
?>

y finalmente, crea un nuevo archivo este que sea html con el siguiente codigo:

<form action="formulario_añadir_noticia.php" method="post">
Para añadir una noticia debe logearse: 

Usuario: <input type="text" name="user" /> Contraseña: <input type="password" name="pass" /> <input type="submit" value="Continuar »" />
</form>

Si el archivo del formulario no tiene extension .php debes darsela con el editor que uses o el codigo no funcionara ;)
Hola,

gracias KenLogo, te puedo pedir un favor? me podrias revisar los codigos de mi pagina? esque no me atrevo a subirla!

Adiosy muchas gracias
Hola,


ahora resulta que me da este fallo:


Parse error: syntax error, unexpected '}', expecting ',' or ';' in C:\wamp\www\sistema de noticias\noticias.php on line 17


espero que me ayudeis!

gracias de antemano, adios, nsn.