Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/03/2010, 08:53
Avatar de welko
welko
 
Fecha de Ingreso: julio-2007
Mensajes: 102
Antigüedad: 16 años, 10 meses
Puntos: 2
Valores UPDATE se duplican una vez salgo del archivo php hacia otro

Hola, tengo un sistema de votos simple en el que primero obtengo el numero de votos (5) y la suma de los votos (50) de la base de datos, para luego sumar 1 al numero de votos (5+1) y el voto en sí a la suma de votos (50+7).

Esto ultimo lo actualizo mediante un UPDATE pero al salir de la página donde ejecuta la consulta:

Código:
http://..../votar.php?voto=x&id=y
hacia

Código:
http://...../x/
que es en la que se muestra el numero de votos y la nota.

Tanto la nota como el número de votos aparece como si los últimos valores añadidos se hubieran duplicado, es decir si deben salir 6 (5+1) votos, salen 7 (5+2), y la suma de los votos en vez de 57 (50+7), sale 64 (50+14).
En la BD también salen estos datos erroneos.

---------------------------------------------------------------------------------------------------


Esta es la consulta:

Código PHP:
$aumentar_nota mysql_query("UPDATE nombre_tabla SET votos_totales = '$sumar_voto', numero_de_votos = '$numero_de_votos', nota = '$nota' where id = '$id'",$conexion); 
Explicación variables:
  • Código PHP:
    $numero_de_votos $row["numero_de_votos"]; 
  • Código PHP:
    $suma_de_votos $row["votos_totales"]; 
  • Código PHP:
    $numero_de_votos $numero_votos 1
  • Código PHP:
    $sumar_voto $suma_de_votos $_GET["voto"]; 
  • Código PHP:
    $nota $sumar_voto $numero_de_votos
  • Código PHP:
    $id $_GET["id"]; 

---------------------------------------------------------------------------------------------------


He hecho que aparezcan las variables antes y despues de la consulta con un echo para saber su valor, y estaban bien.

He realizado un SELECT después del UPDATE para comprobar los datos que se habían metido y estaban bien.

He añadido 1 while($numero < 1) para controlar que no pase por ahi 2 veces.

Tengo un sistema de cookies para que no se pueda votar 2 veces, por lo que no pasa 2 veces por la consulta.

Tenía un meta refresh para que te devolviera a la pagina anterior (ruta exacta de la página), lo he quitado y sigue pasando lo mismo.

Pienso que el problema está al abandonar la página donde se actualiza la nota, pero no tengo ni idea de porque ocurre esto.

---------------------------------------------------------------------------------------------------


¿Qué creéis que esta pasando?, gracias :)
__________________
Revista de videojuegos, noticias, avances, análisis, vídeos, imágenes etc: www.nggamers.com