Foros del Web » Programando para Internet » PHP »

Extraño problema con votación

Estas en el tema de Extraño problema con votación en el foro de PHP en Foros del Web. Hola a todos. Pues el problema es el siguiente: En una tabla de una bd tengo guardados archivos (con su id, nombre, ruta, puntuacion...) y ...
  #1 (permalink)  
Antiguo 07/10/2008, 07:54
Avatar de Legoltaz  
Fecha de Ingreso: agosto-2008
Mensajes: 325
Antigüedad: 15 años, 8 meses
Puntos: 6
Extraño problema con votación

Hola a todos. Pues el problema es el siguiente:

En una tabla de una bd tengo guardados archivos (con su id, nombre, ruta, puntuacion...) y el problema es que a la hora de votar positiva o negativamente, aunque solo haya seleccionado un registro, me suma o resta el voto a todos.

pagina1.php
Código PHP:
Ver original
  1. <?php
  2. ... sentencias ...
  3. $id = $_GET['id']; // tomo la id que pasé por la url
  4. ... sentencias ...
  5. ?>
  6. <a href="votar.php?id=<?php echo $id; ?>&voto=1">Votar positivamente</a>
  7. <a href="votar.php?id=<?php echo $id; ?>&voto=0">Votar negativamente</a>

votar.php
Código PHP:
Ver original
  1. <?php
  2. if(isset($_GET['id']) && isset($_GET['voto'])){
  3. $id = $_GET['id'];
  4. $voto = $_GET['voto'];
  5. require('conexion_bd.php');
  6. $sql = mysql_query("SELECT * FROM mi_tabla WHERE id = '".$id."'",$link) or die(mysql_error());
  7. if($voto == 1){
  8. while($row = mysql_fetch_array($sql)){
  9. $puntuacion = $row['puntuacion']+1;
  10. mysql_query("UPDATE mi_tabla SET puntuacion = '".$puntuacion."'",$link) or die(mysql_error());
  11. }
  12. }
  13. else if($voto == 0){
  14. while($row = mysql_fetch_array($sql)){
  15. $puntuacion = $row['puntuacion']-1;
  16. mysql_query("UPDATE mi_tabla SET puntuacion = '".$puntuacion."'",$link) or die(mysql_error());
  17. }
  18. }
  19. }
  20. else{
  21. header("location:index.php");
  22. }
  23. ?>
  #2 (permalink)  
Antiguo 07/10/2008, 07:58
 
Fecha de Ingreso: junio-2005
Ubicación: Madrid, España
Mensajes: 288
Antigüedad: 18 años, 9 meses
Puntos: 1
Respuesta: Extraño problema con votación

en el update te falta poner el WHERE id = $id, al igual que haces en el SELECT porque si no lo pones actualiza toda la tabla
  #3 (permalink)  
Antiguo 07/10/2008, 08:14
Avatar de Legoltaz  
Fecha de Ingreso: agosto-2008
Mensajes: 325
Antigüedad: 15 años, 8 meses
Puntos: 6
Respuesta: Extraño problema con votación

Era eso. Qué fallo más tonto! Muchas gracias
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 18:32.