Programación Web y Scripting > PHP

 Combo Box Dinamicos

<< < (2/3) > >>

Mollense:
Si te referís a un query contra una DB creo que la mejor opción es utilizar ajax pero deberías explicarte mejor porque no te entiendo  :(

cinkey:
un ejemplo seria para autos y tipo de autos
en el ejemplo que me mostraste me da el resultado deseado
con ese resultado quiero hacer una consulta a la base de datos para que se llene otro combo con otro query
en si combos anidados

RadicalEd:
Checa este post, te servira para lo que quieres hacer Cargar datos en un combo

cinkey:
bueno este es el codigo, lo que quiero hacer es una funcion que cuando escoja la especialidad del doctor me aparescan en el combo  de doctores todos los que tienen esas especialidades en forma automatica con un queri


--- Código: Text --- &#60;?phpinclude(&#34;db2lib.php&#34;);&#036;link=conectarse();&#036;espel=&#036;_GET['especialidad'];&#036;codpa=&#036;_GET['paciente']; ?&#62; &#60;html&#62;&#60;strong&#62;&#60;/strong&#62;&#60;head&#62;&#60;title&#62;cuerpo&#60;/title&#62;&#60;link rel=&#34;STYLESHEET&#34; type=&#34;text/css&#34; href=&#34;estilo.css&#34;&#62; &#60;script language=&#34;JavaScript&#34; type=&#34;text/javascript&#34;&#62;      function asignar(){        document.getElementById(&#34;codpa&#34;).value=document.getElementById(&#34;pacientes&#34;).value;    return true      }&#60;/script&#62;&#60;script language=&#34;JavaScript&#34; type=&#34;text/javascript&#34;&#62;      function asignarId(){        document.getElementById(&#34;espel&#34;).value=document.getElementById(&#34;especialidad&#34;).value;    return true      }&#60;/script&#62;&#60;script language=&#34;JavaScript&#34; type=&#34;text/javascript&#34;&#62;      function codigom(){        document.getElementById(&#34;meco&#34;).value=document.getElementById(&#34;medicos&#34;).value;    return true      }    &#60;/script&#62; &#60;meta http-equiv=&#34;Content-Type&#34; content=&#34;text/html; charset=iso-8859-1&#34;&#62;&#60;/head&#62;&#60;body&#62;&#60;div align=&#34;center&#34;&#62;   &#60;table  border=&#34;2&#34; bordercolor=&#34;#00CCCC&#34; bgcolor=&#34;#FFFFCC&#34;&#62;&#60;td&#62;&#60;div align=&#34;center&#34;&#62;&#60;strong&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;Registro de citas&#60;/font&#62;&#60;/strong&#62;&#60;/div&#62;&#60;/td&#62;&#60;/table&#62;&#60;table  border=&#34;2&#34; bordercolor=&#34;#00CCCC&#34; bgcolor=&#34;#FFFFCC&#34;&#62;&#60;td&#62;&#60;div align=&#34;center&#34;&#62;&#60;strong&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;Area de datos del paciente&#60;/font&#62;&#60;/strong&#62;&#60;/div&#62;&#60;/td&#62;&#60;td&#62;&#60;div align=&#34;center&#34;&#62;&#60;strong&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;Area de pacientes citados&#60;/font&#62;&#60;/strong&#62;&#60;/div&#62;&#60;/td&#62;&#60;/table&#62;&#60;/div&#62; &#60;div align=&#34;center&#34;&#62;&#60;div align=&#34;center&#34;&#62;  &#60;table width=&#34;348&#34;  border=&#34;2&#34; align=&#34;left&#34; bordercolor=&#34;#00CCCC&#34; bgcolor=&#34;#FFFFFF&#34;&#62;    &#60;td bgcolor=&#34;#FFFFCC&#34; width=&#34;125&#34; align=&#34;center&#34;&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;b&#62;Especialidad&#60;/b&#62;&#60;/font&#62;&#60;/td&#62;    &#60;form name=&#34;miForm&#34; &#62;      &#60;td bgcolor=&#34;#FFFFCC&#34; align=&#34;right&#34; bordercolor=&#34;#00CCCC&#34;&#62; &#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;b&#62;         &#60;input name=&#34;espel&#34; type=&#34;text&#34; disabled size=&#34;3&#34; maxlength=&#34;3&#34;&#62;        &#60;/font&#62; &#60;/td&#62;      &#60;td width=&#34;417&#34; bgcolor=&#34;#FFFFCC&#34; align=&#34;right&#34;&#62;         &#60;?php          &#036;resultado=mysql_query(&#34;select esp_cod, nombre from especialidad&#34;);        echo &#34;&#60;SELECT NAME='especialidad' onclick='return asignarId()'&#62;&#34;;        while (&#036;row = mysql_fetch_row(&#036;resultado))          {             echo &#34;&#60;OPTION value='&#036;row[0]'&#62;&#036;row[1]&#60;/OPTION&#62;&#34;;          }         echo &#34;&#60;/SELECT&#62;&#34;;        ?&#62;      &#60;/td&#62;    &#60;/form&#62;    &#60;/tr&#62;    &#60;tr valign=&#34;middle&#34;&#62;       &#60;td bgcolor=&#34;#FFFFCC&#34; width=&#34;125&#34;&#62; &#60;div align=&#34;center&#34;&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;b&#62;Dr.           disponible&#60;/b&#62;&#60;/font&#62; &#60;/div&#62;&#60;/td&#62;      &#60;td bgcolor=&#34;#FFFFCC&#34; bordercolor=&#34;#00CCCC&#34; align=&#34;right&#34;&#62; &#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;b&#62;         &#60;input name=&#34;meco&#34; disabled size=&#34;7&#34; maxlength=&#34;7&#34; width=&#34;10&#34; &#62;        &#60;/font&#62; &#60;/td&#62;      &#60;td bgcolor=&#34;#FFFFCC&#34; width=&#34;417&#34; valign=&#34;baseline&#34; align=&#34;right&#34;&#62;         &#60;?php          &#036;resultad=mysql_query(&#34;select m.M_cedula,concat(m.M_apellidop,' ', m.M_apellidom,' ', m.M_nombre) from medico m&#34;);        echo &#34;&#60;SELECT NAME='medicos' onclick='return codigom()'&#62;&#34;;        while (&#036;row = mysql_fetch_row(&#036;resultad))          {             echo &#34;&#60;OPTION value='&#036;row[0]'&#62;&#036;row[1]&#60;/OPTION&#62;&#34;;          }         echo &#34;&#60;/SELECT&#62;&#34;; ?&#62;      &#60;/td&#62;    &#60;/tr&#62;    &#60;td width=&#34;125&#34; bgcolor=&#34;#FFFFCC&#34;&#62; &#60;div align=&#34;center&#34;&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;b&#62;Paciente&#60;/b&#62;&#60;/font&#62;&#60;/div&#62;&#60;/td&#62;    &#60;form name=&#34;paciente&#34;&#62;      &#60;td bgcolor=&#34;#FFFFCC&#34; width=&#34;58&#34; bordercolor=&#34;#00CCCC&#34; align=&#34;left&#34;&#62; &#60;div align=&#34;right&#34;&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;b&#62;           &#60;input name=&#34;codpa&#34; disabled size=&#34;10&#34; maxlength=&#34;10&#34; width=&#34;10&#34; &#62;          &#60;/font&#62; &#60;/div&#62;&#60;/td&#62;      &#60;td bgcolor=&#34;#FFFFCC&#34; width=&#34;417&#34; align=&#34;right&#34;&#62;         &#60;?php          &#036;resultad=mysql_query(&#34;select P_cedula,concat(P_apellidop,' ', P_apellidom,' ', P_nombre) from paciente&#34;);        echo &#34;&#60;SELECT NAME='pacientes' onclick='return asignar()'&#62;&#34;;        while (&#036;row = mysql_fetch_row(&#036;resultad))          {             echo &#34;&#60;OPTION value='&#036;row[0]'&#62;&#036;row[1]&#60;/OPTION&#62;&#34;;          }         echo &#34;&#60;/SELECT&#62;&#34;; ?&#62;      &#60;/td&#62;    &#60;/form&#62;    &#60;tr&#62;       &#60;td bgcolor=&#34;#FFFFCC&#34; width=&#34;125&#34; align=&#34;center&#34;&#62;&#60;div align=&#34;center&#34;&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;b&#62;Fecha           &#60;/b&#62;&#60;/font&#62;&#60;/div&#62;&#60;/td&#62;      &#60;META http-equiv=Content-Type content=&#34;text/html; charset=windows-1252&#34;&#62;      &#60;!-Hoja de estilos del calendario --&#62;      &#60;LINK title=win2k-cold-1 media=all href=&#34;Calendario de pruebas_files/calendar-green.css&#34; type=text/css rel=stylesheet&#62;      &#60;!-- librería principal del calendario --&#62;      &#60;script src=&#34;Calendario de pruebas_files/calendar.js&#34; type=text/javascript&#62;&#60;/SCRIPT&#62;      &#60;!-- librería para cargar el lenguaje deseado --&#62;      &#60;script src=&#34;Calendario de pruebas_files/calendar-es.js&#34; type=text/javascript&#62;&#60;/SCRIPT&#62;      &#60;!-- librería que declara la función Calendar.setup, que ayuda a generar un calendario en unas pocas líneas de código --&#62;      &#60;script src=&#34;Calendario de pruebas_files/calendar-setup.js&#34; type=text/javascript&#62;&#60;/SCRIPT&#62;      &#60;FORM action=# method=get&#62;        &#60;td width=&#34;125&#34; bgcolor=&#34;#FFFFCC&#34; align=&#34;right&#34;&#62; &#60;INPUT name=date disabled id=campo_fecha size=&#34;10&#34; maxlength=&#34;10&#34; width=&#34;5&#34; align=&#34;middle&#34;&#62;         &#60;/td&#62;        &#60;td width=&#34;125&#34; bgcolor=&#34;#FFFFCC&#34; align=&#34;right&#34;&#62; &#60;INPUT id=lanzador align=&#34;middle&#34; type=button value=...&#62;         &#60;/td&#62;      &#60;/FORM&#62;      &#60;!-- script que define y configura el calendario--&#62;      &#60;script type=text/javascript&#62;    Calendar.setup({        inputField     :    &#34;campo_fecha&#34;,      // id del campo de texto        ifFormat       :    &#34;%d/%m/%Y&#34;,       // formato de la fecha, cuando se escriba en el campo de texto        button         :    &#34;lanzador&#34;   // el id del botón que lanzará el calendario    });&#60;/SCRIPT&#62;    &#60;/tr&#62;    &#60;tr&#62;      &#60;td height=&#34;22&#34; align=&#34;center&#34; bgcolor=&#34;#FFFFCC&#34;&#62;&#60;div align=&#34;center&#34;&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;b&#62;Hora           &#60;/b&#62;&#60;/font&#62;&#60;/div&#62;&#60;/td&#62;      &#60;td bgcolor=&#34;#FFFFCC&#34; align=&#34;right&#34;&#62; &#60;/td&#62;      &#60;td bgcolor=&#34;#FFFFCC&#34; align=&#34;right&#34;&#62; &#60;/td&#62;    &#60;/tr&#62;  &#60;/table&#62;  &#60;table width=&#34;379&#34; height=&#34;28&#34; border=2 align=&#34;left&#34; bordercolor=&#34;#00CCCC&#34; bgcolor=&#34;#FFFFFF&#34;&#62;    &#60;?php    &#036;result=mysql_query(&#34;SELECT horario.H_dia, cita.Horacita, paciente.P_nombre, internacion.cod_int FROM horario, cita, paciente, internacion, turno, medico, diagnostico WHERE horario.hora_id = turno.hora_id AND turno.hora_id = cita.hora_id AND paciente.P_Cedula = cita.P_cedula GROUP BY horario.H_dia, cita.Horacita, paciente.P_nombre, internacion.cod_int&#34;,&#036;link);  ?&#62;    &#60;tr valign=&#34;baseline&#34;&#62;       &#60;td width=&#34;57&#34; bgcolor=&#34;#FFFFCC&#34;&#62; &#60;div align=&#34;center&#34;&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;strong&#62; Turno&#60;/strong&#62;&#60;/font&#62;&#60;/div&#62;&#60;/td&#62;      &#60;td width=&#34;68&#34; bgcolor=&#34;#FFFFCC&#34;&#62; &#60;div align=&#34;center&#34;&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;strong&#62; Hora&#60;/strong&#62;&#60;/font&#62;&#60;/div&#62;&#60;/td&#62;      &#60;td width=&#34;113&#34; bgcolor=&#34;#FFFFCC&#34;&#62; &#60;div align=&#34;center&#34;&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;strong&#62; Paciente&#60;/strong&#62;&#60;/font&#62;&#60;/div&#62;&#60;/td&#62;      &#60;td width=&#34;80&#34; bgcolor=&#34;#FFFFCC&#34;&#62; &#60;div align=&#34;center&#34;&#62;&#60;font color=&#34;#2C7AA9C&#34;&#62;&#60;strong&#62; Internacion&#60;/strong&#62;&#60;/font&#62;&#60;/div&#62;&#60;/td&#62;    &#60;/tr&#62;    &#60;?php  while (&#036;row = mysql_fetch_array(&#036;result))    {      printf(&#34;&#60;tr&#62;&#60;td bgcolor='#FFFFCC'&#62; %s&#60;/td&#62;&#60;td bgcolor='#FFFFCC'&#62; %s &#60;/td&#62;&#60;td bgcolor='#FFFFCC'&#62; %s &#60;/td&#62;&#60;td bgcolor='#FFFFCC'&#62; %s &#60;/td&#62;&#60;/tr&#62;&#34;,&#036;row[&#34;H_dia&#34;],&#036;row[&#34;Horacita&#34;],&#036;row[&#34;P_nombre&#34;],&#036;row[&#34;cod_int&#34;]);    }//mysql_result(&#036;res);?&#62;  &#60;/table&#62;&#60;/div&#62; &#60;/body&#62;&#60;/html&#62;   

F_Tanori:
Pues puedes hacer varias cosas de momento creo que puedes hacer esto..


1- Utilizar AJAX (en mi opinion la mejor opcion :P)
2- Puedes 'pre-cargar' los resultados del combo de medicos (http://listas.inf.utfsm.cl/pipermail/ph ... 01521.html)
3- Recargando la pagina


Saludos

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa