Foros del Web » Programando para Internet » Javascript »

Creación de .js

Estas en el tema de Creación de .js en el foro de Javascript en Foros del Web. Saludos a toda la comunidad, espero me puedan ayudar. Mi problema es el siguiente: debo crear un par de combobox dependientes mediante php y ajax ...
  #1 (permalink)  
Antiguo 26/12/2012, 11:21
 
Fecha de Ingreso: diciembre-2012
Ubicación: Perú
Mensajes: 5
Antigüedad: 11 años, 10 meses
Puntos: 3
Pregunta Creación de .js

Saludos a toda la comunidad, espero me puedan ayudar.

Mi problema es el siguiente: debo crear un par de combobox dependientes mediante php y ajax (o algo que simule la comunicación sin recargas de páginas) lo cual debe comunicarse con una BD.

El 1er combo llamado "origen" debe contener los nombres "Lima" y "La libertad" mediante la consulta

Código PHP:
Ver original
  1. <?php
  2. function cargaorigen()
  3. {
  4.     include 'conexion.php';
  5.     conectar();
  6.     $consulta=mysql_query("SELECT DISTINCT r.origen, c.ciudad FROM ruta r, ciudad c where r.origen = c.idciudad and r.activo=1");
  7.     desconectar();
  8.  
  9.     // Voy imprimiendo el primer select compuesto por los paises
  10.     echo "<select name='origen' id='origen' onChange='cargaContenido(this.id)'>";
  11.     echo "<option value='0'>Elige</option>";
  12.     while($registro=mysql_fetch_row($consulta))
  13.     {
  14.         echo "<option value='".$registro[0]."'>".$registro[1]."</option>";
  15.     }
  16.     echo "</select>";
  17. }
  18. ?>
  19.  
  20. //Donde "conexion.php" es:
  21.  
  22. <?php
  23. function conectar()
  24.     {
  25.         mysql_connect("localhost", "root", "");
  26.         mysql_select_db("pasajes");
  27.     }
  28.  
  29. function desconectar()
  30.     {
  31.         mysql_close();
  32.     }
  33. ?>

Así, con esto creo el primer combo. Hasta ahí todo OK; lo malo es que necesito que al momento de seleccionar la opción se active el 2do combo llamado "destino" el cual estará deshabilitado hasta que se elija el origen.

Quería saber si podían ayudarme a crear el archivo .js pues me dicen que con ello se lograría la comunicación.

La BD que estoy usando es la siguiente:

