Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Problema con envio de variables con ajax.send

Estas en el tema de Problema con envio de variables con ajax.send en el foro de Frameworks JS en Foros del Web. Buenas, para ir al grano, yo he actualizado mi servidor local a versiones mas recientes de apache, mysql, php, etc. Todas estas venian en el ...
  #1 (permalink)  
Antiguo 10/02/2009, 17:52
 
Fecha de Ingreso: diciembre-2006
Mensajes: 9
Antigüedad: 18 años
Puntos: 0
Problema con envio de variables con ajax.send

Buenas, para ir al grano, yo he actualizado mi servidor local a versiones mas recientes de apache, mysql, php, etc. Todas estas venian en el pack del conocido xampp. Antes de actualizar mi servidor yo podia ejecutar tranquilamente mis scripts de ajax, pero al actualizar me ha surgido el problema con una de las funciones que yo tanto utilizo para el desarrollo de codigos mediante ajax.
Logrando depurar el codigo pude ver que la falla esta en la funcion que yo utilizo para pasar variables a mis archivos .php la cual es "ajax.send".

En sí el problema esta cuando yo acciono una funcion javascript la cual utiliza AJAX para generar las consultas en un archivo php y luego poder actualizar el contenido del div de acuerdo a dicha consulta.

para ser mas claro, yo tengo este codigo javascript:

Código:
function ModificarRegistro_cod(id){
	divResultado = document.getElementById('formulario');

	ajax=objetoAjax();
	
	user=document.form2.user.value;
	pass=document.form2.pass.value;
	act=true;
	
	ajax.open("POST", "agregar.php",true);
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			var scs=ajax.responseText.extractScript();
			divResultado.innerHTML=ajax.responseText;
			scs.evalScript();
		}
	}
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

	ajax.send("id="+id+"&user="+user+"&pass="+pass+"&act="+act);
}

Como podran ver a lo último marcado con negrita esta la parte de codigo que me genera problemas, ya que no se me envian dichas variables al archivo AGREGAR.PHP.
Yo pude optar por una solución para esto, pero es mas tediosa ya que me obliga a tener que modificar todos mis codigos y hacerlos un poquito mas extensos.

Habra alguna forma de poder solucionar este error? alguien sabe a que se debe ese problema?

Desde ya, MUCHAS GRACIAS
  #2 (permalink)  
Antiguo 10/02/2009, 23:08
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Problema con envio de variables con ajax.send

Mmm el problema lo tienes en que las variables se envian vacias, o que al recibirlas en PHP tienes que usar $_POST['variable']??

Saludos
  #3 (permalink)  
Antiguo 11/02/2009, 09:55
 
Fecha de Ingreso: diciembre-2006
Mensajes: 9
Antigüedad: 18 años
Puntos: 0
Respuesta: Problema con envio de variables con ajax.send

Pero desde que uso ajax, yo, al enviarlas mediantes ajax.send, luego en el archivo php con solo poner el llamado a la variable, por ejemplo $user, ya obtenia directamente el valor pasado por la funcion javascript. Que puede haber pasado que me halla dejado de funcionar de esta forma?
  #4 (permalink)  
Antiguo 11/02/2009, 11:45
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Problema con envio de variables con ajax.send

Lee: http://www.php.net/register_globals es una directiva para que se autoregistren, pero es muy inseguro, lo mejor es que uses $_POST['user']

Saludos
  #5 (permalink)  
Antiguo 11/02/2009, 16:08
 
Fecha de Ingreso: diciembre-2006
Mensajes: 9
Antigüedad: 18 años
Puntos: 0
Respuesta: Problema con envio de variables con ajax.send

Muchas gracias GatorV, no sabia sobre eso. Gracias por la rapidez de tus respuestas. :)

Saludos Adios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:57.