Hola, le comento que es lo que tengo que hacer, va a ser un sistema en el cual se va a registrar a usuarios y dentro del formulario de registro pueden escoger mediante varios checkbox temas de su preferencia y de las cuales se impartiran talleres y así después mandarles información a sus correos dependiendo de las opciones que se escogieron.
Lo que tengo la duda es para hacer el registro de los checkbox en la BD, ahorita por el momento solo estoy haciendo pruebas solo con los checkbox.
Cada opción del checkbox lo cargo desde una tabla de la base de datos en donde tengo guardado cada taller.
Ya estuve leyendo otros post aquí en el foro y me di la idea de que debo tratar a los check como un array.
La manera en la que lo cargo es la siguiente:
Código PHP:
Ver original<?php
$query2 = ("select * from talleres");
?>
<form name="interes" action="mostrar.php" method="post">
<?php
echo "<input type='checkbox' name='inter[]' value=".$row['id_taller'].">".$row['nombre']." <br>";
}
?>
<br>
<input type="submit" value="enviar">
</form>
Y los mando mediante post, y los capturo de esta forma:
Código PHP:
Ver original$interes=$_POST['inter'];
$_POST['check'] = $interes;
//verificamos si se envía un array
//el titulo
echo "<strong>Los siguientes talleres han sido escogidos:</strong><br /><br />";
while(list($key,$value) = each($_POST['check'])) {
//hacemos el insert
$query="INSERT INTO tallerFam (taller) VALUES ($value)";
//hacemos el query
//hacemos echo a los talleres
echo $value.'<br />';
}
}
else {
//si no es array se envía un mensaje
echo "La información enviada no es un array";
}
?>
con eso me muestra una lista de los seleccionados y los inserta en la tabla de la bd.
Esto hace un registro en la tabla por cada check seleccionado, eso quiere decir que si selecciono 5 inserta 5 registros en la tabla.
El detalle seria que solo insertara un solo registro por todo, ya que se supone que son las opciones que selecciono el mismo usuario.
Si alguien tiene alguna sugerencia de como hacerle o alguna corrección de lo que llevo desde ya muchas gracias.