Foros del Web » Programando para Internet » PHP »

Como refrescar la página después de agregar un comentario

Estas en el tema de Como refrescar la página después de agregar un comentario en el foro de PHP en Foros del Web. Hola amigos. Estoy trabajando en un proyecto de sitio, en donde los usuarios ingresna a un artículo informativo en el cual, al final de la ...
  #1 (permalink)  
Antiguo 18/09/2008, 15:08
 
Fecha de Ingreso: abril-2008
Mensajes: 62
Antigüedad: 16 años
Puntos: 0
Exclamación Como refrescar la página después de agregar un comentario

Hola amigos.

Estoy trabajando en un proyecto de sitio, en donde los usuarios ingresna a un artículo informativo en el cual, al final de la página se muestran dinámicamente los comentarios de los usuarios.

Al final de todos los comentarios, he creado un formulario sencillo para enviar un comentario. Este formulario llama a un archivo ubicado en "Scripts/envia_comentario.php" y le envía las variables "nombre", "edad", "email", "comentario".

El archivo "envia_comentario.php" contiene algunas variables de fecha y de id para insertar en la base de datos de mysql.

EL tema es que yo deseo que, de ser satisfactorio el envío del comentario (eso ya lo he logrado casi sin inconvenientes), el navegador redirija al usuario hacia la página donde estaba leyendo el artículo y quería insertar el comentario (de modo que al volver a ingresar en dicha página, el usuario pueda ver ya insertado su comentario al final de la página). Este sistema es similar al utilizado en www.taringa.net, y me pareció que queda bien y resulta cómodo para los usuarios.

Ah! Una info: Estoy utilizando frames. De modo que en la barra de direcciones del navegador siempre aparece "http://localhost" (lo esoty probando en mi PC con apache). Por ello no se si funcione utilizar el HTTP_REFERER o el PHP SELF.


Por fa... ayuda! Si hago esto he completado el 50% del diseño del sitio!
  #2 (permalink)  
Antiguo 18/09/2008, 15:11
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Como refrescar la página después de agregar un comentario

Guarda la direccion de la pagina en una SESSION, y cuando se agregue el comentario usa header para redireccionar.

Otra alternativa es usar AJAX para nisiquiera hacer una recarga :)
  #3 (permalink)  
Antiguo 18/09/2008, 15:14
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Respuesta: Como refrescar la página después de agregar un comentario

Tienes varias opciones.

AJAX la cual solo refresca el espacio que desees.. y tienes el meta-tagHTML

meta-tag

<meta http-equiv="refresh" content="2;url=pagina.php">

en content defines los milisegundos.
la parte de ajax pss no te la puedo decir por que me tomaria tiempo en desarrollartela aki..

si deseas gratificarme hazlo con karma gracias :D
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #4 (permalink)  
Antiguo 18/09/2008, 15:47
Avatar de oso96_2000  
Fecha de Ingreso: junio-2002
Ubicación: Distrito Federal
Mensajes: 558
Antigüedad: 21 años, 10 meses
Puntos: 35
Respuesta: Como refrescar la página después de agregar un comentario

A ver, un modo simple.

Dices que mandas el ID del articulo, no? (o al menos eso supuse). Entonces podriamos suponer que vara ver un articulo la url es algo como: articulos.php?id=2, donde 2 es el ID.

Entonces, despues de insertar el comentario y suponiendo que tengas la ID del articulo en una variable de nombre $id, podrias redirigir al usuario de alguna forma. Ej.:
header('Location: articulos.php?id=' . $id);
o
<meta http-equiv="refresh" content="0;url=articulos.php?id=<?=$id?>">

Saludos
__________________
Sin Ideas
  #5 (permalink)  
Antiguo 18/09/2008, 16:20
Avatar de Avatar810  
Fecha de Ingreso: agosto-2007
Ubicación: Por rumbos Regios
Mensajes: 485
Antigüedad: 16 años, 8 meses
Puntos: 23
Respuesta: Como refrescar la página después de agregar un comentario

Supongo que envia_comentario.php tienes solo codigo php que hace el INSERT a la BD

De ser asi y querer mantenerlo asi, pues lo mas recomendable seria es lo que recomienda oso96_2000 pasar el parametro del id de tu articulo y redireccionarlo con un LOCATION.

Si por algun motivo no puedes pasar el parametro o no lo tienes totalmente asi de simple... lo que yo he hecho frecuentemente es meter el codigo del archivo que guarda a la BD dentro del del articulo.

OSEA...
que el que muestra el articulo se llame a si mismo al agregar el comentario
al inicio del archivo se valida si se ha presionado el boton submit del formulario de comentarios (esto se puede hacer con un if(isset($_POST["name_button_submit"])))
en caso de haberse presionado el submit ejecutar el codigo que tenias en envia_comentario.php y despues que continue normalmente con la carga del articulo.

Asi lo que pasa es
1. valida si hay nuevo comentario
true -> ir a punto 2
false -> ir a punto 3
2. inserta el nuevo comentario
3. consulta el artuculo
4. muestar el articulo
5. consulta los comentarios
6. muestra los comentarios
7. carga el formulario de comentarios
8. fin
__________________
Una demo siempre funcionará correctamente hasta que toque algo tu (hasta ahora) cliente.
Avatar810
  #6 (permalink)  
Antiguo 19/09/2008, 08:09
 
Fecha de Ingreso: abril-2008
Mensajes: 62
Antigüedad: 16 años
Puntos: 0
Respuesta: Como refrescar la página después de agregar un comentario

UUuuuuu son una masa todos! Gracias por ayudarme.

Voy a inclinarme por lo que meparece, de acuerod a mis conocimientos, lo más rapido. Eso es la última respuesta. Incluir le codigo dentro dle mismo archivo... vamos a ver que pasa.
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 08:23.