Foros del Web » Programando para Internet » PHP »

Sistema de Comentarios

Estas en el tema de Sistema de Comentarios en el foro de PHP en Foros del Web. Hola a todos, resulta que quiero añadir un sistema de comentarios en mi pagina web, pero intentado añadir el de varios tutoriales pero no lo ...
  #1 (permalink)  
Antiguo 14/03/2006, 15:18
 
Fecha de Ingreso: febrero-2004
Ubicación: Barcelona
Mensajes: 20
Antigüedad: 13 años, 10 meses
Puntos: 0
Sistema de Comentarios

Hola a todos, resulta que quiero añadir un sistema de comentarios en mi pagina web, pero intentado añadir el de varios tutoriales pero no lo consigo. La base de datos de mi script de noticias contiene las siguientes tablas:

CREATE TABLE `noticias` (
`idnoticia` bigint(20) NOT NULL auto_increment,
`fecha` int(10) NOT NULL default '0',
`autor` varchar(80) NOT NULL default '',
`titulo` varchar(100) NOT NULL default '',
`mensaje` text NOT NULL,
KEY `idnoticia` (`idnoticia`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;

Ahora intentado añadir el codigo del tutorial de maestrosdelweb que es el siguiente :

Código PHP:
<CENTER> <TABLE CELLSPACING=1 CELLPADDING=1 WIDTH=300 BORDER=0 STYLE="border:1px 
solid black"> <TR> <TD BGCOLOR="#FAFAFA"> <CENTER> <SPAN STYLE="font-size:11px;font-family:Tahoma;color:black;font-weight:bold"> 
.Comentarios De Los Usuarios. </SPAN> </CENTER> </TD> </TR> <TR> <TD HEIGHT=1 BGCOLOR=black> </TD> </TR> <TR> <TD BGCOLOR="#FEFEFE"> <SPAN STYLE="font-size:11px;font-family:Tahoma;color:black;"> 
<? $resultComen mysql_query("SELECT * FROM comentarios WHERE idnoticia='$id' ORDER BY id ASC"); while($rowComen mysql_fetch_array($resultComen)) { ?> ; < FONT COLOR=RED> < B><? echo $rowComen["nick"]; ?></B> < /FONT> : <? echo $rowComen["comentario"]; ?> < BR> <? mysql_free_result($resultComen); ?> </SPAN> </TD> </TR> </TABLE> </CENTER>
Al añadir esto en un archivo .php cuando voy a visualizarlo me salen los siguientes errores:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in e:\www\spain\prueba.php on line 10

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in e:\www\spain\prueba.php on line 10

Lo intentado de varias maneras pero no lo consigo, no sera problema por las tablas del sistema de noticias?, por el id_noticia por ejemplo?
__________________
www.gta-tuning.com
www.nfsunderground2.net
www.nfs-forums.com
  #2 (permalink)  
Antiguo 14/03/2006, 15:22
Avatar de jmqc  
Fecha de Ingreso: noviembre-2004
Ubicación: Venezuela
Mensajes: 353
Antigüedad: 13 años
Puntos: 1
Buenas. La tabla se llama noticias y estas haciendo un select a una tabla llamada comentarios otro error posible puede ser que no encuentre el campo nick $rowComen["nick"]; No existe en la tabla otra cosa tienes cadena de conexion a mysql??.. Espero que esto te sirva de algo... Saludos
__________________
Ante el desconocimiento ni entendimiento de las cosas decimos que los demás estan locos.

José Quintero. Saludos.
:adios:
  #3 (permalink)  
Antiguo 14/03/2006, 15:24
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.462
Antigüedad: 15 años, 4 meses
Puntos: 2099
Hola gtatuning.
¿Tienes creada la tabla comentarios en tu base de datos?
  #4 (permalink)  
Antiguo 14/03/2006, 15:28
 
Fecha de Ingreso: febrero-2004
Ubicación: Barcelona
Mensajes: 20
Antigüedad: 13 años, 10 meses
Puntos: 0
Gracias por vuestras respuestas tan rapidas jeje, si tengo cargada la base de datos de los comentarios es la siguiente:

CREATE TABLE `comentarios` (
`id` bigint(7) default NULL,
`id_noticia` bigint(7) default NULL,
`nick` char(20) default NULL,
`comentario` char(250) default NULL,
KEY `id` (`id`)
) TYPE=MyISAM;

Si tiene que encontrar el campo nick seria en la tabla comentarios no?, llevo todo el dia con ello y no me sale...
__________________
www.gta-tuning.com
www.nfsunderground2.net
www.nfs-forums.com
  #5 (permalink)  
Antiguo 14/03/2006, 15:33
Avatar de jmqc  
Fecha de Ingreso: noviembre-2004
Ubicación: Venezuela
Mensajes: 353
Antigüedad: 13 años
Puntos: 1
Bueno creo que pasa estas haciendo la consulta a traves de un campo idnoticia en tu tabla comentario y se llama id_noticia. Espero que te sirva... Saludos
__________________
Ante el desconocimiento ni entendimiento de las cosas decimos que los demás estan locos.

José Quintero. Saludos.
:adios:
  #6 (permalink)  
Antiguo 14/03/2006, 15:36
Avatar de jmqc  
Fecha de Ingreso: noviembre-2004
Ubicación: Venezuela
Mensajes: 353
Antigüedad: 13 años
Puntos: 1
Ah se me paso otro detalle en la sentencia del sql estas colocando el valor a buscar gusrdado en una variable php dentro de la sentencia y no lo lee debes hacer la sentencia asi:
Código PHP:
 $resultComen mysql_query("SELECT * FROM comentarios WHERE idnoticia=".$id." ORDER BY id ASC"); 
, seperando el id cortando la cadena del sql con " y colocando el punto para concatenar las dos variables aperte de eso como tu id es int debes quitar las comillas' simples en las que esta encerrada la variable $id.Espero que te sirva... Saludos
__________________
Ante el desconocimiento ni entendimiento de las cosas decimos que los demás estan locos.

José Quintero. Saludos.
:adios:
  #7 (permalink)  
Antiguo 14/03/2006, 15:37
 
Fecha de Ingreso: febrero-2004
Ubicación: Barcelona
Mensajes: 20
Antigüedad: 13 años, 10 meses
Puntos: 0
Tienes razon, he cambiado la tabla comentarios por esto:

CREATE TABLE `comentarios` (
`id` bigint(7) default NULL,
`idnoticia` bigint(7) default NULL,
`nick` char(20) default NULL,
`comentario` char(250) default NULL,
KEY `id` (`id`)
) TYPE=MyISAM;

y en el codigo he puesto esto:

<CENTER> <TABLE CELLSPACING=1 CELLPADDING=1 WIDTH=300 BORDER=0 STYLE="border:1px
solid black"> <TR> <TD BGCOLOR="#FAFAFA"> <CENTER> <SPAN STYLE="font-size:11px;font-family:Tahoma;color:black;font-weight:bold">
.Comentarios De Los Usuarios. </SPAN> </CENTER> </TD> </TR> <TR> <TD HEIGHT=1 BGCOLOR=black> </TD> </TR> <TR> <TD BGCOLOR="#FEFEFE"> <SPAN STYLE="font-size:11px;font-family:Tahoma;color:black;">
<? $resultComen = mysql_query("SELECT * FROM comentarios WHERE idnoticia='$id' ORDER BY id ASC"); while($rowComen = mysql_fetch_array($resultComen)) { ?> ; < FONT COLOR=RED> < B><? echo $rowComen["nick"]; ?></B> < /FONT> : <? echo $rowComen["comentario"]; ?> < BR> <? } mysql_free_result($resultComen); ?> </SPAN> </TD> </TR> </TABLE> </CENTER>

y el error me sigue saliendo el mismo,este :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in e:\www\spain\prueba.php on line 10

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in e:\www\spain\prueba.php on line 10

Dice que esta linea esta mal:

<? $resultComen = mysql_query("SELECT * FROM comentarios WHERE idnoticia='$id' ORDER BY id ASC"); while($rowComen = mysql_fetch_array($resultComen)) { ?> ;

Me parece que me voy a tener que dedicar al parchis jeje
__________________
www.gta-tuning.com
www.nfsunderground2.net
www.nfs-forums.com
  #8 (permalink)  
Antiguo 14/03/2006, 15:42
 
Fecha de Ingreso: febrero-2004
Ubicación: Barcelona
Mensajes: 20
Antigüedad: 13 años, 10 meses
Puntos: 0
He probado como me dices cambiando el codigo pero sigue saliendo el mismo error, creo que buscare ha alguien que me ayude ha cambiado de algo, gracias por vuestra ayuda, os lo agrezco mucho ;)
__________________
www.gta-tuning.com
www.nfsunderground2.net
www.nfs-forums.com
  #9 (permalink)  
Antiguo 14/03/2006, 17:15
Avatar de helthon  
Fecha de Ingreso: junio-2005
Ubicación: Lima
Mensajes: 549
Antigüedad: 12 años, 6 meses
Puntos: 7
No cambies nada

Poco a poco aprenderas revisa este enlace http://www.maestrosdelweb.com/editorial/phpcms3/
__________________
HELTHON FUENTES
FLORERIA FLORES PERU Floresperu.com.pe
Garantizamos que cada entrega de flores será de la más alta calidad y frescura
  #10 (permalink)  
Antiguo 15/03/2006, 07:19
Avatar de L34NDRO  
Fecha de Ingreso: marzo-2006
Mensajes: 11
Antigüedad: 11 años, 9 meses
Puntos: 0
De acuerdo Ayuda! Sistema de comentarios!!!!!

hola gente amiga..

estube leyendo y tengo el mismo problema ... y no pude solucionarlo..

no tendria alguien uno ya echo y zipiado para pasarme y ver cual era mi problema???

Desde ya muchisimas gracias

MSN : [email protected]
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 01:25.