Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: the_sheriff_pino en 30 Abril 2013, 12:31 pm



Título: Pequeño problema con script y select
Publicado por: the_sheriff_pino en 30 Abril 2013, 12:31 pm
Saludos foreros!

Tengo un pequeño problema con un script de jquery que espero me ayuden a resolver. Soy un completo aprendiz, por tanto idea... poca.

El script que tengo es para mostrar valores en select dependiendo de la elección de un select anterior. Provincias y poblaciones.

formulario.php
Código
  1. <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
  2. <script>
  3. $(document).on("ready",function()
  4. {
  5. $('#lista1').on("change",function()
  6. {
  7. var id = $('#lista1').val();
  8. var metodo = $('#formulario').attr('method')
  9. $.ajax(
  10. {
  11. url:"mostrarpoblaciones.php",
  12. type:metodo,
  13. data:{identidad: id},
  14. success: function(resp)
  15. {
  16.  
  17. $('#slista').html(resp);
  18.  
  19. },
  20. error: function(jqXHR,estado,error)
  21. {
  22.  
  23. alert("No se ha podido realizar la consulta a la base de datos, por favor intentelo de nuevo");
  24.  
  25. }
  26.  
  27.  
  28.  
  29. });
  30.  
  31.  
  32. });
  33.  
  34.  
  35. });
  36.  
  37. </script>
  38.  
Código
  1. </head>
  2. <form id="formulario" action="" method="post">
  3.    <table>
  4.        <tr>
  5.            <td>
  6.                <select id="lista1" name="lst1" class="field select addr">
  7.                    <?php
  8.                        include("obtenerprovincias.php")
  9.                    ?>
  10.                </select>
  11.            </td>
  12.            <td id="slista">
  13.  
  14.  
  15.            </td>
  16.  
  17.        </tr>
  18.  
  19.        </tr>
  20.    </table>
  21.  
  22. </form>
  23. </body>
  24.  

Mediante este script se obtienen las provincias:
obtenerprovincias.php
Código
  1. <?php
  2. $c=mysql_connect("localhost","root","");
  3. mysql_select_db("clientes",$c);
  4.  
  5. $consulta="SELECT * FROM lista_provincias";
  6. $completa=mysql_query($consulta,$c);?>
  7.  
  8.  
  9. <?php
  10.            while ($fila=mysql_fetch_assoc($completa))
  11.            {
  12.        ?>
  13.  
  14. <option value="<?php echo $fila['id'];?>"><?php echo $fila['opcion'];?></option>
  15.  
  16.  
  17. <?php
  18.  
  19.            }
  20.        ?>

y mediante este se muestran las poblaciones:
mostrarpoblaciones.php
Código
  1. <?php
  2. $c=mysql_connect("localhost","root","");
  3. mysql_select_db("clientes",$c);
  4. $id=$_POST['identidad'];
  5.  
  6. $consulta="SELECT DISTINCT id, opcion FROM lista_poblaciones WHERE id = $id ORDER BY opcion ASC";
  7. $completa=mysql_query($consulta,$c);?>
  8. <select id="lista2" name="lst2">
  9.  
  10. <?php
  11.            while ($fila=mysql_fetch_assoc($completa))
  12.            {
  13.        ?>
  14.  
  15. <option value="<?php echo $fila['opcion'];?>"><?php echo $fila['opcion'];?></option>
  16.  
  17.  
  18. <?php
  19.  
  20.            }
  21.        ?>
  22. </select>
  23.  

Aquí funciona todo correctamente, el problema es cuando lo intento insertar en un formulario mayor que me da error en la línea $id=$_POST['identidad']; de mostrarpoblaciones.php

Algún alma caritativa me dedica unos minutos?

PD: EL código del formulario mayor no puedo postearlo ya que supera el número de caracteres.

Un saludo y gracias por su atención!