Foros del Web » Programando para Internet » PHP »

como recibir los datos de varios checkbox con el mismo nombre en php c

Estas en el tema de como recibir los datos de varios checkbox con el mismo nombre en php c en el foro de PHP en Foros del Web. Miren este es mi problema encontre este ejemplo en la web, pero no se como recibirlos valores en php <script language="javascript"> function validate(form1){ for(var i ...
  #1 (permalink)  
Antiguo 03/04/2009, 19:13
Avatar de asassa  
Fecha de Ingreso: julio-2008
Ubicación: En el DF ectuoso
Mensajes: 240
Antigüedad: 15 años, 9 meses
Puntos: 0
Sonrisa como recibir los datos de varios checkbox con el mismo nombre en php c

Miren este es mi problema encontre este ejemplo en la web, pero no se como recibirlos valores en php

<script language="javascript">
function validate(form1){
for(var i = 0; i < form1.checbox.length; i++){
if(form1.checbox[i].checked)return true;
}
alert('Debes seleccionar al menos una opcion');
return false;
}
</script>

</head>
<body >
<form name='form1' onsubmit='validate(this);' action="r.php" method="POST">
<input type='checkbox' name='checbox' value='valor1' />
<input type='checkbox' name='checbox' value='valor2' />
<input type='checkbox' name='checbox' value='valor3' />
<input type='checkbox' name='checbox' value='valor4' />
<input type='submit' />
</form>

Asi lo pensaba recibir en php pero solo se almacena y se muestra el ultimo es decir el de valor 4 es loas 4 varuiables
<?php
$var1=$_POST['checbox'];
$var2=$_POST['checbox'];
$var3=$_POST['checbox'];
$var4=$_POST['checbox'];
echo $var1;
echo $var2;
echo $var3;
echo $var4;
?>

Como puedo recibir la cadena en php?
  #2 (permalink)  
Antiguo 03/04/2009, 19:19
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: como recibir los datos de varios checkbox con el mismo nombre en php c

No se puede, cada checkbox debe tener un nombre unico y lo recibes en POST solo cuando esta marcado.
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 03/04/2009, 19:25
Avatar de pepeverastegui  
Fecha de Ingreso: septiembre-2008
Ubicación: Pedernales, Michoacan
Mensajes: 82
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: como recibir los datos de varios checkbox con el mismo nombre en php c

tienes tu formulario y lo recibes como cualquier otra variable

$campos = $_POST[check];

entonces al llamarse igual varios componentes esto te manda un arreglo

for($aux=0; $aux<count($campos); $aux++)
{
print $campos[$aux] . "<br>";
}

y eso te imprime los check box que fueron verificados

espero sirva
  #4 (permalink)  
Antiguo 03/04/2009, 21:23
Avatar de argy  
Fecha de Ingreso: octubre-2007
Ubicación: Longitud 75º Latitud 18º Sur
Mensajes: 614
Antigüedad: 16 años, 5 meses
Puntos: 18
Respuesta: como recibir los datos de varios checkbox con el mismo nombre en php c

a ver no entiendo tu lógica de querer utilizar checkbox para lo que quieres hacer, claro que de funcionar funciona, pero será como un radiobutton, entonces que lógica tiene eso, si los radio button es para seleccionar uno de un conjunto de opciones y los checkbox para seleccionar más de uno del conjunto, entonces notas que cada cosa hace lo que debe hacer????

otro un índice asociativo de una variable siempre va entre comillas dobles o simples, sino php buscará una constante con ese nombre primero, ves que le das un trabajo más a php????,
además esto está en las faqs del foro, en la página de php, etc.
__________________
Software libre para un mundo libre.

Eventualmente en el foro.
  #5 (permalink)  
Antiguo 04/04/2009, 07:08
 
Fecha de Ingreso: marzo-2009
Mensajes: 35
Antigüedad: 15 años, 1 mes
Puntos: 0
De acuerdo Respuesta: como recibir los datos de varios checkbox con el mismo nombre en php c

hey man justo estaba trabajando en eso...ahi te va un ejemplo.


Formulario Html:

array.html
Código HTML:
<form id="form1" name="form1" method="post" action="array_recive.php">
  <label>Casilla 1
  <input name="casilla[]" type="checkbox" id="1" value="1" />
  </label>  
  
    <label>Casilla 2
  <input name="casilla[]" type="checkbox" id="1" value="2" />
  </label>
  
    <label>Casilla 3
  <input name="casilla[]" type="checkbox" id="3" value="3" />
  </label>
  
    <p>
      <label>
      <input type="submit" name="button" id="button" value="Enviar" />
      </label>
  </p>
</form> 
formulario php que recive:

array_recive.php

Código PHP:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Array - recive</title>
</head>

<body>
<?
    
foreach ($_POST['casilla'] as $value){
    echo 
$value;
}
// $arr is now array(2, 4, 6, 8)
unset($value);


?>
</body>
</html>
  #6 (permalink)  
Antiguo 07/04/2009, 12:00
Avatar de asassa  
Fecha de Ingreso: julio-2008
Ubicación: En el DF ectuoso
Mensajes: 240
Antigüedad: 15 años, 9 meses
Puntos: 0
De acuerdo Respuesta: como recibir los datos de varios checkbox con el mismo nombre en php c

Hola , no he podido revisar el foro asta apenas ahorita , para aclarar lo que me pegunta argy, no es que quiera usar los check box como radio boton sino que simplemente poder hacer una validacion para que el usuario siempre seleccione almenos una( pueden ser varias ) opcion y enviarle los valores de los checbox correspondientes, bueno les platico investigando un poco mas en el tama me encotre con el siguiente script de java , que me permite seleccionar almenos un checkbox

function validar(form1) {
contador=0;
for(i=0;i<form1.elements.length;i++)
if(form1.elements[i].type=="checkbox")
if(form1.elements[i].checked)
contador++
if(contador==0) {
alert('Marque al menos una base de datos');
return false;
}

}
</script>

donde el from queda de la siguiente manera.

<form name="form1" method="POST" action="array3.php" target="_blank" onSubmit=" validar(form1)">

y los checkbox quedan asi

<input type="checkbox" name="checkbox1" value="valor1">
<input type="checkbox" name="checkbox2" value="valor2">
<input type="checkbox" name="checkbox3" value="valor3">

y el php los recibo con

$var1=$_POST['checkbox1'];
$var2=$_POST['checkbox2'];
$var3=$_POST['checkbox3'];


Tabien agradesco su interes en el tema
  #7 (permalink)  
Antiguo 07/04/2009, 14:46
Avatar de argy  
Fecha de Ingreso: octubre-2007
Ubicación: Longitud 75º Latitud 18º Sur
Mensajes: 614
Antigüedad: 16 años, 5 meses
Puntos: 18
Respuesta: como recibir los datos de varios checkbox con el mismo nombre en php c

mmm? script de java o javascript, debes de tener muy en cuenta que son dos cosas diferentes.

que bien que hayas solucionado.

suerte.
__________________
Software libre para un mundo libre.

Eventualmente en el foro.
  #8 (permalink)  
Antiguo 09/05/2009, 12:20
Avatar de luismi2505  
Fecha de Ingreso: abril-2009
Mensajes: 5
Antigüedad: 15 años
Puntos: 0
Respuesta: como recibir los datos de varios checkbox con el mismo nombre en php c

al final solo le cambiajte el nombre...
pero el problemas era capturarlo con el mismo nombre...
bueno...
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 09:10.