• Publicidad

Ajax: Error al enviar datos de un texto por XMLHTTPRequest

Todo lo relacionado con lenguajes de programación distintos de Perl: PHP, Java, C++, Ruby, Python, etc.

Ajax: Error al enviar datos de un texto por XMLHTTPRequest

Notapor rookie » 2006-04-19 12:21 @556

Saludos a todos.

Estoy haciendo una prueba utilizando Ajax, enviando datos de un cliente a un proceso servidor. En el "cliente" el usuario ingresa una cadena X en una caja de texto, el valor ingresado se manda al "servidor" para su validación (por medio de un objeto XMLHttprequest); el servidor debe mandar un mensaje de error si es que el texto ingresado es incorrecto.

El problema se presenta en el metodo Open, ya que estoy seguro que cometo un error al mandar el valor como argumento, ya que mi proceso en el servidor me manda un mensaje que yo mismo coloqué en caso de que no se encuentre cadena alguna. Aquí les mando las líneas del problema.
Código: Seleccionar todo
function valida()
 {   _objeto=objetus(); //creamos el objeto XMLHttpRequest llamando a la función objetus
      _valor=document.valida_con_ajax.caja_texto.value    //tomo el valor de text_box
      _valor_a_enviar="funcion=caja_texto&valor="+_valor     //armo el parámetro a enviar. Creo que aquí está el problema
     _URL_="proceso2.php?"                                             
     _objeto.open("GET",_URL_+"&"+_valor_a_enviar,true);    //llamando a OPEN
         
     _objeto.onreadystatechange=function() {      //Recibiendo la respuesta del servidor
       if (_objeto.readyState==4)   
         {   window.alert(_objeto.responseText);     
         }

Seguramente estoy cometiendo un error al mandar el valor de mi caja de texto, al asignarlo a "_valor_a_enviar" pero no he encontrado la manera. Ya intenté colocando solamente:
Código: Seleccionar todo
 _valor_a_enviar="funcion=_valor"
Pero no me funciona, aunque para otros ejercicios, esta línea si esta funcionando.

Agradezco su ayuda de antemano.
Hasta pronto
rookie
Perlero nuevo
Perlero nuevo
 
Mensajes: 41
Registrado: 2006-03-01 18:48 @825

Publicidad

Notapor explorer » 2006-04-19 14:37 @650

Yo diría que sobra el '&' en el open... Prueba con
Código: Seleccionar todo
_objeto.open("GET",_URL_ + _valor_a_enviar, true); //llamando a OPEN
pero debería seguir funcionando.

Podrías mirar con la función que defines en statechange si el diálogo con el servidor recorre los valores del 0 al 3, sacándolos en una alerta, para verlos...

Aquí tienes más código para comparar.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor rookie » 2006-04-19 16:57 @748

Saludos explorer.

Intenté con la modificación que me indicaste, pero no me funcionó, aunque entré al link que amablemente me pasaste y encontré una variación con la cual me funcionó; quedaría así:
Código: Seleccionar todo
_valor=document.getElementById('caja_texto').value;
_URL_="proceso2.php?param="
_objetus.open("GET",_URL_+escape(_valor), true);

Así me funciona el paso del valor de la caja de texto por medio del objeto XMLHttprequest y puedo hacer el manejo del dato ya del lado del servidor.

Gracias por la ayuda.
Hasta pronto.
rookie
Perlero nuevo
Perlero nuevo
 
Mensajes: 41
Registrado: 2006-03-01 18:48 @825


Volver a Programación en general

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado