Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/11/2011, 07:16
emeotero
 
Fecha de Ingreso: mayo-2011
Ubicación: Santiago de Compostela
Mensajes: 126
Antigüedad: 13 años
Puntos: 0
Respuesta: seteo cookies no me funciona

¿con ajax no se puede recargar la informacion sin recargar la pagina una vez pasada la cookie? veo que realmente la cookie si se pasa, en el firebug en la cabecera veo que la cookie esta seteada pero no recarga la informacion del json. Al resultado de la consulta PHP lo convierto a formato Json, ese resultado es el que quiero cargar en el grid. ¿como puedo pasar entonces ese resultado del Json sin usar cookies? eso lo debo pasar a un javascript donde carga la informacion del grid
Código:
proxy: new GeoExt.data.ProtocolProxy({
				protocol: new OpenLayers.Protocol.HTTP({
				//url: "data/especie.json",
				method:'GET',
				url: "consulta3.php?date1="+ReadCookie('date1')+"&date2="+ReadCookie('date2')+"&especies="+encodeURI(ReadCookie('especies')),
			    format: new OpenLayers.Format.GeoJSON()
				})
		})
si como pongo comentado cargo el fichero en la url, me lo actualiza sin problema, si lo hago pasando la informacion por cookies es cuando falla.
La funcion que uso para enviar el formulario por ajax es
Código:
var xmlhttp; 
function xhr(formulario){ //funcion para crear las peticiones de XMLHttpResquest
// Generalmente sacada de páginas que usan un método para IE6 o anteriores,
// IE 7, FF, Opera, Google Chrome, u otros.
	/*var xmlhttp;*/
		if (window.XMLHttpRequest)
  			{// code for IE7+, Firefox, Chrome, Opera, Safari
  				xmlhttp=new XMLHttpRequest();
				
	  		}
		else
	  		{// code for IE6, IE5
  				xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
				
  		}
		xmlhttp.onreadystatechange = procesarRespuesta; //Ojo sin parentesis
		xmlhttp.open("POST", "consulta2.php", true); //fichero con la consulta y que genera el Json
		xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", 3);
		xmlhttp.setRequestHeader("Connection", "close");
		xmlhttp.send(formulario);
		}
	function procesarRespuesta(){
		if(xmlhttp.readyState == 4) {
      		if(xmlhttp.status == 200) {
				store.load();//esto carga el store (los datos) en el grid
			}
    	}
}