problemas com combobox

Enviada por Aprendiz de PHP 
Aprendiz de PHP
problemas com combobox
11 de August de 2010 às 02:03PM
Estou tentando fazer um combo box onde o usuario informa primeiro o estado, informado o estado, no box seguinte (cidade) são carregadas apenas as cidades desse estado, e depois de informar a cidade, são listados no box seguinte apenas os bairros dessa cidade.

Peguei um tutorial e tentei adaptar ele a minha realidade. Mas o código não está funcionando.

endereço do tutorial http://www.gilbertoa...com-jquery-php/

vejam como está:

formulario:

<select name="estados" id="estados" onchange="buscacidades('xmlcidades.php','cidades');">
<option selected="selected" value="nada">-- Estados --</option>
<option value="PB">PARA&Iacute;BA</option>
<option value="AL">ALAGOAS</option>
<option value="CE">CEAR&Aacute;</option>
<option value="PE">PERNAMBUCO</option>
<option value="RN">RIO GRANDE DO NORTE</option>
<option value="SE">SERGIPE</option>
</select>
<br />
<select name="cidades" id="cidades" onchange="alert(this.value);" >
<option>-- Escolha um Estado --</option>
</select>
<br />
<select name="bairros" id="bairros">
<option>-- Escolha uma Estado --</option>
</select>


o código do java script:

jQuery(document).ready
(
function()
{
comboDinamico("estados", "cidades", "bairros");
}
);

comboDinamico = function(estados, cidades, bairros) {

var estado = document.getElementById(estados);
var cidade = document.getElementById(cidades);
var bairro = document.getElementById(bairros);

$(estados).load('localizacoes.php?tipo=estado');
$(estados).change(
function() {
if($(this).val() == 0) {
alert('Você precisa informar o ESTADO!');
$(this).focus();
} else {
$(cidades).load('localizacoes.php?tipo=cidade&estado=' + $(this).val());
}
}
);
$(cidades).change(
function() {
if($(this).val() == 0) {
alert('Você precisa informar a CIDADE!');
$(this).focus();
} else {
$(bairros).load('localizacoes.php?tipo=bairro&cidade=' + escape($(this).val()));
}
}
);

$(bairros).change(
function() {
if($(this).val() == 0) {
alert('Você precisa informar o BAIRRO!');
$(this).focus();
} else {
return true;
}
}
);
}


e por fim o código que monta os combobox

switch($_GET['tipo'])
{
case 'estado' :
$sql = mysql_query("SELECT * FROM estados_federacao")or die("Query invalida: " . mysql_error());
while ($row = mysql_fetch_array($result)) {
$option = $row["uf"];
$string = $row["estado"];
echo "<option value=\"$option\">$string</option>";
}
break;
case 'cidade' :
$sql = mysql_query("SELECT * FROM municipios WHERE uf = '%uf'", $_GET['estado']);
$option = $row["nome_municipio"];
$string = $row["nome_municipio"];
echo "<option value=\"$option\">$string</option>";
break;
case 'bairro' :
$sql = sprintf("SELECT * FROM municipios_bairros WHERE cidade = 'municipio'", ($_GET['cidade']));
$option = $row["bairro_id"];
$string = $row["bairro"];
echo "<option value=\"$option\">$string</option>";
break;
}


desde já agradeço pela ajuda
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.