checkboxes de idiomas

urtea
18 de Octubre del 2004
Hola a [email protected]
Tengo el siguiente codigo para ingresar en la DB. el POST-[en] es un array del idioma ingles que contiene las casillas elegidas (selected) por el usuario. 1 habla, 2 escribe, 3 lee y 4 traduce. Cuando el array contiene mas de un selected me guarda solo el ultimo que comprueba el foreach.
He encontrado algun foro con respuestas pero ninguno se parece a esto...
estoy haciendo bien?
como lo veis?

codigo:



foreach($_POST['en'] as $actividad) {

if ($actividad == 1) {
$habla ="habla,";
$ac_habla = "1,";
} else {

$habla = "";
$ac_habla = "";
}
if ($actividad == 2) {
$escribe ="escribe,";
$ac_escribe = "2,";
} else {

$escribe = "";
$ac_escribe = "";
}
if ($actividad == 3) {
$traduce ="traduce,";
$ac_traduce = "3,";
} else {

$traduce = "";
$ac_traduce = "";
}
if ($actividad == 4) {
$lee ="lee,";
$ac_lee = "4,";
} else {

$lee = "";
$ac_lee = "";
}
}

require("configs/connect.php");

$sql= "insert into idiomas (cv_id, idioma, ".$habla."".$escribe."".$lee."".$traduce."1) values ('".$_GET['cvid']."', 'Inglés', ".$ac_habla."".$ac_escribe."".$ac_lee."".$ac_traduce.");";
$result = mysql_query($sql) or die("Couldn´t execute: $sql.");

mysql_close($connection);

gracias de antemano...