Ir para conteúdo

POWERED BY:

Arquivado

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

Rafael Antonio da Silva

Erro na função com caracter '#' ao buscar dados

Recommended Posts

Boa noite estou, com um problema em tentar fazer uma busca no banco de dados, meu projeto é o seguinte um input onde o usuário digita o nome e como o Ajax retorna se o nome já esta cadastrado no banco ou não.

O problema é que quando o usuário digita (seunome#algumacoisa) após o caracter ' # ' não é passada para a pagina php o restante da frase muito menos o caracter ' # ', alguém poderia me dar uma força agradeço,

 

 

 

busca.js

-----------------------------------------------------------

function openAjax(){
	var ajax;

try{
	ajax = new XMLHttpRequest();
}catch(erro){
	try{
		ajax = new ActiveXObject("Msxl2.XMLHTTP");
	}catch(ee){
		try{
			ajax = new ActiveXObject("Microsoft.XMLHTTP");
		}catch(e){
			ajax = false;
		}
	}
}
return ajax;
}//instancia dinamicamente o objecto xmlhttp

function busca(){

	if(document.getElementById){
		var termo = document.getElementById('q').value;
		var exibeResultado = document.getElementById('exibe');
		
		if(termo !== "" && termo !== null && termo.length >= 1){
			var ajax = openAjax();
			
			ajax.open("GET", "busca/buscar.php?q="+termo, true);
			ajax.onreadystatechange = function(){
				if(ajax.readyState == 1){
					exibeResultado.innerHTML = '<p>Carregando resultados...</p>';
				}
				
				if(ajax.readyState == 4){
					if(ajax.status == 200){
						var resultado = ajax.responseText;
						resultado = resultado.replace(/\+/g, " ");
						resultado = unescape(resultado);
						exibeResultado.innerHTML = resultado;
					}else{
						exibeResultado.innerHTML = '<p>Ouve algum erro na requisição</p>';
					}
				}
			}
			ajax.send(null);
		}
	}
}

buscar.php

-----------------------------------------

<?php

  echo $get =  $_GET['q'];  

?>

index.php

--------------------------------------

         <form name="cadastro" action="#" method="post">
            <input name="q" id="q" type="text" onKeyUp="busca();" placeholder="nome" value="nome" />
               <input type="submit" name="login_bar" id="login_bar" value="enviar" border="0" />
        </form>
         
         
         <div id="exibe"></div>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu acho que o jogo da velha é reservado para alguma outra coisa, tente substituí-lo por outra coisa, voce pode deixar o usuario escrever no formato nome#algumaCoisa, mas antes de você passar os valores para o php, substitua o # po algo diferente, tipo underline ou algo semelhante

Compartilhar este post


Link para o post
Compartilhar em outros sites

@cristianoolv

 

Asim funcionou ele altera o ' # ' posr ' - ', mais você saberia como posso fazer para quando ele digitar ' # ' no campo input onde está digitando ele não aparecer o ' # ', exemplo estou digitando e no meio digitei ' # ' este caracter não aparecer ?



.replace(/#/g,"")

para mim colocar no replace que é para deletar na digitação mais de um caracter como faço, ex: quero tirar # , ç * .

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.