Академический Документы
Профессиональный Документы
Культура Документы
PHP-Hispano.net
Comunidad hispana de desarrollo web
Inicio / Foros / PHP / Cargar valor de un combo en un txt
#0
cesar
07 Mar 07
Hola amigos que tal a ver si me hechan una mano, estoy tratando de hacer lo siguiente Tengo un combo que me trae los datos de la base de un producto pero quiero llenar unas las cajas de texto en base a lo que el usuario escoja del combo por ejemplo Escoje teclado en la columna de descripcion deberia aparecer 102 teclas y junto precio 50 por ejemplo, puedo ya llenar el combo pero no se como hacer para dependiendo del valor seleccionado me salgan los valores en las cajas de texto Esto es lo que tengo con esto lleno mi combo <? $sql=\"SELECT NOMBRE_PRODUCTO FROM producto \"; $result=mysql_query($sql,$db); if (mysql_num_rows($result) >0) { echo \"<select name=\'selecprod\' id=\'selecprod\'>\"; while ($row = mysql_fetch_array($result)) { echo \"<option value= \'\".$row[\'CODIGO_PRODUCTO\'].\"\'>\".$row[\'NOMBRE_PRODUCTO\'].\"</option>\"; } \"</select>\"; } ?>
#1
panino
07 Mar 07
Eso debera arrrojarte un error, ya que slo ests consultando el valor de la columna NOMBRE_PRODUCTO y luego asignas como value a CODIGO_PRODUCTO. Pero fuera de eso, de dnde saldran los valores a asignar a los campos de texto?
www.disegnocentell.com.ar
34
#2
cesar
07 Mar 07
Bueno no me sale error la verdad me carga el nombre del producto de la base de datos, y estos valores saldrian de ahi mismo tengo una tabla que se llama producto y los campos son:
Nivel 3 (230 posts)
0
Entocnes la idea es que el combo carga nombre del producto al seleccionar ahi automaticamente deberia en calas de texto automaticamente salir lo que corresponda en las otras columnas No se si ahi esta un poco mas claro mi problema
Gracias
#3
panino
07 Mar 07
34
< ? p h p / * l ac o n e x i nal ad b * / $ s q l = " S E L E C T*F R O Mp r o d u c t o\ " ; $ r e s u l t = m y s q l _ q u e r y ( $ s q l ) ; ? > < ! D O C T Y P Eh t m lP U B L I C\ " / / W 3 C / / D T DX H T M L1 . 0T r a n s i t i o n a l / / E N \ "\ " h t t p : / / w w w . w 3 . o r g / T R / x h t m l 1 / D T D / x h t m l 1 t r a n s i t i o n a l . d t d \ " > < h t m lx m l n s = \ " h t t p : / / w w w . w 3 . o r g / 1 9 9 9 / x h t m l \ " > < h e a d > < m e t ah t t p e q u i v = \ " C o n t e n t T y p e \ "c o n t e n t = \ " t e x t / h t m l ;c h a r s e t = i s o 8 8 5 9 1 \ "/ > < t i t l e > t e s t < / t i t l e > < / h e a d > < b o d y > < f o r mi d = \ " f o r m 1 \ "n a m e = \ " f o r m 1 \ "m e t h o d = \ " p o s t \ "a c t i o n = \ " \ " > < ? p h p
www.php-hispano.net/foros/PHP/20121-cargar-valor-de-un-combo-en-un-txt
1/6
12/10/13
? >
< s e l e c tn a m e = \ " s e l e c p r o d \ "i d = \ " s e l e c p r o d \ "o n c h a n g e = \ " o t r o s d a t o s . v a l u e = t h i s . o p t i o n s [ t h i s . s e l e c t e d I n d e x ] . g e t A t t r i b u t e ( \ ' d e < o p t i o nv a l u e = \ " \ "d e s c r i p c i o n = \ " \ "c a n t i d a d = \ " \ "p r e c i o = \ " \ " > s e l e c c i o n a r < / o p t i o n > < ? p h p w h i l e( $ r o w=m y s q l _ f e t c h _ a s s o c ( $ r e s u l t ) ) { ? > < o p t i o nv a l u e = \ " < ? p h pe c h o$ r o w [ \ ' C O D I G O _ P R O D U C T O \ ' ]? > \ "d e s c r i p c i o n = \ " < ? p h pe c h o$ r o w [ \ ' D E S C R I P C I O N _ P R O D U C T O \ ' ]? > \ "c a n t i d a d = \ " < ? p h pe c h o$ r o w [ \ ' C A N T I D A D _ P R O D U C T O \ ' ]? > \ "p r e c i o = \ " < ? p h pe c h o$ r o w [ \ ' P R E C I O _ P R O D U C T O \ ' ]? > \ " > < ? p h pe c h o$ r o w [ \ ' N O M B R E _ P R O D U C T O \ ' ]? > < / o p t i o n > < ? p h p } ? > < / s e l e c t > < t e x t a r e an a m e = \ " o t r o s d a t o s \ "i d = \ " o t r o s d a t o s \ " > < / t e x t a r e a > < / f o r m > < ? p h p } ? > < / b o d y > < / h t m l >
www.disegnocentell.com.ar
#4
cesar
07 Mar 07
Es justo lo que necesitaba pero no le entiendo mucho me podrias decir basicamente donde debo poner para aumentar mas campos, es decir en que parte del codigo debo cambiar para que me coga en el resto de campos he cambiado pero no le entiendo bien el ejemplo
gracias
Y disculpa
#5
panino
08 Mar 07
< o p t i o nv a l u e = \ " \ "d e s c r i p c i o n = \ " \ "c a n t i d a d = \ " \ "p r e c i o = \ " \ "o t r o a t r i b u t o = \ " l o q u es e a \ " o t r o a t r i b u t o m a s = \ " l o q u eq i e r a s \ " > s e l e c c i o n a r < / o p t i o n > Luego, para recoger el valor, se usa: elemento.getAttribute(\'nombredelatributo\'); Los elementos options se guardan en el array options, de ah this.options[this.selectedIndex].getAttribute(\'precio\') para obtener por ejemplo el atributo precio. El signo ms es como el punto en php: sirve para concatenar. Cualquier otra duda, aqu estamos ;)
www.disegnocentell.com.ar
34
#6
cesar
08 Mar 07
Veras este es el codigo que tu me enviaste y le aumente los otros campos pero no me funciona es decir solo carga los valores en el primero y el segundo y en los otros dos nada que ver ayudame gracias
Nivel 3 (230 posts)
<?php include(\"Connections/conexlocal.php\"); $sql=\"SELECT * FROM producto \"; $result=mysql_query($sql); ?> <!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1transitional.dtd\"> <html xmlns=\"http://www.w3.org/1999/xhtml\"> <head> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\" /> <title>test</title> </head> <body> <form id=\"form1\" name=\"form1\" method=\"post\" action=\"\"> <?php if (mysql_num_rows($result) >0) { ?> <select name=\"selecprod\" id=\"selecprod\" onchange=\"otrosdatos.value=this.options[this.selectedIndex].getAttribute(\'descripcion\')+\' \'+this.options[this.selectedIndex].getAttribute(\'cantidad\')+\' - \'+this.options[this.selectedIndex].getAttribute(\'precio\')\"> <option value=\"\" descripcion=\"\" cantidad=\"\" precio=\"\">seleccionar</option> <?php while ($row = mysql_fetch_assoc($result)){ ?> <option value=\"<?php echo $row[\'CODIGO_PRODUCTO\'] ?>\" selected=\"selected\" descripcion=\"<?php echo $row[\'DESCRIPCION_PRODUCTO\'] ?>\" cantidad=\"<?php echo $row[\'CANTIDAD_PRODUCTO\'] ?>\" precio=\"<?php echo $row[\'PRECIO_PRODUCTO\'] ?>\"><?php echo $row[\'NOMBRE_PRODUCTO\'] ?></option> <?php } ?> </select>
www.php-hispano.net/foros/PHP/20121-cargar-valor-de-un-combo-en-un-txt
2/6
12/10/13
#7
Prob as:
Nivel 6 (1498 posts)
panino
08 Mar 07
34
< ? p h p i n c l u d e ( " C o n n e c t i o n s / c o n e x l o c a l . p h p \ " ) ; $ s q l = \ " S E L E C T*F R O Mp r o d u c t o\ " ; $ r e s u l t = m y s q l _ q u e r y ( $ s q l ) ; ? > < ! D O C T Y P Eh t m lP U B L I C\ " / / W 3 C / / D T DX H T M L1 . 0T r a n s i t i o n a l / / E N \ "\ " h t t p : / / w w w . w 3 . o r g / T R / x h t m l 1 / D T D / x h t m l 1 t r a n s i t i o n a l . d t d \ " > < h t m lx m l n s = \ " h t t p : / / w w w . w 3 . o r g / 1 9 9 9 / x h t m l \ " > < h e a d > < m e t ah t t p e q u i v = \ " C o n t e n t T y p e \ "c o n t e n t = \ " t e x t / h t m l ;c h a r s e t = i s o 8 8 5 9 1 \ "/ > < t i t l e > t e s t < / t i t l e > < / h e a d >
< b o d y > < f o r mi d = \ " f o r m 1 \ "n a m e = \ " f o r m 1 \ "m e t h o d = \ " p o s t \ "a c t i o n = \ " \ " > < ? p h p i f( m y s q l _ n u m _ r o w s ( $ r e s u l t )> 0 ){ ? > < s e l e c tn a m e = \ " s e l e c p r o d \ "i d = \ " s e l e c p r o d \ "o n c h a n g e = \ " o t r o s d a t o s . v a l u e = t h i s . o p t i o n s [ t h i s . s e l e c t e d I n d e x ] . g e t A t t r i b u t e ( \ ' d e < o p t i o nv a l u e = \ " \ "d e s c r i p c i o n = \ " \ "c a n t i d a d = \ " \ "p r e c i o = \ " \ " > s e l e c c i o n a r < / o p t i o n > < ? p h p w h i l e( $ r o w=m y s q l _ f e t c h _ a s s o c ( $ r e s u l t ) ) { ? > < o p t i o nv a l u e = \ " < ? p h pe c h o$ r o w [ \ ' C O D I G O _ P R O D U C T O \ ' ]? > \ "d e s c r i p c i o n = \ " < ? p h pe c h o$ r o w [ \ ' D E S C R I P C I O N _ P R O D U C T O \ ' ]? > \ "c a n t i d a d = \ " < ? p h pe c h o$ r o w [ \ ' C A N T I D A D _ P R O D U C T O \ ' ]? > \ "p r e c i o = \ " < ? p h pe c h o$ r o w [ \ ' P R E C I O _ P R O D U C T O \ ' ]? > \ " > < ? p h pe c h o$ r o w [ \ ' N O M B R E _ P R O D U C T O \ ' ]? > < / o p t i o n > < ? p h p } ? > < / s e l e c t > < i n p u tn a m e = \ " o t r o s d a t o s \ "t y p e = \ " t e x t \ "i d = \ " o t r o s d a t o s \ "v a l u e = \ " \ "s i z e = \ " 5 0 \ "m a x l e n g t h = \ " 5 0 \ "d i s a b l e dr e a d o n l y > < i n p u tn a m e = \ " c a t i d a d \ "t y p e = \ " t e x t \ "i d = \ " c a t i d a d \ "v a l u e = \ " \ "s i z e = \ " 1 0 \ "m a x l e n g t h = \ " 1 0 \ "d i s a b l e dr e a d o n l y > < i n p u tn a m e = \ " p r e c i o \ "t y p e = \ " t e x t \ "i d = \ " p r e c i o \ "v a l u e = \ " \ "s i z e = \ " 1 0 \ "m a x l e n g t h = \ " 1 0 \ "d i s a b l e dr e a d o n l y > < / f o r m > < ? p h p } ? > < / b o d y > < / h t m l >
www.disegnocentell.com.ar
#8
cesar
08 Mar 07
Listo ahi si ya te lo agradesco mucho ahora si ya entendi como hacerlo, por cierto de pronto tienes por ahi como hacer dos combos anidados pero con php sacando datos desde la base???
Nivel 3 (230 posts)
Gracias
#9
Fijate ac
Nivel 6 (1498 posts)
panino
08 Mar 07
www.disegnocentell.com.ar
34
#10
cesar
08 Mar 07
Si lo vi la otra vez pero esta hecho con una funcion recordset no se que tan beneficioso sea esto es mas lento o no se me puedes ayudar
Nivel 3 (230 posts)
#11
panino
08 Mar 07
Fijate entonces en Ajax: http://www.formatoweb.com.ar/ajax/select_dependientes.php Y si tens dudas, abr otro post en ajax o javascript ;)
www.php-hispano.net/foros/PHP/20121-cargar-valor-de-un-combo-en-un-txt
3/6
12/10/13
34
#12
cesar
08 Mar 07
#13
cesar
08 Mar 07
Estoy con un problema sabes que ya me funciona todo super bien pero, cuando el usuario ya escoge una opcion se cargan a los txt los datos de la base pero hay un campo que es la cantidad que el usuario ingresa manualmente porque es la cantidad de articulos que requiere, es decir este campo no lo trae de la base, ahora si el usuario escoje otra opcion del combo se queda la cantidad que ingreso anteriormente como se podria hacer para que si cambia de opinion es decir escoge otro producto automaticamente este campo vuelva a quedar en blanco
Gracias
#14
panino
08 Mar 07
Si entiendo bien, lo que necesitas es que la cantidad no sea leda de la base de datos sino que se cargue manualmente. Si esyo es as, basta con reemplazar esto: c a n t i d a d = \ " < ? p h pe c h o$ r o w [ C A N T I D A D _ P R O D U C T O ]? > \ " por esto otro: c a n t i d a d = \ " \ " Con eso, el atributo quedar vaco y no aparecer nada en el campo. No s si es eso u otra cosa.
www.disegnocentell.com.ar
34
#15
cesar
08 Mar 07
No no veras te explico La cosa esque aurita aparece el primer combo que depende de que el usuario seleccione se cargan el resto de cajas de texto, y el campo cantidad queda vacio porque el usuario ingresa aqui un valor segun lo que requiera, ahora existe un boton que dice agregar al pedido (asi esta funcionando aurita) Ahora que pasa si el usuario ya escoge el combo ingresa la cantidad y no da clic en el boton agregar sino que escoge otro producto, las cajas de texto se cargan sin problema pero el campo cantidad se queda con el valor anterior LA cosa seria que si el usuario escoge otra opcion del combo automaticamente se reinicie este campo es decir se quede en blanco
Gracias
#16
panino
09 Mar 07
Agreg al select una accion ms. Ahora tendrs algo como esto:
Nivel 6 (1498 posts)
34
A eso agregale esta accin: nombredelcampoquedebequedarvacio.value=\'\'; Es decir:
www.disegnocentell.com.ar
#17
cesar
09 Mar 07
www.php-hispano.net/foros/PHP/20121-cargar-valor-de-un-combo-en-un-txt
4/6
12/10/13
javajavadoo
Ex-usuario
29 May 08
los datos ya me aparecen perfectamente pero como hago para guardasr los datos que me aparecen en los campos???
Nivel 1 (2 posts)
javajavadoo
#19
Ex-usuario
29 May 08
Nivel 1 (2 posts)
Error - Que tengo mal!!! me muestra la data pero no cambia ninguno de los v
#20
israeldavi
07 Ene 11
Nivel 1 (1 posts)
<select name="id" id="id" onchange="otrosdatos.value=this.options[this.selectedIndex].getAttribute('forma_pago');fecha_pago.value=this.options[this.selectedIndex].getAttribute('fecha_pago');re <option value="" forma_pago="" fecha_pago="" referencia="">seleccionar</option> <?php while ($row = mysql_fetch_assoc($result)){ ?> <option value="<?php echo $row['id_pago'] ?>" forma_pago="<?php echo $row['forma_pago'] ?>" fecha_pago="<?php echo $row['fecha_pago'] ?>" referencia="<?php echo $row['referencia'] ?>"><?php echo $row['id_pago'] ?></option> <?php } ?> </select> <input name="otrosdatos" type="text" id="otrosdatos" value="" size="50" maxlength="50" disabled readonly> <input name="fecha_pago" type="text" id="fecha_pago" value="" size="10" maxlength="10" disabled readonly> <input name="referencia" type="text" id="referencia" value="" size="10" maxlength="10" disabled readonly>
Agradecimientos
#21
Spartmarcus
27 Abr 11
Nivel 1 (2 posts)
Quiero agradecer enormemente a Cesar y Panino ya que llevaba un rato atorado con esto de llenar los texbox, creo que fue una manera rpidisima y fcilmente entendible solo quiero preguntarles algo y es que trabajo con JSP y adapt el cdigo, solo me manda unos Warnings para las variables a la hora de ponerlas <option value="<%=edificios.getCveEdificio() %>" id_edificios="<%=edificios.getIdEdificio() %>" cve_edificio=" <%=edificios.getCveEdificio() %>" descripcion="<%=edificios.getDescripcionEdificio() %>" > <%=edificios.getDescripcionEdificio() %> </option> el Warning me indica "Undefined attribute name" sabran como quitar este Warning para q quede completamente limpio el programa? Gracias
#22
Eloy8857
27 Abr 11
Ests poniendo atributos que no existen en HTML (id_edificios, cve_edificio, descripcin...). Imagino que el error se refiere a eso.
Nivel 5 (973 posts) Restless Souls Online: se viene un gr an MMORPG
159
Asunto
#23
Spartmarcus
27 Abr 11
Nivel 1 (2 posts)
Muchas gracias Eloy, efectivamente esos atributos no existen en HTML no se porque se declaran en esa parte, solo segu los pasos indicados y la vdd que el programa jala de maravilla jejeje solo que quera ver si exista alguna forma de evitar esos Warnings
Re sponder me nsaje
Para poder participar debes ser un usuario registrado de PHP-Hispano. :: Deseo darme de alta en esta comunidad :: Login / Password Conectar
Temas relacionados
E Titulo Cargar un Combo desde la base Respuestas 3 ltima resp.
20 Feb 06
Creado el
mi, 15 feb 06 (18:20)
V isitas 6704
Foro
Javascr ipt
www.php-hispano.net/foros/PHP/20121-cargar-valor-de-un-combo-en-un-txt
5/6
12/10/13
Cargar variables en un formulario Problema con $_SESSION
6 1 0 6
05 Mar 07 por Onzalo 12 May 07 por NoSetup.or g ------25 Ene 06 por mr pr oper
PHP
PHP
CARGAR FUNCION DESPUES DE RESET() A FORMULARIO dado un select, segun seleccion me muestre otro
Javascr ipt
Javascr ipt
www.php-hispano.net/foros/PHP/20121-cargar-valor-de-un-combo-en-un-txt
6/6