Ir para conteúdo

POWERED BY:

Arquivado

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

leanpir

Combo ordenar por cidades

Recommended Posts

Olá a todos. Desculpem se postei no lugar errado e peço aos Administradores que por gentileza movam o tópico para o lugar correto.

Minha dúvida é a seguinte;

Seguindo um video no Youtube:

criei tudo vendo o video e alterei algumas opções e deu tudo certo. Só não consegui fazer um combo(JumpMenu) mostrar as cidades e quando eu buscar um nome eu possa tb filtrar somente pela cidade.

Se alguém puder me ajudar ficarei grato seguem os arquivos:

Estudos.js
var apresenta = $('.resultados');
	
	apresenta.hide().html('<li style="color:green">Aguarde, Carregando...</li>');
	$('.j_autocomplete').autocomplete({
		//source: resultado	
		//source: 'php/completar.php'
		source: 'php/controller.php?acao=completar',
		
		/*select: function(event, ui){
			var pegar = ui.item.value;
			$.ajax({
				url: 'php/controller.php',
				data: 'acao=pesquisar&valor='+pegar,
				success: function( resposta ){
					apresenta.fadeTo(500,0.5,function(){
						$(this).html(resposta).fadeTo(500,1);
					});					
				}				
			});			
		}*/
		
		select: function(event, ui){
			var pegar = ui.item.value;
			retornadados(pegar);
		},
		change: function( dados ){
			retornadados( $(this).val() );
		}
	});
	
	function retornadados( dados ){
		$.ajax({
			url: 'php/controller.php',
			data: 'acao=pesquisar&valor='+dados,
			success: function( resposta ){
				apresenta.fadeTo(500,0.5,function(){
					$(this).html(resposta).fadeTo(500,1);
				});					
			}				
		});		
	}



Controller.php
<?php

require('conexao.php');

$acao = ($_POST['acao'] ? $_POST['acao'] : $_GET['acao']);
$acao = mysql_real_escape_string($acao);

switch($acao){
	case 'completar':
		$search = mysql_real_escape_string($_GET['term']);
		$qr = "SELECT * FROM mod6_clientes WHERE nome LIKE '%$search%' GROUP BY nome ORDER BY nome ASC";
		$ex = mysql_query($qr) or die(mysql_error());	
		$resJson = '[';
		$first = true;
		
		while($res = mysql_fetch_assoc($ex)):			
			if(!$first):
				$resJson .= ', ';
			else:
				$first = false;
			endif;			
			$resJson .= json_encode($res['nome']);			
		endwhile;
		
		$resJson .= ']';		
		echo $resJson;	
	break;
	
	case 'pesquisar':
		$pesquisa = mysql_real_escape_string($_GET['valor']);
		$qr = "SELECT * FROM mod6_clientes WHERE nome LIKE '%$pesquisa%' ORDER BY nome ASC, sobrenome ASC";
		$ex = mysql_query($qr) or die(mysql_error());
		if(mysql_num_rows($ex) >= 1){
			while($res = mysql_fetch_assoc($ex)):
				echo '<li>';
					echo $res['nome'].' '.$res[cidade].' - <strong>'.$res['telefone'].'</strong>';
				echo '</li>';
			endwhile;
		}else{
			echo '<li style="color:#900">Nada encontrado!</li>';	
		}
	break;
	
	default:
	echo 'Selecione uma ação!';
}

?>

Index.php
<div class="box bloco" id="autocomplete">
	<h2>jQuery UI - Auto complete</h2>    
    <input type="text" class="j_autocomplete" name="search" />
    
    <ul class="resultados">
    	<li>Enzo - <strong>RJ</strong></li>
    </ul>
    
</div>


mod6_clientes
Id | nome    | sobrenome | email           | telefone | cidade
1  | Ana     | Silva     | ana@uol.com     |2778-0001 | SP
2  | Enzo   | Silva      | enzo@uol.com    |2778-0002 | SP
3  | Enzo   | Silva      | enzo@lol.com    |2778-0003 | RJ
4  | João   | Silva      | enzo@gmail.com  |2778-0004 | RJ
5  | Juan   | Silva      | enzo@ig.com     |2778-0005 | RJ
6  | Enzo   | Silva      | enzo@esc.com    |2778-0006 | RJ


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.