Estoy haciendo un foro con codigo propio en el cual cuando un usuario esta logueado y esta viendo un thread puede responder la session funciona si no esta logueado muestra que se logee sino muestra el textarea pero cuando hago click en el boton me aparece que inicie sesion cuando ya estoy logueado.
El codigo donde muestra el form es este:
Código PHP:
if(isset($_SESSION['userid']))
{
echo '<h2>Responder:</h2><br />
<div id="log">
<div id="log_res">
<!-- SPANNER -->
</div>
</div>
<form method="post" action="reply.php?id=' . $row['topic_id'] . '" name="responder" id="responder" onsubmit="return validarRespuesta();">
<div id="respuesta_error"></div>
<textarea cols="30" id="reply_content" rows="10" name="reply_content" class="full"></textarea><br />
<input type="submit" value="Enviar respuesta" />
</form>';
}
else
{
echo 'Tienes que<a href="../login.php">iniciar sesión</a> para responder.';
}
Código PHP:
<?php
include 'include/php/conexion.php';
//Conexion con la Base de Datos
$link=@dbConnect();
if (!$link) {
echo "Error conectando a la Base de Datos.";
}
if ($link =="202") {
echo "Error seleccionando la Base de Datos.";
}
if($_SERVER['REQUEST_METHOD'] != 'POST')
{
echo 'No puedes ver este archivo.';
}
else
{
if(isset($_SESSION['userid']))
{
$sql = "INSERT INTO
replies(repy_content,
reply_date,
reply_topic,
reply_by)
VALUES ('" . html_entity_decode($_POST['reply_content']) . "',
NOW(),
" . mysql_real_escape_string($_GET['id']) . ",
" . $_SESSION['userid'] . ")";
$result = mysql_query($sql);
if(!$result)
{
echo 'No se pudo guardar tu respuesta,por favor inténtelo de nuevo.';
}
else
{
echo '<script type="text/javascript">history.go(-1);</script>';
}
}
else
{
echo 'Tienes que iniciar sesion.';
}
}
?>
Muchas gracias.
Saludos !
![sonriente](http://static.forosdelweb.com/fdwtheme/images/smilies/smile.png)