Estou tentando desenvolver uma busca por lojas no site da empresa onde trabalho. Não preciso de nada que seja complexo demais, na verdade a coisa é até bem simples.
Eu já tenho o formulário e o banco de dados montado, só me falta fazer a busca funcionar.
Seguem os arquivos:
index.php
<html>
<head>
<script type="text/javascript" src="filtro.js"></script>
<title>Exemplo: Populando selects de cidades e estados com AJAX (PHP e jQuery) | DaviFerreira blog!</title>
<style type="text/css">
*, html {
font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
margin: 0px;
padding: 0px;
font-size: 12px;
}
a {
color: #0099CC;
}
body {
margin: 10px;
}
.carregando{
color:#666;
display:none;
}
</style>
</head>
<body>
<?php
$con = mysql_connect( 'localhost', 'root', 'root' ) ;
mysql_select_db( 'root', $con );
?>
<label for="cod_estados">Estado:</label>
<select name="cod_estados" id="cod_estados">
<option value="">-- Qual é o seu estado? --</option>
<?php
$sql = "SELECT cod_estados, sigla
FROM estados
ORDER BY sigla";
$res = mysql_query( $sql );
while ( $row = mysql_fetch_assoc( $res ) ) {
echo '<option value="'.$row['cod_estados'].'">'.$row['sigla'].'</option>';
}
?>
</select>
<label for="cod_cidades">Cidade:</label>
<span class="carregando">Aguarde, carregando...</span>
<select name="cod_cidades" id="cod_cidades">
<option value="">-- Qual é a sua cidade? --</option>
</select>
Utilizamos cookies e tecnologias semelhantes de acordo com a nossa Política de Privacidade, e ao continuar navegando, você concorda com estas condições.
Pergunta
L3Leo
Olá, Pessoal. Tudo bem?
Estou tentando desenvolver uma busca por lojas no site da empresa onde trabalho. Não preciso de nada que seja complexo demais, na verdade a coisa é até bem simples.
Funciona de seguinte maneira: O cliente deverá escolher o estado onde ele mora e a cidade, feito isso aparecerá na parte debaixo as lojas que atendem naquela cidade, mais ou menos como funciona neste site: http://multilaser.com.br/ondecomprar/index/BO380/mochila-swiss-vermelha-multilaser-bo380.html
Eu já tenho o formulário e o banco de dados montado, só me falta fazer a busca funcionar.
Seguem os arquivos:
index.php
<html>
<head>
<script type="text/javascript" src="filtro.js"></script>
<title>Exemplo: Populando selects de cidades e estados com AJAX (PHP e jQuery) | DaviFerreira blog!</title>
<style type="text/css">
*, html {
font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
margin: 0px;
padding: 0px;
font-size: 12px;
}
a {
color: #0099CC;
}
body {
margin: 10px;
}
.carregando{
color:#666;
display:none;
}
</style>
</head>
<body>
<?php
$con = mysql_connect( 'localhost', 'root', 'root' ) ;
mysql_select_db( 'root', $con );
?>
<label for="cod_estados">Estado:</label>
<select name="cod_estados" id="cod_estados">
<option value="">-- Qual é o seu estado? --</option>
<?php
$sql = "SELECT cod_estados, sigla
FROM estados
ORDER BY sigla";
$res = mysql_query( $sql );
while ( $row = mysql_fetch_assoc( $res ) ) {
echo '<option value="'.$row['cod_estados'].'">'.$row['sigla'].'</option>';
}
?>
</select>
<label for="cod_cidades">Cidade:</label>
<span class="carregando">Aguarde, carregando...</span>
<select name="cod_cidades" id="cod_cidades">
<option value="">-- Qual é a sua cidade? --</option>
</select>
<script src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load('jquery', '1.3');
</script>
<script type="text/javascript">
$(function(){
$('#cod_estados').change(function(){
if( $(this).val() ) {
$('#cod_cidades').hide();
$('.carregando').show();
$.getJSON('cidades.ajax.php?search=',{cod_estados: $(this).val(), ajax: 'true'}, function(j){
var options = '<option value=""></option>';
for (var i = 0; i < j.length; i++) {
options += '<option value="' + j.cod_cidades + '">' + j.nome + '</option>';
}
$('#cod_cidades').html(options).show();
$('.carregando').hide();
});
} else {
$('#cod_cidades').html('<option value="">– Escolha um estado –</option>');
}
});
});
</script>
<input type="submit" name="submit" id="submit" value="Buscar">
</body>
</htm>
cidades.ajax
<?php
header( 'Cache-Control: no-cache' );
header( 'Content-type: application/xml; charset="utf-8"', true );
$con = mysql_connect( 'localhost', 'root', 'root' ) ;
mysql_select_db( 'root', $con );
$cod_estados = mysql_real_escape_string( $_REQUEST['cod_estados'] );
$cidades = array();
$sql = "SELECT cod_cidades, nome
FROM cidades
WHERE estados_cod_estados=$cod_estados
ORDER BY nome";
$res = mysql_query( $sql );
while ( $row = mysql_fetch_assoc( $res ) ) {
$cidades[] = array(
'cod_cidades' => $row['cod_cidades'],
'nome' => (utf8_encode($row['nome'])),
);
}
echo( json_encode( $cidades ) );
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.