No me funciona un código que hice para mandar noticias º.º

Intenté hacer un sistema de noticias en mi web, pero accediendo desde un panel que tiene contraseña para que el administrador pueda subir las noticias sin tener que preocuparse por ningún código, pero no funciona! No las inserta, acá el código para insertar:

<html>
<head>
<title> Sistema de noticias </title>
</head>
<body>
<div align=center>

<strong>Ingresar al PANEL DE CONTROL:</strong>

<form action="cpanel.php" method="post">
<input type="password" name="contrasena"><br />
<input type="submit" name="enviarcontrasena" value="Entrar"><br />
</form>

-----------------------------------------<br />

<?php
$pass=$_POST["contrasena"];
$passtrue=1234;

if(empty($pass))
{
echo "No has ingresado ninguna contraseña";
}
elseif ($pass==$passtrue)
{
echo '
<strong>Ingresar la NOTICIA a publicar:</strong><br />
<form action="../noticias.php" method="post">
Título:<br />
<input type="text" name="tnoticia" size="50"><br />
Noticia:<br />
<textarea cols="50" rows="7" name="noticia"></textarea><br />
<input type="submit" name="enviarnoticia" value="Enviar noticia"><br />
</form>
';

$tnoticia=$_POST["tnoticia"];
$noticia=$_POST["noticia"];

if(empty($tnoticia) | empty($noticia))
{
echo "<br />No has ingresado ningún título o noticia";
}
else
{
$conexion=mysql_connect("mihost","miuser","mipass") or die ("Problemas en la conexión");
mysql_select_db("mibase", $conexion) or die ("Problemas en la selección de la base de datos");
mysql_query("INSERT INTO noticias(tnoticia,noticia) VALUES ('".$_POST["tnoticia"]."', '".$_POST["noticia"]."')") or die ("Problemas en al insertar en la base de datos".mysql_error());
mysql_close($conexion);
}
}
elseif ($pass!=$passtrue)
{
echo "La contraseña ingresada es incorrecta";
}
?>

</div>
</body>
</html>

Espero que me puedan ayudar xd
Saludos!
Ningún error de php, solo que no lo inserta, supongo que es porque el formulario está dentro del php, pero no entiendo! D:
En mysql no aparece nada? .... talvez no esten los archivos ahi puestos, necesito ver noticias.php y cpanel.php y que nombre de archivo estas lo mejor seria poner un form maximo 2 en un mismo archivo xD
xd!
El archivo que te dí es cpanel.php
Este es noticias.php
<div align=center>
<?php
$conexion=mysql_connect("mysql.99h.com.ar","u359184024_aldcp","marianmb23698") or die ("Problemas en la conexión con la base de datos");
mysql_select_db("u359184024_aldcp", $conexion) or die ("Problemas en el select de la base de datos");
$noticia=mysql_query("select tnoticia,noticia from noticias") or die ("Problemas en el select".mysql_error());
$noticia2=mysql_num_rows($noticia);
if ($noticia2 <= 0)
{
echo "No hay ninguna noticia por aquí...";
}
else
{
while($not=mysql_fetch_array($noticia))
{
echo "Titulo:".$not["tnoticia"]."<br />";
echo $not["noticia"]."<br />";
echo "----------------------------------------<br />";
}
}
mysql_close($conexion);
?>
</div>

Ahora que lo veo no tiene las etiquetas html xd!

Y el mysql se llama noticias y tiene 3 campos: id, tnoticias, noticias. (id int autoincrement) (tnoticias varchar 30) (noticias text)
Pues esto quitalo de cpanel :

$tnoticia=$_POST["tnoticia"];
$noticia=$_POST["noticia"];

if(empty($tnoticia) | empty($noticia))
{
echo "<br />No has ingresado ningún título o noticia";
}
else
{
$conexion=mysql_connect("mihost","miuser","mipass") or die ("Problemas en la conexión");
mysql_select_db("mibase", $conexion) or die ("Problemas en la selección de la base de datos");
mysql_query("INSERT INTO noticias(tnoticia,noticia) VALUES ('".$_POST["tnoticia"]."', '".$_POST["noticia"]."')") or die ("Problemas en al insertar en la base de datos".mysql_error());
mysql_close($conexion);
}

Y ponlo en noticias.php

xD
OMG, y eso funcionaría? Aún si el formulario está en la otra página?

Saludos!

---Update---

Sos un genio D:

JAJA, funcionó, gracias!

Saludos!
Una cosa... cuando entro directamente a noticias.php me aparece que no ingresé ningún título o noticia.. como es lógico, pero no quiero que me aparezca xd!

El código quedó así:
cpanel.php:
<html>
<head>
<title> Sistema de noticias </title>
</head>
<body>
<div align=center>

<strong>Ingresar al PANEL DE CONTROL:</strong>

<form action="cpanel.php" method="post">
<input type="password" name="contrasena"><br />
<input type="submit" name="enviarcontrasena" value="Entrar"><br />
</form>

