Foros del Web » Programando para Internet » PHP »

como capturo un valor de un combo dinamico??

Estas en el tema de como capturo un valor de un combo dinamico?? en el foro de PHP en Foros del Web. hola a todos: tengo un problema con unos combos (<select></select>). Si mal no entiendo, al obtener el valor de un combo estatico de un formulario ...
  #1 (permalink)  
Antiguo 25/07/2005, 07:47
 
Fecha de Ingreso: junio-2005
Mensajes: 10
Antigüedad: 18 años, 10 meses
Puntos: 0
como capturo un valor de un combo dinamico??

hola a todos:tengo un problema con unos combos (<select></select>). Si mal no entiendo, al obtener el valor de un combo estatico de un formulario solo lo obtienes haciendo referencia al nombre del combo...verdad??....pero que pasa cuando en un formulario creas varios combos dinamicos...como capturas el valor de cada combo??. Les adjunto el codigo donde se generan los combos dinamicos a traves de los datos de la Base de Datos.

$sql_total="SELECT * FROM documento WHERE cl_rut='$rcliente' AND tdoc_cod IS NULL";
$res_total = mysql_query($sql_total) or die("La consulta fall&oacute;: " . mysql_error());
$num=mysql_numrows($res_total);
for($i=0;$i<$num;$i++)
{
$doc=mysql_result($res_total,$i,"DOC_NOMBRE");
$documento=strtoupper($doc);
$pre_text='nom_doc';
$final=$pre_text.$i;
echo"<td width='13%'><center>$documento</center></td>\n";

$sql_opcion_chk="SELECT * FROM tipo_documento";
$res = mysql_query($sql_opcion_chk) or die("La consulta fall&oacute;: " . mysql_error());
$num=mysql_numrows($res);
$prefijo = 'cmb_tipo_docto_';
$nomfinal=$prefijo.$i;
echo "<td width='20%'><center><select name='$nomfinal'>\n";
echo "<option value=''>(Selecciona el tipo de documento)</option>\n";
for ($j=0;$j<$num;$j++)
{
$cod_tipo_doc=mysql_result($res,$j,"DOC_ID");
$nom_tipo_doc=mysql_result($res,$j,"TDOC_NOMBRE");
echo "<option value=$cod_tipo_doc>$nom_tipo_doc</option>\n";
}
echo"</select></center></td>\n";
//************************************************** ******FIN***************************************** ****************************//
//********************************CODIGO QUE GENERA COMBOBOX CON EL NOMBRE DE LOS RESPONSABLES***********************************//
$sql_opcion_cons="SELECT us_nombre FROM usuario WHERE gr_cod='$cod_cons'";
$res_cons = mysql_query($sql_opcion_cons) or die("La consulta fall&oacute;: " . mysql_error());
$num_cons=mysql_numrows($res_cons);
$pre_cons='cmb_cons_';
$res_cb=$pre_cons.$i;
echo "<td width='20%'><center><select name='$res_cb' id='$res_cb'>\n";
echo "<option value=''>(Selecciona un responsable)</option>\n";
for ($s=0;$s<$num_cons;$s++)
{
$nom_resp=mysql_result($res_cons,$s,"US_NOMBRE");
echo "<option value=$nom_resp>$nom_resp</option>\n";
}
echo"</select></center></td>\n";
echo"</tr>";
echo"</table>";
echo"<center><input type='submit' name='btn_graba' value='Grabar'></center>";
echo"</form>";
echo"</center>";
echo"</body>";
echo"</html>";
exit;
}



En este codigo se generan tantos combos como documentos tenga un cliente....Les agradeceria cualquier ayuda.....chao
  #2 (permalink)  
Antiguo 26/07/2005, 06:41
 
Fecha de Ingreso: noviembre-2003
Mensajes: 383
Antigüedad: 20 años, 5 meses
Puntos: 2
Pues a cada combo le tienes que dar un nombre distinto ...

<select name="combo1" ...
<select name="combo2" ...
<select name="combo3" ...

... luego en la página que recibe el formulario lo usas así...

$_POST['combo1']
$_POST['combo2']
$_POST['combo3']
  #3 (permalink)  
Antiguo 26/07/2005, 09:00
 
Fecha de Ingreso: junio-2005
Mensajes: 10
Antigüedad: 18 años, 10 meses
Puntos: 0
Cita:
Iniciado por pellagofio
Pues a cada combo le tienes que dar un nombre distinto ...

<select name="combo1" ...
<select name="combo2" ...
<select name="combo3" ...

... luego en la página que recibe el formulario lo usas así...

$_POST['combo1']
$_POST['combo2']
$_POST['combo3']


Primero que nada gracias por tu tiempo pellagofio.....pero me voy a explicar otro poco. En lo que tu me dices estamos totalmente de acuerdo, pero el problema como te digo es que estos son dinamicos y si te fijas en la linea de codigo donde sale $prefijo='cmb_tipo_docto_' y luego sale $nomfinal=$prefijo.$i, pasa lo siguiente. Si un cliente tiene 5 documentos, se generarian 5 combos, es decir, como $prefijo='cmb_tipo_docto_' y todo lo demas esta en un ciclo for se crearian los nombres automaticos es decir ($nomfinal=cmb_tipo_docto_0,cmb_tipo_docto_1...... .cmb_tipo_docto4) hasta generar los 5 combos...pero que pasa si selecciono otro cliente y tiene 8 documentos, como capturo los 8 combos??...ese es mi problema en cuestion. La solucion que me diste esta buena, pero se aplica para combos estaticos (creo), ya que tu sabes cuantos combos tienes que recibir del formulario, pero en este caso no sabes, porque no sabes cuantos documentos tiene el cliente hasta que lo seleccionas.
  #4 (permalink)  
Antiguo 26/07/2005, 23:13
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
El límite es tu imaginación: http://www.forosdelweb.com/f18/recoger-datos-select-option-multiple-creado-dinamicamente-305890/ (el último script me parece es lo que quieres).

__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
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 08:37.