Comunidad de diseño web y desarrollo en internet online

$.ajax actualizar todos los div haciendo una consulta a la DB

Citar            
MensajeEscrito el 18 Mar 2015 07:51 pm
Hola, tengo un problema que no puedo solucionar, resulta que tengo que hacer un sistema de toma de turnos donde las personas ven el turno que desean y le da "ok" al formulario y si tomó un turno TODOS los turnos disponibles se tienen que actualizar y mostrar los cupos disponibles haciendo una consulta a la base de datos. osea se tiene que actualizar el cupo de diferentes divs con distinto id,
los cuales los creo mediante un bucle dependiendo de los requerimiento del cliente. Lo tengo que hacer con $.ajax, y no con setInterval ya que son muchas personas las que toman los turnos y saturarían el servidor.

(hay que tener en cuenta que varias personas van a tomar turnos a la misma hora por lo cual los cupos van a ir cambiando de los diferentes divs)

ejemplo:

<div id='cupos_1'> Mostrar Cupos </div>
div id='turno_1'> Formulario </div>

<div id='cupos_2'> Mostrar Cupos </div>
div id='turno_2'> Formulario </div>

<div id='cupos_3'> Mostrar Cupos </div>
div id='turno_3'> Formulario </div>

<div id='cupos_4'> Mostrar Cupos </div>
div id='turno_4'> Formulario </div>

<div id='cupos_5'> Mostrar Cupos </div>
div id='turno_5'> Formulario </div>

etc.....


la página realiza la toma de turnos solo si recargo la pag. pero con jquery no, este es el codigo que tengo...

//tomo el turno desde acá

Código :

<script type="text/javascript">
   var id;

   function hacer_click_tomar_turno(i)
       {
          id = i;
          $(document).ready(function(){
      
               $.ajax({
                  type: "POST",
                  url: 'controladores/ctrl_all_tomar_turno2.php',
                  data: $("#frm_tomar_turno"+id).serialize(),
                     success: function(data) {
                        $('#result-cupos'+id).fadeOut("fast");
                        //$('#frm_soltar_turno'+id).fadeOut("fast");//antiguo
                        //$('#result_tomar_turno'+id).html(data);//antiguo

                        $('#frm_tomar_turno'+id).fadeOut("fast");//antiguo
                        
                        //$('#frm_soltar_turno'+id).fadeIn("fast");//antiguo
                        $('#result-cupos'+id).fadeIn("fast");
                        // mostrar cupos
                        $('#result-cupos'+id).html(data);
                     }
               });

         });    
          actualizar_cupos();

       }

// aca con esta función debería actualizar todos los cupos de los diferentes div con distinto id -->> ACÁ ESTA EL PROBLEMA!

function actualizar_cupos(){
   $(document).ready(function(){

         for (var i = <?php echo $iniTur; ?>; i <= <?php echo $finTur; ?>; i++) {
            //$('#ocultar'+i).text('Turno'+i);//aca me muestra en cada div el id del div
            //$('#frm_tomar_turno'+i).click(function(){//con este al tomar el turno me actualiza el cupos solo de ese div
         
               $.ajax({
                  type: "POST",
                  url: 'controladores/ctrl_all_tomar_turno3.php',
                  data: $('#frm_tomar_turno'+i).serialize(),
                  success: function(data) {
                        $('#ocultar'+i).html(data);
                     }
               });

            //alert (i);
            //});
         };
      });
}   

</script>

Necesito modificar el código de arriba ya que los archivos de php si funcionan, 100% probados.

Ayudenme xfa , alguna idea, sugerencia, algo ? ..

solo me falta mostrar todos los cupos y acabaría la pag :(

Saludos.


http://oi57.tinypic.com/a4r9jn.jpg

Por santijavier

0 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 Abr 2015 09:38 pm
sugerencia con que?? que es lo que no te funciona??

Por elporfirio

Claber

652 de clabLevel

1 tutorial

Genero:Masculino  

FullStack Web Developer

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.