Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

CrazyLOL

Melhores formas de programar

Recommended Posts

Pessoal seguinte, gostaria de saber se existe uma forma mais 'profissional' ou se a forma que estou fazendo é certa, ou se tem algo que posso aprimorar na questão de consultas no banco usando jquery e php... (muitos ou nao é?)

 

Explicando melhor a dúvida segue o codigo abaixo:

$("select[name=cidade]").html("<option selected>Carregando...</option>");
$.post("http://meusite.com.br/selectDinamico.php", 
                  {estado:$("#uf").val()},
                  function(valor){
				
                     $("select[name=cidade]").html(valor);
                  }
              )

Acima estou fazendo uma consulta e retornando no meu html, o arquivo php tem a estrutura normal do Select e a exibição eu estou usando um echo... bem basicamente é isso.

 

Porém a forma que estou fazendo é o certo? Se não for qual a forma que deveria fazer isso? Como sou novato ainda nisso gostaria de opniões de vocês, que já estão mais tempo no mercado e atendendo grandes empresas.

Gostaria de seguir as boas praticas de programação que hoje temos em nosso setor..

 

Aguardo opnioes de voces

:D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou expor a maneira que eu faria...

Eu trabalharia com resultado do ajax em json, para popular o select

var city = $("select[name=cidade]"),
    uf   = $(this).val();

city.html( $("<option/>", {text: "Carregando..."}) );

$.post("http://meusite.com.br/selectDinamico.php", { estado: uf }, function(data) {
    city.empty();

    for(key in data) {
        city.append($("<option/>", {
            value: key,
            text: data[key]
        }));
    }
}, 'json');

Teria que alterar o PHP que retorna os dados, para retornar em json, o que é simples.
Primeiro voce monta em array, depois converte em json

$cidades = array('goiania' => 'Goiânia', 'aparecida-de-goiania' => 'Aparecida de Goiânia');
echo json_encode($cidades);

Seria algo assim... separando as camadas.

 

Obs: Acredito que todo esse bloco de código aconteça dentro do evento change do estado, por este motivo eu eliminei o seletor #uf e passei uma variável...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.