Pregunta

Escribo el código de mi propio sitio web como un ejercicio educativo / divertido. En este momento, parte del sitio web es un blog (como todos los demás sitios disponibles: - /) que admite las características básicas habituales del blog, incluidos los comentarios en las publicaciones. Pero solo tengo comentarios habilitados para usuarios registrados; Quiero alterar el código para permitir comentarios anónimos, es decir, quiero permitir que las personas publiquen comentarios sin crear primero una cuenta de usuario en mi sitio, aunque todavía habrá algún tipo de autenticación para prevenir el spam.

Pregunta: ¿qué información debo guardar para comentarios anónimos? Estoy pensando al menos en mostrar el nombre y la dirección de correo electrónico (para mostrar un Gravatar), y probablemente la URL del sitio web porque eventualmente también quiero aceptar OpenID, pero ¿tendría sentido algo más?

Otra pregunta: ¿cómo debo modificar la base de datos para almacenar esta información? El esquema que tengo para la tabla de comentarios es actualmente

comment_id       smallint(5)       // The unique comment ID
post_id          smallint(5)       // The ID of the post the comment was made on
user_id          smallint(5)       // The ID of the user account who made the comment
comment_subject  varchar(128)
comment_date     timestamp
comment_text     text

¿Debo agregar campos adicionales para nombre, dirección de correo electrónico, etc. a la tabla de comentarios? (parece una mala idea) Crear un nuevo " usuarios anónimos " ¿mesa? (y si es así, cómo evitar que los identificadores de usuario anónimos entren en conflicto con los identificadores de usuario normales) ¿O crear cuentas de usuario falsas para usuarios anónimos en mi tabla de usuarios existente?

Parte de lo que hace que esto sea complicado es que si alguien intenta publicar un comentario anónimo utilizando una dirección de correo electrónico (o OpenID) que ya está asociada con una cuenta en mi sitio, me gustaría captar eso y pedirle que inicie sesión .

¿Fue útil?

Solución

El punto principal de los comentarios anónimos es que los usuarios no tienen que iniciar sesión, ¿verdad?

¡Mi gusto personal es no forzar al usuario a ingresar nada, ni siquiera su nombre! El único campo requerido es el texto del comentario en sí. Si no quieren dar su nombre o correo electrónico, bien, ¿a quién le importa?

Si proporcionan un correo electrónico que ya existe, existe la posibilidad de que se hayan registrado hace mucho tiempo y ni siquiera recuerden su contraseña.

Nuevamente, no obligue al usuario a iniciar sesión en ese caso. Simplemente déles la opción de iniciar sesión o dejar el campo de correo electrónico en blanco (o cambiar su contenido). O simplemente muestre un cuadro de advertencia diciéndoles que el comentario se enviará sin la dirección de correo electrónico, con "ok". y "cancelar" opciones.

Entonces, ¿qué almacenar con el comentario anónimo?

Yo diría que almacenen su nombre y correo electrónico (por supuesto, no muestren su correo electrónico al público), pero que sean campos opcionales, no obligatorios.

¡También puede almacenar su sitio web, aunque personalmente no sé cuál es el punto de eso, aparte de la autopublicidad para el póster anónimo!

Otros consejos

Sin duda, ingresa el " nombre de usuario " en la tabla de comentarios. Y copia el valor en su tabla de usuario a ese campo para los usuarios registrados. De esta manera, si un usuario es eliminado, sus comentarios aún tienen un nombre adjunto. Los comentarios suelen ser jerárquicos, lo que dificulta la eliminación de uno en el medio de un árbol de comentarios.

Si lo dejan en blanco, ingrese su " anonymous_user " texto en la tabla.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top