getJSON Synchronous

OBJETIVO: O que eu estou procurando é obter dados do banco de dados e atualizar main.php (mais evidente através de draw_polygon) toda vez que algo é adicionado no banco de dados (depois de $ .ajax para submit_to_db.php).

Então, basicamente eu tenho um main.php que irá chamar ajax outro php para receber uma matriz que será salvo no banco de dados, e um json chamar outro php para retornar uma matriz será usada por main.php.

$(document).ready(function() {
    get_from_db();
    $('#button_cancel').click(function(){
       $.ajax({
          url: 'submit_to_db.php',
          type: 'POST',
          data: {list_item: selected_from_list},

          success: function(result){
             ...
             get_from_db();
          }
       });
    });
    function get_from_db(){
         $.getJSON('get_from_db.php', function(data) {
             ...
             draw_polygon(data);
         });
    }
 });

No meu caso, o que eu fiz foiget_from_db chamada de função paragetJSON para realmente obter dados do banco de dados, com os dados a serem usados ​​paradraw_polygon. Mas é assim que deve ser feito? Eu sou um novato completo e esta é a minha primeira vez para tentargetJSON e ajax também para ser honesto. Então, minha pergunta: Como o trabalho assíncrono realmente funciona? Existe outra solução para isso em vez de ter que chamar a funçãoget_from_db comgetJSON (não é síncrono, é por isso que não atualiza a página quando não está dentro de uma função?) o tempo todo - como$.ajax comasync: false (Eu não consegui fazê-lo funcionar pelo caminho). Minha abordagem está funcionando, mas achei que talvez houvesse outras maneiras melhores de fazer isso. Eu adoraria aprender como. Desde já, obrigado. Espero que esteja fazendo algum sentido.

Para tornar isso mais claro, aqui está o que eu quero alcançar:

@start de página, obter dados do banco de dados (atualmentegetJSON)Pintar ou desenharcanvas usando odataQuando clico no botão pronto, ele atualiza o banco de dadosQuero AUTOMATICAMENTE obter os dados novamente para repintar as alterações na tela.

questionAnswers(4)

yourAnswerToTheQuestion