elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Problema con foro
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con foro  (Leído 2,204 veces)
InnerSelf

Desconectado Desconectado

Mensajes: 3



Ver Perfil
Problema con foro
« en: 3 Noviembre 2010, 22:03 pm »

Buenas! lo primero de todo saludar a todos ya que soy nuevo por aqui. Dicho esto paso a una duda que tengo con vuestro permiso jeje. Sé html y css, y me he animado a crear un foro con algo de php que estoy empezando a estudiar y algun manual, la cosa es que en la página principal del foro me muestran los mensajes (conectados a su correspondiente base de datos en la que aparecen) pero me salen en blanco. Es decir me sale como si estuvieran pero no puedo leer nada de contenido. ¿Esto a qué puede ser debido? Gracias de antemano y un saludo!


En línea

Stay Creative
bizco


Desconectado Desconectado

Mensajes: 698


Ver Perfil
Re: Problema con foro
« Respuesta #1 en: 3 Noviembre 2010, 23:05 pm »

sin ver la/s tabla y el codigo es dificil decirte, de primeras diria solo estas escribiendo el titulo del mensaje pero no el contenido.


En línea

InnerSelf

Desconectado Desconectado

Mensajes: 3



Ver Perfil
Re: Problema con foro
« Respuesta #2 en: 3 Noviembre 2010, 23:12 pm »

Esto es el contenido de foro.php:
Código:
<?php
require('configuracion.php');
require('funciones.php');
$id = $_GET["id"];
if(empty($id)) Header("Location: index.php");
 
$sql = "SELECT id, autor, titulo, mensaje, ";
$sql.= "DATE_FORMAT(fecha, '%d/%m/%Y %H:%i:%s') as enviado FROM foro ";
$sql.= "WHERE id='$id' OR identificador='$id' ORDER BY fecha ASC";
$rs = mysql_query($sql, $con);
include('header.html');
if(mysql_num_rows($rs)>0)
{
include('titulos_post.html');
$template = implode("", file('post.html'));
while($row = mysql_fetch_assoc($rs))
{
$color=($color="#423452");
$row["color"] = $color;
//manipulamos el mensaje
$row["mensaje"] = nl2br($row["mensaje"]);
$row["mensaje"] = parsearTags($row["mensaje"]);
mostrarTemplate($template, $row);
}
}
include('formulario.html');
include('footer.html');

?>


y esto el de index.php
Código:
<?php
require('configuracion.php');
require('funciones.php');
include('header.html');
/* Pedimos todos los temas iniciales (identificador==0)
* y los ordenamos por ult_respuesta */
$sql = "SELECT id, autor, titulo, fecha, respuestas, ult_respuesta ";
$sql.= "FROM foro WHERE identificador=0 ORDER BY ult_respuesta DESC";
$rs = mysql_query($sql, $con);
if(mysql_num_rows($rs)>0)
{
// Leemos el contenido de la plantilla de temas
$template = implode("", file("temas.html"));
include('titulos.html');
while($row = mysql_fetch_assoc($rs))
{
$color=($color="#423452");
$row["color"] = $color;
mostrarTemplate($template, $row);
}
}
include('formulario.html');
include('footer.html');
?>

Y lo que hago es rellenar los tres campos en el formulario, luego envío los datos, aparecen correctos en la base de datos pero en la página en si salen en blanco

En línea

Stay Creative
bizco


Desconectado Desconectado

Mensajes: 698


Ver Perfil
Re: Problema con foro
« Respuesta #3 en: 4 Noviembre 2010, 01:17 am »

realmente se ve poco ya que llamas a funciones que no estan ahi. parseartags ¿que devuelve? ves sacando por pantalla a modo debug los campos a ver donde te falla.
En línea

InnerSelf

Desconectado Desconectado

Mensajes: 3



Ver Perfil
Re: Problema con foro
« Respuesta #4 en: 4 Noviembre 2010, 13:47 pm »

Parseartags lo tengo tal que asi dentro de funciones.php:
Código
  1. <?php
  2. function mostrarTemplate($tema, $variables)
  3. {
  4. //var_dump($variables);
  5. extract($variables);
  6. eval("?>".$tema."<?");
  7. }
  8.  
  9. function parsearTags($mensaje)
  10. {
  11. $mensaje = str_replace("[citar]", "<blockquote><hr width='100%' size='2'>", $mensaje);
  12. $mensaje = str_replace("[/citar]", "<hr width='100%' size='2'></blockquote>", $mensaje);
  13. return $mensaje;
  14. }
  15. ?>

Lo demás..pues configuracion.php contiene los parámetros de enlace a base de datos y en los html dudo mucho que esté el problema. Te dejo también el código que tengo en agregar.php que se encarga de postear los mensajes.
Código
  1. <?php
  2. require('funciones.php');
  3. $id = $_GET["id"];
  4. $citar = $_GET["citar"];
  5. $row = array("id" => $id);
  6. if($citar==1)
  7. {
  8. require('configuracion.php');
  9. $sql = "SELECT titulo, mensaje, identificador AS id FROM foro WHERE id='$id'";
  10. $rs = mysql_query($sql, $con);
  11. if(mysql_num_rows($rs)==1) $row = mysql_fetch_assoc($rs);
  12.  
  13. if($row["id"]==0) $row["id"]=$id;
  14. }
  15. $template = implode("", file('formulario.html'));
  16. include('header.html');
  17. mostrarTemplate($template, $row);
  18. include('footer.html');
  19. ?>

Un saludo y gracias :)


En línea

Stay Creative
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con Foro SMF
Desarrollo Web
Zakel 1 1,720 Último mensaje 1 Noviembre 2012, 22:24 pm
por wirelesswifi
Problema con foro!!!
Dudas Generales
cacote10 4 2,580 Último mensaje 13 Marzo 2013, 16:28 pm
por Saberuneko
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines