Tengo el siguiente problema quiero cargar un combo dependiendo del radio que este seleccionado. Lo hago atacando a una base de datos. Estaba programando en php pero en todos los foros que he visto lo hacen con javascript y no tengo ni idea.
Este es mi codigo.
Código HTML:
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<!--CONECTO CON LA BASE DE DATOS-->
<?
if($conexion=mysql_connect ("localhost","pepe","pepa")){
print "<br>Conexión establecida<br>";
}
else{
print "<br>No ha podido realizarse la conexión<br>";
# el exit lo incluimos para que deje de ejecutarse
# el script si no se establece la conexión
exit();
}
$base="proyecto";
mysql_select_db ($base, $conexion);
?>
<!-- declaro las funciones -->
<script>
<? //voy cargando los arrays consecutivos con los diferentes parametros que se pueden elegir, cargo el id y el nombre
$instruccionsql = "SELECT nombre, id_sistema AS ID FROM sistema";
$rs=mysql_query($instruccionsql,$conexion);
print("var soft_n_1=new Array(\"-\"");
while($registro = mysql_fetch_array($rs))
{
// print("<OPTION VALUE='" . $registro['ID'] . "'>" . $registro['nombre'] );
print(",\"".$registro['nombre']."\"");
}
print(")\n");
$instruccionsql = "SELECT nombre, id_sistema AS ID FROM sistema";
$rs=mysql_query($instruccionsql,$conexion);
print("var soft_id_1=new Array(\"-\"");
while($registro = mysql_fetch_array($rs))
{
// print("<OPTION VALUE='" . $registro['ID'] . "'>" . $registro['nombre'] );
print(",\"".$registro['ID']."\"");
}
print(")\n");
$instruccionsql = "SELECT nombre, id_aplic AS ID FROM aplicacion";
$rs=mysql_query($instruccionsql,$conexion);
print("var soft_n_2=new Array(\"-\"");
while($registro = mysql_fetch_array($rs))
{
// print("<OPTION VALUE='" . $registro['ID'] . "'>" . $registro['nombre'] );
print(",\"".$registro['nombre']."\"");
}
print(")\n");
$instruccionsql = "SELECT nombre, id_aplic AS ID FROM aplicacion";
$rs=mysql_query($instruccionsql,$conexion);
print("var soft_id_2=new Array(\"-\"");
while($registro = mysql_fetch_array($rs))
{
// print("<OPTION VALUE='" . $registro['ID'] . "'>" . $registro['nombre'] );
print(",\"".$registro['ID']."\"");
}
print(")\n");
$instruccionsql = "SELECT nombre, id_soporte AS ID FROM soporte";
$rs=mysql_query($instruccionsql,$conexion);
print("var soft_n_3=new Array(\"-\"");
while($registro = mysql_fetch_array($rs))
{
// print("<OPTION VALUE='" . $registro['ID'] . "'>" . $registro['nombre'] );
print(",\"".$registro['nombre']."\"");
}
print(")\n");
$instruccionsql = "SELECT nombre, id_soporte AS ID FROM soporte";
$rs=mysql_query($instruccionsql,$conexion);
print("var soft_id_3=new Array(\"-\"");
while($registro = mysql_fetch_array($rs))
{
// print("<OPTION VALUE='" . $registro['ID'] . "'>" . $registro['nombre'] );
print(",\"".$registro['ID']."\"");
}
print(")\n");
mysql_close($conexion);
?>
function cambia_soft(){
var soft
var mi_soft
var mi_idsoft
soft=document.form-soft.radio-software.value
if(soft!=0){
mi_soft=eval("soft_n_"+soft)
mi_idsoft=eval("soft_id_"+soft)
num_soft=mi_soft.length
document.form-soft.software.length=num_soft
for(i=0;i<num_soft;i++){
document.form-soft.software.options[i].text=mi_soft[i]
document.form-soft.software.options[i].value=mi_idsoft[i]
}
}
else {
//si no había software seleccionado, elimino las provincias del select
document.form-soft.software.length=1
//coloco un guion en la unica opcion que he dejado
document.form-soft.software.options[0].value="-"
document.form-soft.software.options[0].text="-"
}
//marco como seleccionada la opcion primera de software
document.form-soft.software.options[0].selected=true
}
</script>
</head>
<body>
<form action="prueba.php" method="POST" name="form-soft" id="form-soft">
<p> <input name="radio-software" type="radio" value="1" onChange="cambia_soft()">Sistema Operativo</p>
<p> <input name="radio-software" type="radio" value="2" onChange="cambia_soft()">Aplicacion</p>
<p> <input name="radio-software" type="radio" value="3" onChange="cambia_soft()">Soporte</p>
<p>
<select name="software">
<option value="-">-
</select>
</p>
</td>
<tr>
<td align="right">Descripción: </td>
<td align="left"> <textarea name="descripcion" cols="30" wrap="VIRTUAL" id="descripcion"></textarea></td><tr>
</form>
</body>
</html>
GRACIAS