Código SQL:
Ver original
  1. -- phpMyAdmin SQL Dump
  2. -- version 3.5.1
  3. -- http://www.phpmyadmin.net
  4. --
  5. -- Servidor: localhost
  6. -- Tiempo de generación: 26-12-2012 a las 16:59:18
  7. -- Versión del servidor: 5.5.24-log
  8. -- Versión de PHP: 5.4.3
  9.  
  10. SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
  11. SET time_zone = "+00:00";
  12.  
  13.  
  14. /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
  15. /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
  16. /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
  17. /*!40101 SET NAMES utf8 */;
  18.  
  19. --
  20. -- Base de datos: `pasajes`
  21. --
  22.  
  23. -- --------------------------------------------------------
  24.  
  25. --
  26. -- Estructura de tabla para la tabla `ciudad`
  27. --
  28.  
  29. CREATE TABLE IF NOT EXISTS `ciudad` (
  30.   `idciudad` INT(11) NOT NULL AUTO_INCREMENT,
  31.   `ciudad` VARCHAR(50) DEFAULT NULL,
  32.   PRIMARY KEY (`idciudad`)
  33. ) ENGINE=InnoDB  DEFAULT CHARSET=latin2 AUTO_INCREMENT=10 ;
  34.  
  35. --
  36. -- Volcado de datos para la tabla `ciudad`
  37. --
  38.  
  39. INSERT INTO `ciudad` (`idciudad`, `ciudad`) VALUES
  40. (1, 'Lima'),
  41. (2, 'Piura'),
  42. (3, 'Chiclayo'),
  43. (4, 'Cusco'),
  44. (5, 'Cajamarca'),
  45. (6, 'La Libertad'),
  46. (7, 'Tumbes'),
  47. (8, 'Ica'),
  48. (9, 'Iquitos');
  49.  
  50. -- --------------------------------------------------------
  51.  
  52. --
  53. -- Estructura de tabla para la tabla `reserva`
  54. --
  55.  
  56. CREATE TABLE IF NOT EXISTS `reserva` (
  57.   `idreserva` INT(11) NOT NULL AUTO_INCREMENT,
  58.   `idruta` INT(11) NOT NULL DEFAULT '0',
  59.   `paterno` VARCHAR(50) NOT NULL DEFAULT '',
  60.   `materno` VARCHAR(50) NOT NULL DEFAULT '',
  61.   `nombres` VARCHAR(50) NOT NULL DEFAULT '',
  62.   `telefono` VARCHAR(10) NOT NULL DEFAULT '',
  63.   `edad` INT(11) NOT NULL DEFAULT '0',
  64.   `documento` VARCHAR(20) NOT NULL DEFAULT '',
  65.   PRIMARY KEY (`idreserva`)
  66. ) ENGINE=InnoDB DEFAULT CHARSET=latin2 AUTO_INCREMENT=1 ;
  67.  
  68. -- --------------------------------------------------------
  69.  
  70. --
  71. -- Estructura de tabla para la tabla `ruta`
  72. --
  73.  
  74. CREATE TABLE IF NOT EXISTS `ruta` (
  75.   `idruta` INT(11) NOT NULL AUTO_INCREMENT,
  76.   `origen` INT(11) NOT NULL DEFAULT '0',
  77.   `destino` INT(11) NOT NULL DEFAULT '0',
  78.   `idunidad` INT(11) NOT NULL DEFAULT '0',
  79.   `fecha` DATE DEFAULT '0000-00-00',
  80.   `precio` FLOAT NOT NULL DEFAULT '0',
  81.   `cupos` INT(11) NOT NULL DEFAULT '0',
  82.   `activo` INT(11) NOT NULL DEFAULT '0',
  83.   PRIMARY KEY (`idruta`)
  84. ) ENGINE=InnoDB  DEFAULT CHARSET=latin2 AUTO_INCREMENT=5 ;
  85.  
  86. --
  87. -- Volcado de datos para la tabla `ruta`
  88. --
  89.  
  90. INSERT INTO `ruta` (`idruta`, `origen`, `destino`, `idunidad`, `fecha`, `precio`, `cupos`, `activo`) VALUES
  91. (1, 1, 3, 1, '2012-12-06', 800, 20, 1),
  92. (2, 1, 3, 2, '2012-12-06', 650, 20, 1),
  93. (3, 1, 4, 3, '2012-12-06', 235, 15, 1),
  94. (4, 6, 5, 4, '2012-12-06', 400, 25, 1);
  95.  
  96. -- --------------------------------------------------------
  97.  
  98. --
  99. -- Estructura de tabla para la tabla `unidad`
  100. --
  101.  
  102. CREATE TABLE IF NOT EXISTS `unidad` (
  103.   `idunidad` INT(11) NOT NULL AUTO_INCREMENT,
  104.   `matricula` VARCHAR(20) NOT NULL DEFAULT '',
  105.   PRIMARY KEY (`idunidad`)
  106. ) ENGINE=InnoDB  DEFAULT CHARSET=latin2 AUTO_INCREMENT=5 ;
  107.  
  108. --
  109. -- Volcado de datos para la tabla `unidad`
  110. --
  111.  
  112. INSERT INTO `unidad` (`idunidad`, `matricula`) VALUES
  113. (1, 'N175AT'),
  114. (2, 'N582HA'),
  115. (3, 'N656JB'),
  116. (4, 'N712JB');
  117.  
  118. -- --------------------------------------------------------
  119.  
  120. --
  121. -- Estructura de tabla para la tabla `usuario`
  122. --
  123.  
  124. CREATE TABLE IF NOT EXISTS `usuario` (
  125.   `idusuario` INT(11) NOT NULL AUTO_INCREMENT,
  126.   `usuario` CHAR(10) NOT NULL DEFAULT '',
  127.   `clave` CHAR(10) NOT NULL DEFAULT '',
  128.   PRIMARY KEY (`idusuario`)
  129. ) ENGINE=InnoDB  DEFAULT CHARSET=latin2 AUTO_INCREMENT=2 ;
  130.  
  131. --
  132. -- Volcado de datos para la tabla `usuario`
  133. --
  134.  
  135. INSERT INTO `usuario` (`idusuario`, `usuario`, `clave`) VALUES
  136. (1, 'visit', '123');
  137.  
  138. /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
  139. /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
  140. /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

Además, necesitaría saber si puedo recibir los valores de captura al dar clic en cada uno de los combos para poder extraer los datos de ruta de la BD.

Disculpen si no se me entiende muy bien, pero soy novato en esto de programar y foros... Gracias.

Etiquetas: ayuda-php, js, sql
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:15.