Foros del Web » Programando para Internet » PHP »

Sistema de comentarios en PHP

Estas en el tema de Sistema de comentarios en PHP en el foro de PHP en Foros del Web. Hola lo que yo quiero hacer es un sistema de comentarios en PHP. (No quiero un blog). Las paginas las hago en html, y después ...
  #1 (permalink)  
Antiguo 12/01/2007, 10:00
 
Fecha de Ingreso: junio-2006
Mensajes: 66
Antigüedad: 17 años, 10 meses
Puntos: 2
Busqueda Sistema de comentarios en PHP

Hola lo que yo quiero hacer es un sistema de comentarios en PHP. (No quiero un blog).
Las paginas las hago en html, y después les cambio las extensiones a PHP para poner el
Código para que muestre los comentarios.
La Web va a tener 6 secciones principales, y alrededor de 10 subsecciones por sección.
Por lo que serian unas 60 paginas en html. A esas paginas les incluyo un formulario para enviar el msj que lo grabo en una db de mysql. El problema es como hago para que la pág muestre los comentarios adecuados.
Es un poco confusa mi pregunta pero no se como explicar bien lo que quiero.
Saludo!
  #2 (permalink)  
Antiguo 13/01/2007, 06:17
Avatar de blakeyed  
Fecha de Ingreso: marzo-2004
Ubicación: Ahora mismo, Málaga
Mensajes: 78
Antigüedad: 20 años
Puntos: 0
Re: Sistema de comentarios en PHP

Si en total no piensas tener muchos comentarios, puedes crear una tabla de una BD para almacenarlos allí todos, y crear un índice en el identificador de comentario y en la referencia:

TABLA:
`id` int (también definir auto_increment)
`ref` int
`quien` varchar(64)
`coment` text

Cada vez que cargues una página, ésta definirá la referencia de los comentarios a extraer y cuando quieras extraer los comentarios haces:
mysql_request("SELECT * FROM `comentarios` WHERE `ref`=1"); (Por ejemplo).

Así si consultas desde la página de la sección 1 sólo extraerás los comentarios pertenecientes a esa sección. Si crees que tendrás muchos comentarios, como unos 20000 o así por sección, o complicas demasiado la tabla (incluyendo nombre del navegador, ip, login de usuario y cosas así, o los comentarios son muy largos) puedes crear varias tablas y las consultas serían:

mysql_query("SELECT * FROM `comentarios$ref`");

Habiendo creado una tabla para cada sección, por ejemplo.

Por cierto, seguro que las páginas tienen cosas en común, estructura, cabeceras, y cosas así... no te viene mejor crearlas directamente en PHP para no tener que repetir todas esas partes comunes en cada web ¿? Además, si por ejemplo cambias alguna de esas partes, tendrás que cambiarla en todas las páginas, y es un tostón.

Saludos
__________________
Saludos

Gaspar Fernández
Poesía Binaria
  #3 (permalink)  
Antiguo 13/01/2007, 06:40
 
Fecha de Ingreso: junio-2006
Mensajes: 66
Antigüedad: 17 años, 10 meses
Puntos: 2
Re: Sistema de comentarios en PHP

Mira lo que tienen las paginas en común son el menú y los submenú, que los llamo a la pág desde un archivo, así al modificar el archivo se modifican los menú en todas las paginas.
Bueno supongamos que yo tengo una tabla y dentro de esta tabla (tabla comentarios) tengo 6columnas ( id, referencia, nombre, e-mail, comentario, fecha)
A la tabla referencia la usaría para que almacenara cual es la pagina desde la que fue mandado el mensaje. Ahora lo que no se es como seria el formulario para que guardara esa referencia. No se que podría ser esa referencia, si un numero o que. Suponiendo que fuese un numero como hago para que cada pág emita un numero diferente.
Después si entiendo que una ves que tenga 10 comentarios en la subsección uno de la sección uno lo que hago es ordenar los comentarios por fecha, ya que dentro de la columna referencia si hay 10 comentarios va a haber 10 datos repetidos.
Lo que no entiendo es que es lo que guardo en referencia. Se que tendría que ser algo que mando en un input del tipo hidden, pero que seria lo que mando en ese input. Tendría que ser algo que todas las paginas tuvieran diferente.
Gracias por la ayuda. Saludos!
  #4 (permalink)  
Antiguo 13/01/2007, 06:47
Avatar de blakeyed  
Fecha de Ingreso: marzo-2004
Ubicación: Ahora mismo, Málaga
Mensajes: 78
Antigüedad: 20 años
Puntos: 0
Re: Sistema de comentarios en PHP

No te compliques... en tus archivos php, cuando entres en la sección define una variable $ref_seccion=1; (por ejemplo) y cuando hagas la petición coge esa variable. Nada de input type="hidden" ya que un usuario con ganas de fastidiar te podría cambiar ese valor antes de mandar el formulario. La referencia debe ser un dato interno transparente al usuario.

Es normal que los datos estén repetidos si tienes 10 comentarios en esa sección, hay que establecer una norma para saber que esos 10 comentarios pertenecen a la misma sección (si quieres que ocupe menos) utiliza int(4) por ejemplo, que ocupa menos memoria, y por tanto desperdicias menos bytes en la BD.

Saludos
__________________
Saludos

Gaspar Fernández
Poesía Binaria
  #5 (permalink)  
Antiguo 13/01/2007, 07:28
 
Fecha de Ingreso: junio-2006
Mensajes: 66
Antigüedad: 17 años, 10 meses
Puntos: 2
Re: Sistema de comentarios en PHP

Pero no entiendo a que te referís con definir una variable $ref_seccion=1, porque cuando un user manda un mensaje que es lo que gurda la db en la columna referencia.
  #6 (permalink)  
Antiguo 13/01/2007, 08:05
Avatar de blakeyed  
Fecha de Ingreso: marzo-2004
Ubicación: Ahora mismo, Málaga
Mensajes: 78
Antigüedad: 20 años
Puntos: 0
Re: Sistema de comentarios en PHP

Al iniciar el archivo php

Código PHP:
<?
$ref_seccion
=1;   // Un número cualquiera, que se mantenga en esta sección de  la web

// Todo el codigo de la página

// Aquí pones los comentarios

mysql_request("SELECT * FROM `comentarios` WHERE `ref`=".$ref_seccion);
Imagina que en lugar de mysql_request creas una función que pone los comentarios directamente, pásale el parámetro $ref_seccion y ya esta
__________________
Saludos

Gaspar Fernández
Poesía Binaria
  #7 (permalink)  
Antiguo 13/01/2007, 09:59
 
Fecha de Ingreso: junio-2006
Mensajes: 66
Antigüedad: 17 años, 10 meses
Puntos: 2
Re: Sistema de comentarios en PHP

Mi idea es enviar la info en un <form method=post>, que me envía como variables nombre, email, comentario, a otro archivo aparte que tiene el código para guardar la info en la db. La info de la variable $ref_seccion=1; tiene que estar escrita en la pagina donde esta el form (form.php), y no en ese archivo aparte (grabar.php) que graba la info en la db. Ahora como hago para enviar el contenido de la variable $ref_seccion.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:28.