Foros del Web » Creando para Internet » Diseño web »

Una vez funciona y dos no

Estas en el tema de Una vez funciona y dos no en el foro de Diseño web en Foros del Web. Creando una web, me he encontrado con una cosa muy coriosa, coloca varios options, y funciona el primero pero no los demas: Option1: Código: <select ...
  #1 (permalink)  
Antiguo 23/08/2010, 08:19
Avatar de victor5atodogas  
Fecha de Ingreso: junio-2010
Mensajes: 447
Antigüedad: 7 años, 5 meses
Puntos: 2
Una vez funciona y dos no

Creando una web, me he encontrado con una cosa muy coriosa, coloca varios options, y funciona el primero pero no los demas:

Option1:
Código:
 <select name='paises' id='paises' onChange='cargaContenido(this.id)' ><option value='1,2,Bull Terrier' selected>Perros</option><option value='2,2,Bull Terrier'>Gatos</option></select></div>
Este option llama en el OnChange a este contenido:

Código:
<?php
// Array que vincula los IDs de los selects declarados en el HTML con el nombre de la tabla donde se encuentra su contenido
$opcionSeleccionada=$_GET["opcion"];
//echo "total=" .$opcionSeleccionada;
  $cosa = substr($opcionSeleccionada, 0, 1);
  $cosa1 = substr($opcionSeleccionada, 2, 1);
  $cosa2 = substr($opcionSeleccionada, 4);
  $opcionSeleccioanda = $cosa;
  $taman = $cosa1;
  $raz = $cosa2;
$listadoSelects=array(
"paises"=>"Tipos",
"estados"=>"listarazas"
);

$selectDestino=$_GET["select"];

	$tabla=$listadoSelects[$selectDestino];
    $conexion = mysql_connect(');
	mysql_select_db();
	$consulta=mysql_query("SELECT id, opcion FROM $tabla WHERE relacion='$opcionSeleccionada' order by opcion") or die(mysql_error());
    mysql_close($conexion);
	
	// Comienzo a imprimir el select
    echo "Raza";
	echo "<select name='".$selectDestino."' id='".$selectDestino."' onChange='cargaContenido(this.id)'>";
    if ($tabla == "listarazas"){
        echo "<option value='TODOS'>TODOS</option>";
    }
//    echo "Raza = " .$raz;
    $registro[1]=htmlentities($registro[1]);
	while($registro=mysql_fetch_row($consulta))
	{
		// Convierto los caracteres conflictivos a sus entidades HTML correspondientes para su correcta visualizacion
		//$registro[1]=htmlentities($registro[1]);
		// Imprimo las opciones del select
        if ($raz == $registro[1]){
        echo "<option value='".$registro[0]."' selected>".$registro[1]."</option>";    
        }
        else
        {
        echo "<option value='".$registro[0]."'>".$registro[1]."</option>";    
        }
	}			
	echo "</select>";
    echo "Tamaño";
    if ($opcionSeleccionada == 1){
        echo "<select name='tamaño' id='tamaño'>";
        ?>
    <option value='Enano'
    <?php
    if ($taman == 0){
        echo "selected";
    }?>
     >Enano</option>
      <option value='Pequeño'
    <?php
    if ($taman == 1){
        echo "selected";
    }?>
     >Pequeño</option>
      <option value='Mediano'
    <?php
    if ($taman == 2){
        echo "selected";
    }?>
     >Mediano</option>
      <option value='Grande'
    <?php
    if ($taman == 3){
        echo "selected";
    }?>
     >Grande</option>
      <option value='Muy Grande'
    <?php
    if ($taman == 4){
        echo "selected";
    }?>
     >Muy Grande</option>
     <?php
    echo "</select>";
    }
    elseif ($opcionSeleccionada == 2){
        echo "<select name='tamaño' id='tamaño'>";
        ?>
    <option value='Mediano'
    <?php
    if ($taman == 0){
        echo "selected";
    }?>
     >Mediano</option>
      <option value='Grande'
    <?php
    if ($taman == 1){
        echo "selected";
    }?>
     >Grande</option>
     <?php
     echo "</select>";
    }    
?>
Option2:

Código:
  <select name='paises2' id='paises2' onChange='cargaContenido(paises2)' >
Este otro option llama a este contenido:

Código:
<?php
// Array que vincula los IDs de los selects declarados en el HTML con el nombre de la tabla donde se encuentra su contenido
$opcionSeleccionada=$_GET["opcion"];
//echo "total=" .$opcionSeleccionada;
  $cosa = substr($opcionSeleccionada, 0, 1);
  $cosa1 = substr($opcionSeleccionada, 2, 1);
  $cosa2 = substr($opcionSeleccionada, 4);
  $opcionSeleccioanda = $cosa;
  $taman = $cosa1;
  $raz = $cosa2;
$listadoSelects=array(
"paises2"=>"Tipos",
"estados2"=>"listarazas"
);

$selectDestino=$_GET["select"];

	$tabla=$listadoSelects[$selectDestino];
    $conexion = mysql_connect();
	mysql_select_db();
	$consulta=mysql_query("SELECT id, opcion FROM $tabla WHERE relacion='$opcionSeleccionada' order by opcion") or die(mysql_error());
    mysql_close($conexion);
	
	// Comienzo a imprimir el select
    echo "Raza";
    $selectDestino = "estados2";
	echo "<select name='".$selectDestino."' id='".$selectDestino."' onChange='cargaContenido(this.id)'>";
    if ($tabla == "listarazas"){
        echo "<option value='TODOS'>TODOS</option>";
    }
//    echo "Raza = " .$raz;
    $registro[1]=htmlentities($registro[1]);
	while($registro=mysql_fetch_row($consulta))
	{
		// Convierto los caracteres conflictivos a sus entidades HTML correspondientes para su correcta visualizacion
		//$registro[1]=htmlentities($registro[1]);
		// Imprimo las opciones del select
        if ($raz == $registro[1]){
        echo "<option value='".$registro[0]."' selected>".$registro[1]."</option>";    
        }
        else
        {
        echo "<option value='".$registro[0]."'>".$registro[1]."</option>";    
        }
	}			
	echo "</select>";
    echo "Tamaño";
    if ($opcionSeleccionada == 1){
        echo "<select name='tamaño2' id='tamaño2'>";
        ?>
    <option value='Enano'
    <?php
    if ($taman == 0){
        echo "selected";
    }?>
     >Enano</option>
      <option value='Pequeño'
    <?php
    if ($taman == 1){
        echo "selected";
    }?>
     >Pequeño</option>
      <option value='Mediano'
    <?php
    if ($taman == 2){
        echo "selected";
    }?>
     >Mediano</option>
      <option value='Grande'
    <?php
    if ($taman == 3){
        echo "selected";
    }?>
     >Grande</option>
      <option value='Muy Grande'
    <?php
    if ($taman == 4){
        echo "selected";
    }?>
     >Muy Grande</option>
     <?php
    echo "</select>";
    }
    elseif ($opcionSeleccionada == 2){
        echo "<select name='tamaño2' id='tamaño2'>";
        ?>
    <option value='Mediano'
    <?php
    if ($taman == 0){
        echo "selected";
    }?>
     >Mediano</option>
      <option value='Grande'
    <?php
    if ($taman == 1){
        echo "selected";
    }?>
     >Grande</option>
     <?php
     echo "</select>";
    }    
?>
Hay que tener en cuenta, que entre uno y otro, ejecuto este Script:

Código:
document.getElementById("paises(numeroquecorresponda").onchange();
Pero ni el script ni yo, consiguen que funcione el option2. ¿Alguna sugerencia?

Para que lo veais todavia mas claro, esta seria la pagina del Option1

y esta otra la del Option2

Debe de ser alguna cosa tonta, nombre, etc.

En paginas separadas funciona, pero las 2 cosas integradas en la misma no.

Muchas gracias

Última edición por victor5atodogas; 23/08/2010 a las 08:21 Razón: Faltaban cosas
  #2 (permalink)  
Antiguo 23/08/2010, 09:25
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 13 años, 2 meses
Puntos: 71
Respuesta: Una vez funciona y dos no

Yo me encontre con ese problema usando jquery, y lo solucione con el "live" de esa misma libreria, es algo 'comun'.

Mejor que preguntes en el foro de javascript, seguro que te ayudaran mejor.
  #3 (permalink)  
Antiguo 23/08/2010, 10:31
Avatar de victor5atodogas  
Fecha de Ingreso: junio-2010
Mensajes: 447
Antigüedad: 7 años, 5 meses
Puntos: 2
Respuesta: Una vez funciona y dos no

Muchas gracias, pero al final ya lo resolvi yo, es porque siempre hacia referencia al mismo archivo, y por lo tanto a la misma funcion, y por lo tanto a distinta funcion.

Un saudo

Etiquetas: dos
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 15:21.