Lo que tienes ahorita es una tabla en la que metes tanto el ID de la noticia como el IDC de comentario.
Y está bien. Llamémosle a
noticia y a
comentario entidades.
Ahora, cada entidad debería tener su propia tabla, tendrías así a la tabla
comentarios y a la tabla
noticias, (en negritas pongo cuál es la clave primaria)
TABLAS:
noticias (
id_noticia, nombre_noticia, etc, etc.
comentarios (
idc, nick, fecha, comentario,
id_noticia)
Quizá tú nada más quieras tener una tabla de comentarios y no de noticias, está bien, pero nota como la tabla de comentarios tiene como clave primaria a
IDc, también se incluye una referencia (ver cursivas) a la noticia a la que corresponde, ¿hasta aquí todo bien?
Pues bueno, que así se facilitan las cosas, ¿cómo hacer para insertar un comentario?
Ya no necesitas saber cuántos comentarios han pasado hasta el momento, pues como declaras a la clave primaria
IDc como
AUTO_INCREMENT, esta se incrementará solita con cada comentario que vayas insertando.
ejemplo de SQL para tu tabla comentarios:
Código:
CREATE TABLE comentarios (
idc INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
nick VARCHAR(30) NOT NULL,
fecha DATE NOT NULL,
comentario VARCHAR(255) NOT NULL,
id_noticia INTEGER UNSIGNED NOT NULL,
PRIMARY KEY(idc)
);
Ejemplo de cómo insertar nuevos comentarios:
Código:
$sql = 'INSERT INTO `comentarios` (`idc`, `nick`, `fecha`, `comentario`, `id_noticia`) VALUES ('''', ''uamistad'', ''2006-02-20'', ''Me gustó mucho este sitio web.'', ''45'')';
Yo usé texto aquí para hacer este
insert, pero en tu aplicación usas las variables que ya usas ahorita.
Nota que no me apura cuántos comentarios haya previamente, ni tengo que hacer un SELECT anterior a mi INSERT.