-----------------------------------------<br />

<?php
$pass=$_POST["contrasena"];
$passtrue=1234;

if(empty($pass))
{
echo "No has ingresado ninguna contraseña";
}
elseif ($pass==$passtrue)
{
echo '
<strong>Ingresar la NOTICIA a publicar:</strong><br />
<form action="../noticias.php" method="post">
Título:<br />
<input type="text" name="tnoticia" size="50"><br />
Noticia:<br />
<textarea cols="50" rows="7" name="noticia"></textarea><br />
<input type="submit" name="enviarnoticia" value="Enviar noticia"><br />
</form>
';
}
elseif ($pass!=$passtrue)
{
echo "La contraseña ingresada es incorrecta";
}
?>

</div>
</body>
</html>

noticias.php
<html>
<head>
<title>Últimas noticias</title>
</head>
<body>
<style>
.advice {font-size:25px; font-weight:bold;}
</style>
<div align=center>
<?php

$conexion=mysql_connect("mihost","miuser","mipass") or die ("Problemas en la conexión");
mysql_select_db("mibase", $conexion) or die ("Problemas en la selección de la base de datos");


$tnoticia=$_POST["tnoticia"];
$noticia=$_POST["noticia"];

if(empty($tnoticia) | empty($noticia))
{
echo "<br />No has ingresado ningún título o noticia";
}
else
{
mysql_query("INSERT INTO noticias(tnoticia,noticia) VALUES ('".$_POST["tnoticia"]."', '".$_POST["noticia"]."')") or die ("Problemas en al insertar en la base de datos".mysql_error());
}


$noticia=mysql_query("select tnoticia,noticia from noticias") or die ("Problemas en el select".mysql_error());
$noticia2=mysql_num_rows($noticia);
if ($noticia2 <= 0)
{
echo "<br />No hay ninguna noticia por aquí...";
}
else
{
echo "<span class=\"advice\"><br />Últimas noticias...<br /> <br /></span>";
while($not=mysql_fetch_array($noticia))
{
echo "<strong>".$not["tnoticia"]."</strong><br />";
echo $not["noticia"]."<br />";
echo "----------------------------------------<br />";
}
}
mysql_close($conexion);
?>
</div>
</body>
</html>

Es decir, si entré al cpanel y no mandé nada, quiero que aparezca, pero si entro directamente a noticias no quiero que aparezca, porque entro solo a ver XD!

Saludos!
Muy simple , es por eso que te decia que no conviene cargar 3 formularios en un mismo archivo. Para que no pase nada crea un agregar.php y ahi pon el codigo de agregar noticias y en cpanel cambia el formulario de noticias.php a agregar.php y listo

Saludos!
Pero de esa forma, si entrara directamente a agregar.php no se vería todo el contenido? Yo quiero que solo lo vea el que ingresó correctamente la contraseña en el formulario del cpanel.php

Cómo lo haría vos?

JAJA, saludos!
JAJA, me explicas eso, no sé nada sobre cookies JAJA, las galletas las horenea una dulce abuelita? xd

Saludos!
Sorry por el doble post.. pero me podrías explicar como usar las cookies?
Para crear una cookie es con :

setcookie('nombre de la cookie', 'contenido de la cookie', tiempo de duracion de la cookie);
y para entrar en ella
$_COOKIE["NombreCookie"]
Recuerda que no debes usar cabeceras headers o si no no funcionara header();

quedando asi un ejemplo de cookie

login.php :

<?php

$usuario = $_POST["usuario"];

if(setcookie("usuario",$usuario, time() + 3600))
{
echo " Iniciaste sesion correctamente";
}
else
{
echo "error";
}
?>

?>


y para obtener el valor de la cookie :

bienvenido.php :

<?php
$cookie = $_COOKIE["usuario"];
if(!isset($cookie))
{
echo "Hola invitado <a href=\"login.html\">Iniciar sesion</a>
}
else {
echo "hola! ".$cookie;
}
?>

Saludos!
"if(setcookie("usuario",$usuario, time() + 3600))"

No entiendo el significado de eso JAJA!

Por qué un condicional?

Saludos!

Otra cosa.. ahí no estás poniendo las cookies al principio.. o sí?
La funcion del if es devolverte true o false al parametro que le pases dentro en este caso es setcookie le indica que si devuelve true (no dio errores porlo tanto devuelve true y el if interpreta y muestra el mensaje del echo dentro) si devuelve false es que ocurrio un error al crear cookie asi de simple

2.- A que te refieres?...


Saludos!
Me refiero al principio, dicen que hay que ponerlas antes de la etiqueta <html> amí eso me molesta :(

Salu2!
Muchos utilizan ob_start(); y ob_endflush(); pero funcionan correctamente donde quieras ponerlo. Hablando de seguridad hmmmm :confused:. Aunque para ser de seguridad habria que encriptar las cookies xD.
:O! Cada vez entiendo menos.. cuando tengas algún tiempo podrías ver el código y decirme donde y como lo colocarías? xd!