Ir para conteúdo

Arquivado

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

Beto Lima

[Resolvido] Passar o valor do input para o ajax

Recommended Posts

Única coisa que não entendi foi a atribuição de uma variável numa sessão sem a sessão estar iniciada.

 

ex: $_SESSION['code']=$id;

 

Não seria obrigado a iniciar a sessão primeiro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem quanto a sua questao eu tinha session start mas nao funcionou dava um erro qualquer entao coloquei sem o start e funcionou bem. Acho que nao e necessario. Tem ae mtas coisas que podem ser dificieis de compreender, a quantidade de sessoes, a chamada das funcoes a quantidade dos parametros e pk de parametros sem nada, isso tudo tem explicacao e foi dificil de chegar ate la tive de tutilizar varios tipos de logica, mas pronto isso agora nao importa o que importa e funcionar.

 

 

Basicamente o problema estava em que nas outra paginas da paginacao ia chamar uma funcao da pagina principal e qual pegava nao so a pagina que iria mostrar mas tambem o valor a ser procurado, pois sem isso o valor perder-se-ia em cada chamada, meio estranho isto mas foi isso que fez com que nao funcionasse nos primeiros ups que eu te mandei. Mas felizmente, a solucao chegou!!!

 

qualquer duvida e so perguntar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Webmind como vai?

To com um problema de acentuação muito loco....

já usei utf8_encode , decode, htmlentities na saída da variavel e nada.

 

usei tb o header("Content-Type: text/html; charset=ISO-8859-1",true);

 

o problema é o seguinte:

 

digitando no input qualquer palavra que não contenha acento ele busca normal e mostra normal em FIREFOX E OPERA.

já no IE6 ele busca mas os resultados que tem acento ele mostra com ?

 

digitando algo com acento ex: "resolução" no input ele busca também mas mostra com erros de acentuação na saída com FIREFOX E OPERA.

a saíde de um registro ficou assim:

 

Camera digital Nikon

Categoria: Cameras

Resolução 12mega pixel, bateria recarregável

R$ 2.499,00

 

E o mais intrigante que acabei de perceber, foi quase sem querer até, no IE7 nenhum link funciona....nada.....

vou colocar ele no ar e te mostrar...

Compartilhar este post


Link para o post
Compartilhar em outros sites

na minha body estou passando o parametro pra chamar a index na descarregada.

 

<body onload="pesquisa(0,'home','');">

 

fui inventar de remover esse onload só pra testar no ie7.

 

resultado: clicando em qualquer link, ele funciona uma vez só entende?

 

depoia tranca e nada funciona...

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem o problema pode ser da propria declaracao do ajax, mas e estranho pk funciona no IE6, mas de qualquer maneira tente declarar o ajax da seguinte maneira

 

function ajaxInit() {
		var req;
		try {
			req = new ActiveXObject("Microsoft.XMLHTTP");
		} catch(e) {
			try {
				req = new ActiveXObject("Msxml2.XMLHTTP");
			} catch(ex) {
				try {
					req = new XMLHttpRequest();
				} catch(exc) {
					alert("Esse browser não suporta Ajax");
					req = null;
				}
			}
		}
		return req;
	}
	function verificar(op){
		//var loadiv = document.getElementById("loading");
		ajax = ajaxInit(); 
		ajax.open("GET",op, true); 
		ajax.onreadystatechange=function() {
			 /*   if (ajax.readyState==1){
			document.getElementById("popup").innerHTML = "<img src='load.gif' />";
			}*/
			if (ajax.readyState==4){
		
		   var  t= document.getElementById("msg");
	t.innerHTML = ajax.responseText;
			}
		}
		ajax.send(null);
	}

 

ja deve funcionar. Quanto aos acentos estive vendo no forum php e eles aconselham o header

 

http-equiv="Content-Type" content="text/html; charset=ISO-8859-1", mas pelo que vi você ja utilizou. de uma olhada no forum php pode ser que ache la.

 

se tiver msn add o meu endereco e web.mind@hotmail.com

Compartilhar este post


Link para o post
Compartilhar em outros sites

webmind, te add no msn...

 

talvez eu tenha errado mas não consegui fazer funcionar com este último js que você passou.

 

vou colocar aqui exatamente como está o meu:

 

var AJAXForms = false;
var isIE = false;
// on !IE we only have to initialize it once
if (window.XMLHttpRequest) {
	AJAXForms = new XMLHttpRequest();
}

function verificar(op) {
//alert(op)
	if (window.XMLHttpRequest) {
	// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		AJAXForms = new ActiveXObject("Microsoft.XMLHTTP");
	}

  AJAXForms.onreadystatechange = processChange;
  AJAXForms.open("GET", op);
  
  AJAXForms.send(null);
}

function processChange() {
  if (AJAXForms.readyState == 1) { 
	var  t= document.getElementById("carregando");
	t.innerHTML = 'Carregando, por favor aguarde...';
  }
  else if (AJAXForms.readyState == 4) { 
	var  t= document.getElementById("conteudo");
	t.innerHTML = AJAXForms.responseText;
  }
}


function pesquisa(op,codigo,pagina){

switch(op){//inicio switch

case 0:	{ // CHAMADO NO ONLOAD DA INDEX, CAPA INICIAL
		url="conteudo.php?link="+codigo;
		break;
		}

case 1: { // FORM DE BUSCA
		name = escape(document.getElementById('caixa').value); // INPUT DO BUSCA
		if(name!=""){ // SE VARIAVEL NÃO FOR VAZIA
			if(pagina==""){ // SE PAGINA FOR VAZIO
			url="processa_busca.php?nome="+name;
			}
			else {
			url="processa_busca.php?_pagi_pg="+pagina+"&nome="+name;
			}//fim else
		}//fim
break;
		}

case 2:	{ // CATEGORIAS
		if(pagina==""){
		//alert("A pagina nao contem valor")
			url="processa_categoria.php?categoria="+codigo;
		}
		else {
		//alert("A pagina contem valor")
		url="processa_categoria.php?_pagi_pg="+pagina+"&categoria="+codigo;
		}//fim else
break;
		}

case 3:	{ // CATEGORIA GERAL
		url="processa_geral.php?geral="+codigo;
break;
		}
}//fim switch


verificar(url);
}

 

onde altero pra ficar com você passou?

valeu....

 

Obs: a questão dos caracteres especiais do form já resolvi....

Compartilhar este post


Link para o post
Compartilhar em outros sites

troque o codigo abaixo pelo que eu passei acima

 

var AJAXForms = false;
var isIE = false;
// on !IE we only have to initialize it once
if (window.XMLHttpRequest) {
	AJAXForms = new XMLHttpRequest();
}

function verificar(op) {
//alert(op)
	if (window.XMLHttpRequest) {
	// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		AJAXForms = new ActiveXObject("Microsoft.XMLHTTP");
	}

  AJAXForms.onreadystatechange = processChange;
  AJAXForms.open("GET", op);
  
  AJAXForms.send(null);
}

function processChange() {
  if (AJAXForms.readyState == 1) {
	var  t= document.getElementById("carregando");
	t.innerHTML = 'Carregando, por favor aguarde...';
  }
  else if (AJAXForms.readyState == 4) {
	var  t= document.getElementById("conteudo");
	t.innerHTML = AJAXForms.responseText;
  }
}

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.