Hola, tengo alguito de experiencia pero nomucha en todo esto de PHP y JAVA, y necesito unir estos dos codigos, el de php es uno que yo hice y el JAVA lo saque de las FAQ del foro de JAVA:
Esto lo que hace es crear un LIST en base a la data guardada en un campo en la BD
Código PHP:
<select name="listciudad" id="listciudad">
<? require ('configuracion.php');
$sql="SELECT municipio FROM municipios ORDER BY municipio DESC";
$result=mysql_query($sql,$con);
$a=0;
$pal="";
while ($row = mysql_fetch_array($result))
{
$palabra = $row['municipio'];
if ($palabra != $pal)
{$pal = $palabra;
$a++;
$todo[$a]= $palabra;
}
}
for ($b=0; $b<=$a; $b++)
{
?>
<option> <? echo $todo[$b]; ?> </option>
<? }
?>
</select>
Este Java lo que ha es que oculta un TEXT segun lo que hagarres en el List
Código:
<script language="JavaScript">
var muestraTexto = false;
function cambiaSelector(){
with (window.pantalla.document){
muestraTexto = (frm.selector.selectedIndex == 1? true: false);
}
formulario();
}
function formulario(){
with (window.pantalla.document){
open();
writeln("<html>\n<body>");
writeln("<form name='frm'>");
writeln("<select name='selector' onchange='parent.cambiaSelector()'>");
writeln(" <option" + (muestraTexto? "": " selected") + ">Combo solo</option>");
writeln(" <option" + (muestraTexto? " selected": "") + ">Combo y texto</option>");
writeln("</select>");
writeln("<br>");
if (muestraTexto){
writeln("<input type='text' name='campoTexto' value='algo'>");
}
writeln("</form>");
writeln("</body>\n</html>");
close();
}
}
document.writeln("<frameset rows='100%,*' onload='javascript:parent.formulario()'>");
document.writeln(" <frame name='pantalla' src='DummyPage.htm'>");
document.writeln(" <frame src=''>");
document.writeln("</frameset>");
</script>
Entonces lo que necesito es que en ese list salga mi data de la BD y la ultima opcion del List sea una que diga OTRA... y al darle ahi si me aparezca el TEXT
Espero que se haya entendido y me puedan ayudar
Yo lo intente pero no me sale completamente, ya que sime crea el list, aunque me deja un espacio en balnco entre el primer OPTION que es NO APLICA y el primero que saca de la BD, es decir me crea un OPTION en blanco, y eso no es tanto lo malo, sino que seleccione lo que seleccione, siempre se me queda marcada la ultima impresion que me hizo de la BD, y si seleccion la opcion OTRO MUNICIPÍO, me deberia aparecer el TEXTBOX, pero no me aparece nada
, este fue lo que hice, pero no se si uni bien los dos codigos y necesito que me digan cual es el error para hacer lo que deseo:
Código:
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<? require ('configuracion.php');
$sql="SELECT municipio FROM municipios ORDER BY municipio DESC";
$result=mysql_query($sql,$con);
$a=0;
$pal="";
while ($row = mysql_fetch_array($result))
{
$palabra = $row['municipio'];
if ($palabra != $pal)
{$pal = $palabra;
$a++;
$todo[$a]= $palabra;
}
}
?>
<script language="JavaScript">
var muestraTexto = false;
function cambiaSelector(){
with (window.pantalla.document){
muestraTexto = (frm.selector.selectedIndex == 1? true: false);
}
formulario();
}
function formulario(){
with (window.pantalla.document){
open();
writeln("<html>\n<body>");
writeln("<form name='frm'>");
writeln("<select name='selector' id='selector' onchange='parent.cambiaSelector()'>");
writeln(" <option" + (muestraTexto? "": " selected") + ">No Aplica</option>");
writeln("<? for ($b=0; $b<=$a; $b++) { ?>");
writeln(" <option" + (muestraTexto? "": " selected") + "><?=$todo[$b]?></option>");
writeln("<? } ?>");
writeln(" <option" + (muestraTexto? " selected": "") + ">Otro Municipio</option>");
writeln("</select>");
writeln("<br>");
if (muestraTexto){
writeln("<input type='text' name='campoTexto' value='algo'>");
}
writeln("</form>");
writeln("</body>\n</html>");
close();
}
}
document.writeln("<frameset rows='100%,*' onload='javascript:parent.formulario()'>");
document.writeln(" <frame name='pantalla' src='DummyPage.htm'>");
document.writeln(" <frame src=''>");
document.writeln("</frameset>");
</script>
</head>
<body>
</body>
</html>
Muchas Gracias y disculpen la molestia.