Foros del Web » Programando para Internet » PHP »

Ayuda con los checkbox

Estas en el tema de Ayuda con los checkbox en el foro de PHP en Foros del Web. buenas, soy nuevo en esto de php y estoy intentando hacer un sistema de puntuación, lo que quiero es que, una vez registrado, los muestre ...
  #1 (permalink)  
Antiguo 18/02/2011, 12:11
 
Fecha de Ingreso: febrero-2011
Mensajes: 4
Antigüedad: 13 años, 2 meses
Puntos: 0
Pregunta Ayuda con los checkbox

buenas, soy nuevo en esto de php y estoy intentando hacer un sistema de puntuación, lo que quiero es que, una vez registrado, los muestre y al lado un chekbox, de modo que si lo selecciono le asigne 50 puntos y si no lo selecciona no le asigne nada,
Código:
<form id="form1" name="form1" method="post" action="prueba2.php">
$consulta="Select nombre from lideres";
$result= mysql_query($consulta) ;
while($row = mysql_fetch_array($result)){ 
echo '<table border="1">
  <tr>
    <td width="167">'.$row[nombre].'</td>
    <td width="167">
	<input name="puntos" type="checkbox" value="50" />
    </td>
  </tr>'; } echo'

</table>   <input name="guardar " type="submit" value="guardar" />';
este es el codigo que tengo, ahi me muestra los lideres (a los que les voy a asignar puntos) y al lado un checkbos, como hago en este caso para guardar en la base de datos mysql cada uno, osea que tengo que colocar en el archivo prueba2.php, necesito ayuda no entiendo muy bien esto.
la tabla de la base de datos quedaria algo como:

nombre ------ puntos
pedro ------- 50 (si lo selecciono)
juan -- -- - - 0 (si no lo selecciono)
carlos ------- 50

y asi sucesivamente, espero me entiendan, y muchas gracias por la ayuda
  #2 (permalink)  
Antiguo 18/02/2011, 12:37
Avatar de Sommy  
Fecha de Ingreso: septiembre-2008
Mensajes: 228
Antigüedad: 15 años, 7 meses
Puntos: 6
Respuesta: Ayuda con los checkbox

Si seleccionan el checkbox, $_POST['puntos'] tendria valor, seria != "" o !empty()

Código PHP:
$boolPuntos = (!empty($_POST['puntos'])) ? 50 0
Y luego en el insert pones como value $boolPuntos, que dependiendo de $_POST['puntos'] valdra 0 o 50.

Espero que te sirva.
__________________
Si aún lo llevas, dejalo...
Programador PHP argentina
  #3 (permalink)  
Antiguo 18/02/2011, 12:42
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Ayuda con los checkbox

Cita:
Iniciado por ric_6884 Ver Mensaje
Código:
<form id="form1" name="form1" method="post" action="prueba2.php">
$consulta="Select nombre from lideres";
$result= mysql_query($consulta) ;
while($row = mysql_fetch_array($result)){ 
echo '<table border="1">
  <tr>
    <td width="167">'.$row[nombre].'</td>
    <td width="167">
	<input name="puntos" type="checkbox" value="50" />
    </td>
  </tr>'; } echo'

</table>   <input name="guardar " type="submit" value="guardar" />';
la tabla de la base de datos quedaria algo como:

nombre ------ puntos
pedro ------- 50 (si lo selecciono)
juan -- -- - - 0 (si no lo selecciono)
carlos ------- 50

y asi sucesivamente, espero me entiendan, y muchas gracias por la ayuda
1ro: <input name="puntos_<?php echo $row[id] ?>" type="checkbox" value="50" />
2do: agrega esto <input name="idUsuario_<?php echo $row[id] ?>" type="hidden" value="<?php echo $row[id] ?>" />
3do: mostranos en un var_dump lo que te llega
  #4 (permalink)  
Antiguo 18/02/2011, 13:14
 
Fecha de Ingreso: febrero-2011
Mensajes: 4
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Ayuda con los checkbox

Cita:
Sommy

Si seleccionan el checkbox, $_POST['puntos'] tendria valor, seria != "" o !empty()

Código PHP:
$boolPuntos = (!empty($_POST['puntos'])) ? 50 : 0;
Y luego en el insert pones como value $boolPuntos, que dependiendo de $_POST['puntos'] valdra 0 o 50.

Espero que te sirva.
muy bien, pero como hago para que me guarde para cada uno de los que aparecen, ya que son bastantes dependiendo de los que esten registrados. No se con un for o un while pero como quedaria la sentencia???



Patriarka el $row[id] se refiere a la clave primaria de la tabla lideres?? o sea tengo que primero hacer una consulta asi: "select id from lideres" o algo asi?? no entiendo mucho de esto soy nuevo y como hago lo del var_dump nunca habia escuchado eso. Gracias por las respuestas...
  #5 (permalink)  
Antiguo 18/02/2011, 13:43
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Ayuda con los checkbox

es el id del lider, con ese dato identificamos a cual es checkbox del lider
y de nuevo mostranos que te llega en la pagina de proceso con el var_dump($_REQUEST)
  #6 (permalink)  
Antiguo 18/02/2011, 14:13
 
Fecha de Ingreso: febrero-2011
Mensajes: 4
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Ayuda con los checkbox

perdon mi ignorancia pero no se como regojer el valor, seria algo como esto:
Código PHP:
Ver original
  1. $valor=$_POST[puntos_$row[id]], y para el var_dump seria var_dump ($_POST[puntos_$row[id]]);
no me funciona esto
  #7 (permalink)  
Antiguo 18/02/2011, 14:30
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Ayuda con los checkbox

cuando envias el formulario a prueba2.php
escribi:
<?php
var_dump($_REQUEST);
?>
y vas a ver los datos que te llegaron del formulario.
en forma de array, podes ver el nombre de las variables

y lo accedes con el NAME del campo, como van a ser indefinidos necesitamos el id por un lado
para saber a quien corresponden esos datos.

yo me voy hasta el domingo pero seguro con esto alguien te va a ayudar a terminarlo.
  #8 (permalink)  
Antiguo 18/02/2011, 14:36
 
Fecha de Ingreso: febrero-2011
Mensajes: 4
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Ayuda con los checkbox

gracias de todas maneras lo que me muestra es esto:

array(5) { ["puntos_123456"]=> string(2) "50" ["idUsuario_123456"]=> string(6) "123456" ["idUsuario_147852"]=> string(6) "147852" ["guardar_"]=> string(7) "guardar" ["PHPSESSID"]=> string(32) "acbe92d49ce014e4fc79b13c897ba179" } .

Habian dos selecionables, y solo seleccione uno

Etiquetas: checkbox, chekbox, guardar, mysql
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:35.