AJAX - Recoger resultado de un form

 
Vista:
sin imagen de perfil

Recoger resultado de un form

Publicado por emeotero (3 intervenciones) el 11/10/2011 16:30:40
Hola,
tengo un form q envio usando Ajax para q no me recargue la pagina, y quiero recoger los datos resultantes de la consulta en PHP. he probado a crear cookies pero el problema es q no responde a este metodo de las cookies, aun indicandole en el script PHP q elimine las cookies las cree, metiendo tiempo para eliminarlas etc. creo q la solucion esta en AJAX pero no se como decirselo.
dejo mi script en AJAX q envia los datos del form al servidor y a ver si alguien me puede ayudar a completarlo para recibir los datos del servidor y representarlos. Con tal motivo este codigo le puede servir a alguien q tenga problemas a la hora de enviar formularios.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
function enviarDatos(){
	var formulario = document.getElementById("formulario");
	var datos = new FormData(formulario);
	probadate1=document.getElementById('date1');
    proba_date1=probadate1.value;
    probadate2=document.getElementById('date2');
    proba_date2=probadate2.value;
	probachooser=document.getElementById('especies');
	// completar la seguiente linea para obtener los values seleccionados en "selector"
	var txt='';
	var i;
	var count = 0;
	for (i=0; i<probachooser.options.length; i++) {
	    if (probachooser.options[i].selected) {
	      if (count==0)
		txt+= "'"+probachooser.options[i].value+"'";
	      else
	     txt+= "#'"+probachooser.options[i].value+"'";
	    }
	count++;
	}
	//hace la comparacion de las dos fechas
	compareDates('datechooser','date1','date2');
    url_proba='date1='+proba_date1+'&date2='+proba_date2+'&especies='+txt;
	xhr(url_proba);
}
var xmlhttp;
function xhr(datos){ //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);
		xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", 3);
		xmlhttp.setRequestHeader("Connection", "close");
		xmlhttp.send(datos);
		}
	function procesarRespuesta(){
		if(xmlhttp.readyState == 4) {
      		if(xmlhttp.status == 200) {
			   // document.getElementById.innerHTML = xmlhttp.responseText;
			//alert(xmlhttp.responseText);
			//recarga el grid al hacer la peticion. es un grid de extjs con un GeoJson
				store.load();
 
			}
    	}
}

En la consulta PHP hago un echo del resultado de la consulta para poder recoger el resultado y escribirlo en el grid.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder