Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Combo dependientes con ajax

Estas en el tema de Combo dependientes con ajax en el foro de Frameworks JS en Foros del Web. Amigos buenas, en una web que estoy desarrollando, tengo un formulario donde tengo un combo de categoria de comidas seguido tengo otro combo restaurantes donde ...
  #1 (permalink)  
Antiguo 15/05/2009, 17:18
 
Fecha de Ingreso: septiembre-2003
Ubicación: lima
Mensajes: 378
Antigüedad: 20 años, 7 meses
Puntos: 0
Combo dependientes con ajax

Amigos buenas, en una web que estoy desarrollando, tengo un formulario donde tengo un combo de categoria de comidas seguido tengo otro combo restaurantes donde dependiendo del combo categoria de comidas me debe pintar el combo restaurantes que se encuentra como una lista despues de eso tengo un boton submit que mostrare los restaurantes que me voto como resultado la cual deseo que al momento de mostrar no recargue toda la pagina. Aqui la direccion para que vean lo que deseo hacer http://www.peruplaceguide.com/web/food-drinks.html

Ya me podido descargar los datos de mi bd al primer combo.

Código PHP:
<?php
$servidor
="localhost";
$usuario="root";
$pass="mysql";
$data="peruplaceguide";

    
$conexion=mysql_connect($servidor,$usuario,$pass) or die (mysql_error());
    
mysql_select_db($data,$conexion);
    
$SQL="SELECT * FROM categoria ORDER BY nombre ASC";
    
$RESULT=mysql_query($SQL,$conexion);
    while(
$ROW=mysql_fetch_array($RESULT)){
        echo 
'<option value="'.$ROW['idcategoria'].'">'.$ROW['nombre'].'</option>';
        }
?>

Se que tengo que hacer uso del ajax pero la verdad se muy poco de eso, alguien que tenga un ejemplo o haiga echo algo similar a lo que busco.

Gracias de antemano
  #2 (permalink)  
Antiguo 18/05/2009, 11:29
 
Fecha de Ingreso: septiembre-2003
Ubicación: lima
Mensajes: 378
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: Combo dependientes con ajax

Buen dia a todos, estuve investigando un poco, y pude avanzar algo, pero me fata un detalle, que no se como hacerle para hacer la comparacion en la consulta ya que me sale error de variable indefinida, osea decirle que cuando selecciono un valor de primer combo que me compare con la consulta que llamo desde el ajax. Les dejo los codigos para que echen una miradita y asi puedan decirme en que estoy mal. Gracias

index.php

Aca empiezo con el jquery ya que estoy trabajando con el y creamos una funcion

<script>
$(document).ready(function(){
$("#categoria").change(function(){
$.post("consulta.php",{valorcombo: this.value},function(data){$("#restaurant").html(d ata)});
});
});
</script>

seguido....... jalo datos de mi base de datos a mi primer combo,

<select name="categoria" id="categoria" >
<?php
$conexion=mysql_connect($servidor,$usuario,$pass) or die (mysql_error());
mysql_select_db($data,$conexion);
$SQL="SELECT * FROM categoria ORDER BY nombre ASC";
$RESULT=mysql_query($SQL,$conexion);
while($ROW=mysql_fetch_array($RESULT)){
echo '<option>'.$ROW['nombre'].'</option>';
echo $ROW['idcategoria'];
}
?>
</select>

y el segundo combo que se encuentra ahi mismo en esa pagina

<select name="restaurant" size="5" id="restaurant" >
<option></option>
</select>


El otro archivo que tengo es consulta.php que lo llamo desde el ajax



<?php
$conexion=mysql_connect($servidor,$usuario,$pass) or die (mysql_error());
mysql_select_db($data,$conexion);

$idcategoria=$_POST['idcategoria'];
$query = "SELECT * FROM restaurant ORDER BY nombre ASC WHERE idcategoria=$idcategoria";
$rs_query = mysql_query($query);
while($rw_query = mysql_fetch_array($rs_query))
{
echo "<option value='".$rw_query['idrestaurant']."'>".$rw_query['nombre']."</option>";
}

?>


Esta consulta supuestamente me debe de llenar el segundo combo, pero no doy como decirle a la consulta que compare el id seleccionado del primer combo con dicha consulta algo asi:

$query = "SELECT * FROM restaurant ORDER BY nombre ASC WHERE idcategoria=$idcategoria


Agradesco desde ya su atencion y su ayuda prestada
  #3 (permalink)  
Antiguo 18/05/2009, 15:31
 
Fecha de Ingreso: septiembre-2003
Ubicación: lima
Mensajes: 378
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: Combo dependientes con ajax

alguien que me pueda brindar una ayuda
  #4 (permalink)  
Antiguo 10/06/2009, 19:56
Avatar de rusoftware  
Fecha de Ingreso: abril-2004
Ubicación: Rosario - Argentina
Mensajes: 1.083
Antigüedad: 20 años
Puntos: 2
Respuesta: Combo dependientes con ajax

Lo primero, no se si es estricto pero yo uso siempre el where antes de ordenar.

Y lo segundo, $idcategoria es un nombre de variable, por tanto deberías extraerlo de las comillas del siguiente modo.

Código PHP:
"SELECT * FROM restaurant WHERE idcategoria=".$idcategoria." ORDER BY nombre ASC"
Saludos.
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 06:19.