Foros del Web » Programando para Internet » PHP »

Problema con esto

Estas en el tema de Problema con esto en el foro de PHP en Foros del Web. Hola buenas, vereis he montado un libro de visitas a partir de un tutorial. Lo malo es que cuando se le da a añadir comentario, ...
  #1 (permalink)  
Antiguo 07/09/2009, 05:13
 
Fecha de Ingreso: junio-2009
Mensajes: 52
Antigüedad: 14 años, 10 meses
Puntos: 1
Problema con esto

Hola buenas, vereis he montado un libro de visitas a partir de un tutorial. Lo malo es que cuando se le da a añadir comentario, dice que gracias pero no vuelve a la pagina de antes. Nose como se puede arreglar esto. Y despues otra cosa es que si le das para atras, no te aparece el comentario. Tienes que cerrar la ventana y volver a abrir la pagina para que se vea. Supongo que sera por la caché. Bueno gracias y espero que alguna alma caritativa me ayude :)
  #2 (permalink)  
Antiguo 07/09/2009, 05:51
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 15 años, 8 meses
Puntos: 139
Respuesta: Problema con esto

No es tan complicado lo que estas haciendo.
Pero seria mas facil si mostrara tu codigo, haci te pueden decir donde esta tu error.
  #3 (permalink)  
Antiguo 07/09/2009, 05:54
 
Fecha de Ingreso: junio-2009
Mensajes: 52
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Problema con esto

aaa ok, mi codigo es el siguiente:

Código PHP:
Ver original
  1. <?php
  2. // Configuracion del script
  3. $fecha = date("d/m/y H:i a"); #Formato de la fecha en los mensajes
  4. $nombre_archivo = 'Firmas/firmas.txt'; #Dirección del archivo .txt donde se guardarán las firmas
  5.  
  6. function emoticonos($comentario)
  7. {
  8.     $comentario = str_replace(":)", "<img src=\"emoticonos/feliz.gif\">", $comentario);
  9.     $comentario = str_replace(":(", "<img src=\"emoticonos/triste.gif\">", $comentario);
  10.     $comentario = str_replace(":<", "<img src=\"emoticonos/enojado.gif\">", $comentario);
  11.     $comentario = str_replace(":bkn", "<img src=\"emoticonos/cool.gif\">", $comentario);
  12.     $comentario = str_replace(":}", "<img src=\"emoticonos/risa.gif\">", $comentario);
  13.     $comentario = str_replace(":{", "<img src=\"emoticonos/diabolico.gif\">", $comentario);
  14.     $comentario = str_replace(":[", "<img src=\"emoticonos/llorando.gif\">", $comentario);
  15.     $comentario = str_replace("8|", "<img src=\"emoticonos/impresionado.gif\">", $comentario);
  16.     $comentario = str_replace("|:|", "<img src=\"emoticonos/hombre.gif\">", $comentario);
  17.     $comentario = str_replace("<:|", "<img src=\"emoticonos/mujer.gif\">", $comentario);
  18.     $comentario = str_replace(":p", "<img src=\"emoticonos/lengua.gif\">", $comentario);
  19.  
  20.     return $comentario;
  21. }
  22.  
  23. function grabar($nombre_archivo, $contenido) // Grabar datos al txt
  24. {
  25.     $fp = fopen($nombre_archivo, "r+");
  26.     $leer = fread($fp, filesize($nombre_archivo));
  27.     fseek($fp, 0);
  28.     fwrite($fp, "${contenido}${leer}");
  29.     fclose($fp);
  30.     echo "Gracias, tu mensaje a sido enviado";
  31. }
  32. ?>

Tambien me gustaria hacer otra cosa, que el php creara paginas cada 10, 15 comentarios, para que no se llene mucho la pagina

Última edición por ernanillo; 07/09/2009 a las 06:17
  #4 (permalink)  
Antiguo 07/09/2009, 06:43
Avatar de cemansilla  
Fecha de Ingreso: septiembre-2007
Ubicación: Buenos Aires, Argentina, Argentina
Mensajes: 214
Antigüedad: 16 años, 7 meses
Puntos: 6
Respuesta: Problema con esto

Creo que sigue faltando el codigo del form para encaminar la solucion... Pero si decis que si cerras el navegador y volver a abrir se reflejan los cambios es que la web no se actualiza luego de añadir el comentario, quiza este hecho con AJAX...

Con le codigo completo va a ser mas facil darte una solucion...
  #5 (permalink)  
Antiguo 07/09/2009, 07:17
 
Fecha de Ingreso: junio-2009
Mensajes: 52
Antigüedad: 14 años, 10 meses
Puntos: 1
Bueno, creo que lo que falta es esto

Código PHP:
Ver original
  1. <?php
  2. include("config.php");
  3. // variables
  4. $nombre = $_GET['nombre'];
  5. $web = $_GET['web'];
  6. $mail = $_GET['mail'];
  7. $comentario = emoticonos($_GET['comentario']);
  8. $ubicacion = $_GET['ubicacion'];
  9. $valoracion = $_GET['valoracion'];
  10. $contenido = "<table width=559 border=1 #00FF00><tr><td width=189>Nombre: $nombre </td>
  11. <td width=360>Comentario:</td></tr><tr><td>$nombre<br><a href=$web>Web</a><br><a href=mailto:$mail>Mail</a><br>$ubicacion</td><td><table width=356 border=0><tr><td>$comentario</td></tr></table></td></tr><tr><td height=29><a href=mailto:$mail>Contactar</a></td><td><div align=left><table width=392 border=0><tr><td width=120 height=21>$fecha </td><td width=266><div align=right> Valoracion de la web: $valoracion </div></td></tr></table></div></td></tr></table>\n";
  12. if ($_GET['enviar']) {
  13.     grabar($nombre_archivo, $contenido);
  14. } else {
  15.     echo "Tu mensaje no se a podido insertar, intentalo mas tarde";
  16. }
  17. ?>

Os digo que lo que hace, es guardar los comentarios en un txt

alguien sabe cmo puedo hacerlo?

Vale ya he arreglado lo del principio, solo he metido en config.php
header('refresh:2; url=mipaginaweb');
Y tambien he solucionado lo de los comentarios, que no salian, como mi pagina web es una redireccion, lo he puesto para que se vaya a la pagina original en vez de a la redireccion, y asi e solucionado el problema con la cache. Pero aun sigo queriendo que se ponga en paginas diferentes, para que no esten todos los comentarios apelotonados

Última edición por GatorV; 07/09/2009 a las 15:54
  #6 (permalink)  
Antiguo 08/09/2009, 09:28
 
Fecha de Ingreso: junio-2009
Mensajes: 52
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Problema con esto

nadie sabe?
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 14:22.