Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera to com um código aqui dividido em 3 partes...
class_search.php
case 'users':
if(!empty($_REQUEST['user'])){
if(strlen($_REQUEST['user']) >= 3){
$_REQUEST['user'] = $this->sanitize($_REQUEST['user'], 'string');
$stmt = $this->sql->prepare('SELECT
url,
nome
FROM
animes
WHERE
nome LIKE ?
LIMIT 10');
$stmt->execute(array('%'.$_REQUEST['user'].'%'));
$this->queries++;
$c = 0;
if($admin){
$result['users'] = array();
}
if($stmt->rowCount() > 0){
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
if($admin){
$result['users'][$c] = array('name'=>($prefix ? '[usr] ' : '').$row['nome'], 'id'=>$row['url']);
$c++;
}else{
$result[] = ($prefix ? '[usr] ' : '').$row['nome'];
}
}
}
}
}
break;
general.js
$('#top_search').typeahead({
source: function(typeahead, query) {
$.ajax({
url: baseurl + "/ajax_calls.php",
dataType: "json",
type: "POST",
data: {
call: 'top_search',
user: query
},
success: function(data) {
typeahead.process(data);
}
});
},
onselect: function(obj) {
location.href= baseurl + '/animes/'+obj;
}
})
ajax_calls.php
case 'top_search':
$status = $site->process_autosearch('users');
break;
O código é bem simples a sua função é uma caixa de busca com auto complete, o que o visitante escreve na caixa ele faz uma busca na tabela animes e na coluna nome e retorna o nome do anime, exibindo os resultados, deixa o site bem legal apesar de ser desnecessário e talvez acabe deixando o MySQL mais pesado, porém quero essa função em meu site...
Ok, vamos ao problema, o script funciona perfeitamente mais o problema é no arquivo general.js na função onselect ao clicar no nome do anime o visitante vai ser redirecionado pra http://meusite.com/animes/nome do anime/ (sim, com espaços) quero corrigir isso e sei que vo precisar carregar a coluna url onde a URL da página está correta, mais não sei como inseri-la no JS, alguém pode me ajudar ?
Não sei se fui bem claro, mais se alguém puder me ajudar :B
Obrigado!
Olá Angelo, obrigado por responder...
Porém não é bem isso que procuro, o script que você me passo usa jQuery UI, a minha busca funciona com o Bootstrap e meu autocomplete funciona, o problema é ao clicar no resultado que manda pra URL, o do script apenas preenche o campo.
Simplificando, o problema mesmo é quando o visitante clica nos resultados que redireciona pro link incorreto, o que eu quero fazer é carregar a coluna url para o JSon, vejam o video de 15 segundos abaixo para entenderem melhor:
Obrigado
Boa tarde,
Veja se isso ajuda - http://www.htmlblog.us/jquery-autocomplete