Foros del Web » Programando para Internet » PHP »

Select Asociado Funciona Perfectamente

Estas en el tema de Select Asociado Funciona Perfectamente en el foro de PHP en Foros del Web. Ojala que les sirva: <script> function selectAsociado(){ var seccion seccion = document.form1.seccion[document.form1.seccion.selectedIndex].value if (seccion != 0) { mis_subsecc=eval("secc_sub" + seccion) num_seccisub = mis_subsecc.length document.form1.subseccion.length = ...
  #1 (permalink)  
Antiguo 19/01/2005, 08:59
Avatar de alexis77  
Fecha de Ingreso: diciembre-2003
Mensajes: 119
Antigüedad: 14 años
Puntos: 0
Select Asociado Funciona Perfectamente

Ojala que les sirva:


<script>
function selectAsociado(){
var seccion
seccion = document.form1.seccion[document.form1.seccion.selectedIndex].value
if (seccion != 0) {
mis_subsecc=eval("secc_sub" + seccion)
num_seccisub = mis_subsecc.length
document.form1.subseccion.length = num_seccisub
for(i=0;i<num_seccisub;i++){
document.form1.subseccion.options[i].value=mis_subsecc[i]
document.form1.subseccion.options[i].text=mis_subsecc[i]
}
}else{
document.form1.subseccion.length = 1
document.form1.subseccion.options[0].value = "-"
document.form1.subseccion.options[0].text = "-"
}
document.form1.subseccion.options[0].selected = true
}
</script>
<?php
echo "<script>";
$result = mysql_query("SELECT id_seccion FROM secciones");
while($row = mysql_fetch_array($result)) {
echo "var secc_sub".$row[id_seccion]."= new Array('---'";
$result2 = mysql_query("SELECT subseccion FROM subsecciones WHERE id_secc = '$row[id_seccion]'");
while($row2 = mysql_fetch_array($result2)) {
echo ", '$row2[subseccion]'";
}
echo ")\n";
}
echo "</script>";
echo "<form name=\"form1\">
<table width=\"50%\">
<tr>
<td>Sección:</td>
<td>
<select name=\"seccion\" onchange=\"selectAsociado()\">\n
<option value=\"0\">[-- Seleccione --]</option>\n";
$query1 = "SELECT id_seccion, seccion FROM $TBL_SECCIONES ORDER BY seccion ASC";
$result1 = mysql_query($query1);
while ($rows1 = mysql_fetch_array($result1)){
echo "<option value=\"{$rows1[0]}\"";
if ($rows["id_seccion"] == $rows1[0]) echo " selected";
echo "\">{$rows1[1]}</option>\n";
//echo "<option value=\"{$rows1[0]}\">{$rows1[1]}</option>\n";
}
mysql_free_result($result1);
echo "</select>
</td>
</tr>
<tr>
<td>Sub Sección:</td>
<td>
<select name=\"subseccion\">
<option value=\"-\">---";
$query2 = "SELECT id_subsec, subseccion FROM $TBL_SECCIONES_SUB WHERE id_secc = '{$rows["id_seccion"]}'";
$result2 = mysql_query($query2);
while ($rows2 = mysql_fetch_array($result2)){
echo "<option value=\"{$rows2[0]}\"";
if ($rows["id_subsec"] == $rows2[0]) echo " selected";
echo "\">{$rows2[1]}</option>\n";
}
echo "</select>
</td>
</tr>
</table>
</form>";
?>
  #2 (permalink)  
Antiguo 19/01/2005, 09:02
Avatar de alexis77  
Fecha de Ingreso: diciembre-2003
Mensajes: 119
Antigüedad: 14 años
Puntos: 0
Y este es la base de datos.

CREATE TABLE `seccion` (
`id_seccion` tinyint(2) NOT NULL auto_increment,
`seccion` varchar(20) NOT NULL default '',
PRIMARY KEY (`id_seccion`)
) TYPE=MyISAM AUTO_INCREMENT=12 ;

INSERT INTO `seccion` VALUES (1, 'Deportes');
INSERT INTO `seccion` VALUES (2, 'Música');
INSERT INTO `seccion` VALUES (3, 'Sexo');
INSERT INTO `seccion` VALUES (4, 'Automivilismo');


CREATE TABLE `sub_seccion` (
`id_subsec` int(3) NOT NULL auto_increment,
`id_secc` tinyint(3) NOT NULL default '0',
`subseccion` varchar(255) default NULL,
PRIMARY KEY (`id_subsec`)
) TYPE=MyISAM AUTO_INCREMENT=10 ;

INSERT INTO `sub_seccion` VALUES (1, 1, 'Futbol');
INSERT INTO `sub_seccion` VALUES (2, 1, 'Surf');
INSERT INTO `sub_seccion` VALUES (3, 1, 'Futbol Americano');
INSERT INTO `sub_seccion` VALUES (4, 4, 'Rali');
INSERT INTO `sub_seccion` VALUES (5, 3, 'Sexualidad');
INSERT INTO `sub_seccion` VALUES (6, 4, 'Formula 1');
INSERT INTO `sub_seccion` VALUES (7, 3, 'Sexo');
INSERT INTO `sub_seccion` VALUES (8, 2, 'Rock');
INSERT INTO `sub_seccion` VALUES (9, 2, 'POP');

Suerte... :-p
  #3 (permalink)  
Antiguo 19/01/2005, 10:51
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Podrías colocarlo como FAQ del foro PHP .. eso sí usa el botón de "PHP" para que el código quede coloreado y sigue la estructura de las FAQ's (el primer mensaje describe como es y te puedes guiar de otras).

Un saludo,
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 11:36.