Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Permitir poner comentarios a todos los usuarios

Hola, en mi pagina hasta ahora solo podian poner comentarios los usuario registrados, quiero poner que los puedan escribir cualquier usuario, pero si comento la linea donde le digo que la sesión tiene que estar seteada:

<?php ?><?php if (isset ($_SESSION['MM_id'])){ ?><?php ?>

Me da error cuando inserto un comentario, me pide que el usuario no puuede estar bacio:

Column 'autor' cannot be null

Como lo puedo solucionar??, he probado a que me ponga siempre el usuario como anonimo pero no me interesa eso, pues si comenta alguien registrado, lo ba a poner igualmente como anonimo

Gracias
0
Puntos
1398
Visitas
9
Resp
Por borch hace 120 meses
Avanzado
Respuesta #1
buenas, tienes que modificar la columna en la base de datos y poner el campo autor en nulo es decir la modificas y en predeterminado poner NULL
0
Puntos
Por alber hace 120 meses
Administrador
Respuesta #2
Gracias alber, pero entoces si comenta un registrado me pondra su nombre??



0
Puntos
Por borch hace 120 meses
Avanzado
Respuesta #3
nada, me sigue diciendo que el campo no puede estar vacio
0
Puntos
Por borch hace 120 meses
Avanzado
Respuesta #4
Yo lo he hecho. Lo que hago es una condición para los registrados y otra para los no registrados.
<form action="comentarios.php" method="post" name="comentarios">
 <textarea name="comentario"></textarea>
    <?php  if (isset ($_SESSION['MM_id'])) { ?>
            <input type="hidden" name="author" value="<?php echo $_SESSION["MM_user"]; ?>">
      <?php } else { ?>
            <input type="hidden" name="author" value="Anonymous">
      <?php } ?>
      <input type="submit" value="enviar">
</form>
Ahora, otra cosa. Debes asegurarte que en el PHP para insertar un comentario no haya una condición de que exista la sesión.
10
Puntos
Por Jose hace 120 meses
Experto Sitio web
Respuesta #5
muy buena respuesta la de Jose
5
Puntos
Por alber hace 120 meses
Administrador
Respuesta #6
gracias Jose, lo intento y tedigo
0
Puntos
Por borch hace 120 meses
Avanzado
Respuesta #7
Hola Jose, he hecho lo que tu me dices y me da error, me dice esto:

Unknown column 'Anonymous' in 'where clause'


He creado una tabla llamada Anonymous pero nada, no fona, porque puede ser???
0
Puntos
Por borch hace 120 meses
Avanzado
Respuesta #8
bueno supongo que es porque en tu consulta tienes algo así
mysql_query (... WHERE Anonymous ...);
Pero si Anonymous es una tabla pero no una columna, entonces arrojará ese error. La pregunta es.

¿Anonymous es una tabla que contiene columnas como ID, etc, etc? o ¿Anonymous es una columna que pertenece a alguna tabla de la base de datos?
0
Puntos
Por Jose hace 120 meses
Experto Sitio web
Respuesta #9
Anonimous en una columna dentro de la tabla comentarios, y esta como integer
0
Puntos
Por borch hace 120 meses
Avanzado
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate