guardar campos ocultos en base de datos

Iniciado por jecavi20, 5 Julio 2013, 22:51 PM

0 Miembros y 1 Visitante están viendo este tema.

jecavi20

buenas tardes amigos, tengo otra duda ahora a ver si me pueden ayudar, tengo un select option que cuando seleccionan una opcion aparecen dos mas que estan ocultos y cambian mediante la opcion que selecciones, en total son cuatro ocultos pero cuando los voy a guardar en la base de datos no me deja porque a los que estan ocultos no les puedo poner el mismo valor, mejor vean el codigo que tengo:

Código (html4strict) [Seleccionar]


Escoja su Bloque
<br>
</br>
<form name="form">
<td><select name="bloque" onchange="cambiarCapas(this)">
    <option value="">Seleccione </option>
    <option value="bloque29">bloque 29</option>
    <option value="bloque30">bloque 30</option>
<option value="bloque31">bloque 31</option>
    <option value="bloque32">bloque 32</option>
</select></td>
<td>

<div id="capa3" style="display:none;">
<b>Letra</b> <select name="letra" id="letra" onchange="cambia(this,'apto')">
<option value="">letra</option>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
<option value="D">D</option>
<option value="E">E</option>
</select>

<script language="javascript">

function addOpt(oCntrl, iPos, sTxt, sVal){
var selOpcion=new Option(sTxt, sVal);
eval(oCntrl.options[iPos]=selOpcion);
}

function cambia(obj,Cntrl){
var oCntrl=document.getElementById(Cntrl);
while (oCntrl.length!=0){
oCntrl.remove(0);
}
switch (obj.selectedIndex){
case 0:
addOpt(oCntrl, 0, "Letra", "0");
break;
case 1:
addOpt(oCntrl, 0, "Apto", "0");
addOpt(oCntrl, 1, "Apto AA", "1");
addOpt(oCntrl, 2, "Apto 01", "2");
addOpt(oCntrl, 3, "Apto 10", "3");
addOpt(oCntrl, 4, "Apto 11", "4");
addOpt(oCntrl, 5, "Apto 20", "5");
break;
case 2:
addOpt(oCntrl, 0, "Apto", "0");
addOpt(oCntrl, 1, "Apto 02", "1");
addOpt(oCntrl, 2, "Apto 03", "2");
addOpt(oCntrl, 3, "Apto 12", "3");
addOpt(oCntrl, 4, "Apto 13", "4");
addOpt(oCntrl, 5, "Apto 22", "5");
addOpt(oCntrl, 6, "Apto 23", "6");
break;
case 3:
addOpt(oCntrl, 0, "Apto", "0");
addOpt(oCntrl, 1, "Apto 04", "1");
addOpt(oCntrl, 2, "Apto 05", "2");
addOpt(oCntrl, 3, "Apto 14", "3");
addOpt(oCntrl, 4, "Apto 15", "4");
addOpt(oCntrl, 5, "Apto 24", "5");
addOpt(oCntrl, 6, "Apto 25", "6");
break;
case 4:
addOpt(oCntrl, 0, "Apto", "0");
addOpt(oCntrl, 1, "Apto 06", "1");
addOpt(oCntrl, 2, "Apto 07", "2");
addOpt(oCntrl, 3, "Apto 16", "3");
addOpt(oCntrl, 4, "Apto 17", "4");
addOpt(oCntrl, 5, "Apto 26", "5");
break;
case 5:
addOpt(oCntrl, 0, "Apto", "0");
addOpt(oCntrl, 1, "Apto 08", "1");
addOpt(oCntrl, 2, "Apto 09", "2");
addOpt(oCntrl, 3, "Apto 18", "3");
addOpt(oCntrl, 4, "Apto 19", "4");
addOpt(oCntrl, 5, "Apto 28", "5");
addOpt(oCntrl, 6, "Apto 29", "6");
break;
}
}
</script>

<b>Apto</b>
<select name="apto" id="apto" onChange="cambia(this,'')">
      <option value="">Apto</option>
  </select> 
</form>

</div>


<div id="capa2" style="display:none;">
<b>Letra</b> <select name="letra2" id="letra2" onchange="cambia3(this,'apto2')" >
<option value="">letra</option>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
<option value="D">D</option>
</select>

<script language="javascript">

function cambia3(obj,Cntrl){
var oCntrl=document.getElementById(Cntrl);
while (oCntrl.length!=0){
oCntrl.remove(0);
}
switch (obj.selectedIndex){
case 0:
addOpt(oCntrl, 0, "Letra", "0");
break;
case 1:
addOpt(oCntrl, 0, "Apto", "0");
addOpt(oCntrl, 1, "A1", "1");
addOpt(oCntrl, 2, "A2 ", "2");
addOpt(oCntrl, 3, "A3", "3");
addOpt(oCntrl, 4, "A4", "4");
break;
case 2:
addOpt(oCntrl, 0, "Apto", "0");
addOpt(oCntrl, 1, "B1 ", "1");
addOpt(oCntrl, 2, "B2", "2");
addOpt(oCntrl, 3, "B3", "3");
addOpt(oCntrl, 4, "B4 ", "4");
addOpt(oCntrl, 5, "B5", "5");
break;
case 3:
addOpt(oCntrl, 0, "Apto", "0");
addOpt(oCntrl, 1, "C1 ", "1");
addOpt(oCntrl, 2, "C2", "2");
addOpt(oCntrl, 3, "C3", "3");
addOpt(oCntrl, 4, "C4 ", "4");
addOpt(oCntrl, 5, "C5", "5");
break;
case 4:
addOpt(oCntrl, 0, "Apto", "0");
addOpt(oCntrl, 1, "D1 ", "1");
addOpt(oCntrl, 2, "D2", "2");
addOpt(oCntrl, 3, "D3", "3");
addOpt(oCntrl, 4, "D4 ", "4");
addOpt(oCntrl, 5, "D5", "5");
break;
}
}

</script>
<b>Apto</b>
<select name="apto2" id="apto2" onChange="cambia3(this,'')">
      <option value="">Apto</option>
  </select> 
</form>
</td>
</div>

<script>

function cambiarCapas(elSelect) {
    var idCapaAmostrar;
    //escogemos la que nos interesa
    //según el texto de la opcion seleccionada del select
    switch( elSelect.options[ elSelect.options.selectedIndex ].text ) {       
        case"bloque 29":
            idCapaAmostrar="capa3";
        break;
        case"bloque 30":
            idCapaAmostrar="capa3";
        break;
case"bloque 31":
            idCapaAmostrar="capa2";
        break;
        case"bloque 32":
            idCapaAmostrar="capa2";
        break;
    }
    var lasCapas=["capa3","capa2"];
    for(var i in lasCapas)                                                //ocultamos todas
        document.getElementById(lasCapas[i]).style.display="none";
    if(idCapaAmostrar!=undefined)
        document.getElementById(idCapaAmostrar).style.display="block";        //mostramos la que nos interesa
}

</script>



mi duda es si se pueden guardar el name="letra" y name="letra2" en el mismo campo en la bd y tambien el name="apto" y name="apto2" en el mismo campo en la bd y como hacerlo

muchasimas gracias de antemano por su gran ayuda

1mpuls0

Honestamente no te entendí.

En primera tu código no tiene una estructura muy correcta que digamos.
Podrías dar un ejemplo de lo que quieres hacer con los datos (precisamente como estan en tus selects) de lo que quieres hacer.

Saludos.
abc

jecavi20

es que no se mucho de programacion, lo que quiero decir es que cuando uno escoje por ejemplo en bloque 29 o el 30 aparece el select oculto de letra y apto y cuando escojes el 31 o 32 aparecen tambien los mismos select pero con letras distintas y aptos distintos y cuando los envias a la base de datos, los select de los bloques 29 y 30 no tienen el mismo name o valor que los 31 y 32 yo queria guardarlos todos en una sola tabla con los campos bloque, campo letra y campo apto   si se puede claro