Foros del Web » Programando para Internet » PHP »

problema con elegir el valor de un botón duplicado

Estas en el tema de problema con elegir el valor de un botón duplicado en el foro de PHP en Foros del Web. tengo botones que se duplican con la cantidad que el administrador quiera y puedo también agregar fotos y nombre de jugadore y hay que votar ...
  #1 (permalink)  
Antiguo 30/06/2016, 19:23
 
Fecha de Ingreso: diciembre-2015
Mensajes: 369
Antigüedad: 8 años, 3 meses
Puntos: 4
problema con elegir el valor de un botón duplicado

tengo botones que se duplican con la cantidad que el administrador quiera y puedo también agregar fotos y nombre de jugadore y hay que votar por ellos
en este caso tengo 4 botones, quiero que voten a uno solo de los 4 y se el agregue el voto

El problema esta en cuando le doy a un botón para que envíe el voto a la base de datos
me vota 4 veces, que es el mismo valor que tengo de botones creados.

este el código del proceso que hace al votacion.

Código PHP:
Ver original
  1. //pregunta si existe el post comentar
  2. if(isset($_POST['comentar'])){
  3.     //al votar ejecutas:
  4. setcookie("voto", "positivo", time()+60*60*24*365);
  5.     // $id es una variable que contiene el valor de los  id del la tabla jugador
  6. $id = $done['id'];
  7. $id_post = $done['id_post'];
  8. $idrecibido = $_POST['idpost'];
  9. $ip = $_SERVER['REMOTE_ADDR'];  //agregar IP
  10. //si el usuario existe inserta el id de lo contrario el id 1 que pertenece a anonimo
  11. if (isset($_POST['usuario_id']))
  12. {
  13. $usuario_id = $_POST['usuario_id'];
  14. }else{
  15. $usuario_id=1;
  16. }
  17. //sacar el id_post de los jugadores    
  18. //verifica si existe el voto existe por el ip del user
  19. $verifica_ip = mysqli_query($conexion, "SELECT * FROM votos_info WHERE id_votantes='$usuario_id' and id_js ='$id_post' ");
  20. if (//isset($_COOKIE["voto"]) ||
  21.     $confirmacion = mysqli_fetch_array($verifica_ip))
  22. {
  23.     echo "ya haz votado";
  24.     echo '<meta http-equiv="refresh" content="3">';
  25. }
  26. else{
  27.     mysqli_query($conexion,"INSERT INTO votos_info (ip, id_js, id_votantes, id_post) VALUES ('$ip','$idrecibido', '$usuario_id', '$id_post') ");
  28.  echo $ip;
  29.  
  30. //valor de el voto
  31. $voto = 1;
  32. // el query que sube el numero del voto
  33. $query = mysqli_query($conexion," UPDATE js SET  voto = (voto +'".$voto."') WHERE id= '".$idrecibido."' ");
  34. //si el queri es exitoso
  35. if($query){
  36. //se crea la variable seccion
  37. $_SESSION['voto']= '<b>VOTO REALIZADO!</b>';
  38.  
  39. echo '<meta http-equiv="refresh" content="3">';
  40. } else {
  41. echo '<b>Hubo un error en la votacion -> </b>'.mysqli_error($conexion);
  42. }
  43. }
  44.  
  45.  
  46. }
  47. ?>
Código PHP:
Ver original
  1. <?php
  2. echo (isset ($_SESSION['voto'])) ? $_SESSION['voto'] : '' ;
  3. unset($_SESSION['voto']);
  4. ?>

Código HTML:
Ver original
  1. <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
  2. <input type="hidden" value="<?= $done['id']; ?>" name="idpost">
  3. <input type="submit" value="votar" name="comentar"><br>
Código PHP:
Ver original
  1. <?php
  2. //name si el usuario esta loguiado
  3.   if(isset($_SESSION['email']))
  4.   { // inserta en la tabla votos_info el id del usuario de lo contrario el id del anonimo que es 1 el tipo del formulario  valor hidden el el type para no imprimirlo en la pagina  
  5.     $usuario = $_SESSION['id'];
  6.     echo "<input type='hidden' name='usuario_id' value='$usuario'> ";
  7.   }
  8.   ?>
Código HTML:
Ver original
  1. </form>
Antes funcionaba pero comencé a editarlo y ese script me lo hizo un amigo y no me dio tiempo de estudiarlo y comentarlo bien y no hice copia no tengo la idea de como elegir el botón específico que contenga la información del div duplicado que tiene informacion que puedo grabar en uan base de datos como el id de la imagen que aparece en el div

Última edición por wilson_romero; 30/06/2016 a las 19:31
  #2 (permalink)  
Antiguo 30/06/2016, 21:36
 
Fecha de Ingreso: diciembre-2015
Mensajes: 369
Antigüedad: 8 años, 3 meses
Puntos: 4
Respuesta: problema con elegir el valor de un botón duplicado

Ya lo resolvi
cambiando la linea donde verifica el id
esta
Código PHP:
Ver original
  1. $verifica_ip = mysqli_query($conexion, "SELECT * FROM votos_info WHERE ip ='$ip' ")
;

pero aun asi no lo entiendo como funciona. Porque si verifico el ip me funciona seleccionando un solo dato la otra cosa es que cuando acepta el voto imprime
::!VOTO REALIZADO!

pone el id de primero no se por que pasa eso y me gustaria averiguarlo la verdad no se como esta funcionado este script

aqui se crea una sesion

Código PHP:
Ver original
  1. $query = mysqli_query($conexion," UPDATE js SET  voto = (voto +'".$voto."') WHERE id= '".$idrecibido."' ");
  2. //si el queri es exitoso
  3. if($query){
  4. //se crea la variable seccion
  5. $_SESSION['voto']= '<b>VOTO REALIZADO!</b>';

y si es cierta esa query
me imprime el valor de la session y un ip WTF no entiendo
Código PHP:
Ver original
  1. <?php
  2. echo (isset ($_SESSION['voto'])) ? $_SESSION['voto'] : '' ;
  3. unset($_SESSION['voto']);
  4. ?>

alguien me explica esto

Etiquetas: duplicado, elegir, formulario, mysql, select, sql, tabla, valor, variable
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 06:35.