Foros del Web » Programando para Internet » PHP »

Select Dinamico jQuery,PHP y Mysql

Estas en el tema de Select Dinamico jQuery,PHP y Mysql en el foro de PHP en Foros del Web. He estado intentando construir un select dinámico con jQuery y la funcion AJAX, PHP y Mysql. Luego de ver muchos tutoriales y leer post no ...
  #1 (permalink)  
Antiguo 05/10/2013, 13:12
Avatar de AnGuisi  
Fecha de Ingreso: julio-2013
Ubicación: San Felipe - Yaracuy
Mensajes: 122
Antigüedad: 10 años, 9 meses
Puntos: 2
Select Dinamico jQuery,PHP y Mysql

He estado intentando construir un select dinámico con jQuery y la funcion AJAX, PHP y Mysql. Luego de ver muchos tutoriales y leer post no he logrado dar con una respuesta que satisfaga mi necesidad. Lo que pretendo es reutilizar el codigo PHP que me permite cargar el segundo select de los dos que intento cargar puesto a que no es solo un select dinamico el que pretendo usar sino varios.

Código Javascript:
Ver original
  1. $(document).ready(function() {
  2.  $(".marca").change(function() {
  3.     $.ajax( {
  4.      url:"procesa.php",
  5.      type:"POST",
  6.      data:"idmarca="+$(".marca").val(),
  7.      success: function(opciones) {
  8.          $(".modelo").html(opciones);        
  9.          }
  10.         } )
  11.      }
  12.  
  13.  )  
  14. });

Esa es la función Javascript que estoy utilizando, como pueden ver la peticion se realiza a la pagina "procesa.php" pero segun lo que he visto esta misma pagina procesa.php es la que me imprime la salida del segundo select y me obliga a embeber este codigo en mi codigo html, esto se me hace muy tedioso puesto que necesito varios select en una misma pagina y tendria que copiar el contenido de procesa.php en cada uno de ellos.

procesa.php:
Código PHP:
Ver original
  1. require_once('../core/dbabstract.php');
  2.  
  3. if (isset($_POST["marca"])){
  4.    
  5.     $marca = $_POST["marca"];
  6.    
  7. $conexion = new bdmodelo;
  8. $mysqli = $conexion->abrir_conexion();
  9.  
  10.  
  11. $query = "select id_modelo, modelo from modelo where id_marca = '$marca'";
  12. $result = $mysqli->query($query);
  13.  
  14. if ($result->num_rows > 0) { //si la variable tiene al menos 1 fila entonces seguimos con el codigo
  15.  
  16.     $combobit="";
  17.      while ($row = $result->fetch_array())
  18.     {
  19.         $combobit .=" <option value='".$row['id_modelo']."'>".$row['modelo']."</option>"; //concatenamos el los options para luego ser insertado en el HTML
  20.     }
  21.                                }
  22. else {
  23.     echo "Error";
  24.      }
  25.      
  26.   echo $combobit;
  27. }


Mi pregunta es:

¿Como podría hacer para convertir el contenido de procesa.php en una funcion o agregarla a una de mis clases creadas para luego asi poder retornar el valor y poder utilizarlo varias veces?

Otra cosa, en mi script estoy accediendo a la clase "marca" y la clase "modelo" puesto a que necesito que el script funciona en cada uno de los select los cuales tienen esa clase, pero se me viene a la mente que esto causaria problemas puesto que al cargar la primera clase marca se me cargarian todos los select que tuvieran la clase modelo, lo cual no es la idea. ¿Como podria hacer en ese caso para poder construir una funcion que me sirva para todos los select?

Espero poder haber explicado mi problema, cualquier duda o pregunta es bien bienvenida. Gracias de antemano por su ayuda.

Última edición por AnGuisi; 05/10/2013 a las 13:18

Etiquetas: dinamico, funcion, html, mysql, select, variable
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 14:18.