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

Problema con Envio de formulario.

Estas en el tema de Problema con Envio de formulario. en el foro de Frameworks JS en Foros del Web. Hola. A ver si me pueden ayudar porfa. Tengo este código de ajax que me envia un formulario. Código: function enviarFormulario(url, formid) { var Formulario ...
  #1 (permalink)  
Antiguo 31/10/2006, 14:43
 
Fecha de Ingreso: octubre-2005
Mensajes: 95
Antigüedad: 18 años, 6 meses
Puntos: 1
Problema con Envio de formulario.

Hola. A ver si me pueden ayudar porfa.
Tengo este código de ajax que me envia un formulario.

Código:
function enviarFormulario(url, formid)
{ 
         var Formulario = document.getElementById(formid); 
         var longitudFormulario = Formulario.elements.length; 
         var cadenaFormulario = "" 
         var sepCampos 
         sepCampos = "" 
         for (var i=0; i <= Formulario.elements.length-1;i++) 
		 { 
			 cadenaFormulario += sepCampos+Formulario.elements[i].name+'='+encodeURIComponent(Formulario.elements[i].value); 
			 sepCampos="&"; 
		 } 
  var peticion = nuevoAjax();
  peticion.open("POST", url, true); 
  peticion.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
  peticion.onreadystatechange = function () 
  { 
	  if (peticion.readyState == 4) 
	  { 
		 document.getElementById('frmmsg').innerHTML = peticion.responseText; 

	  } 
  } 
  peticion.send(cadenaFormulario); 
}
y estoy enviando un formulario con un area de texto, luego en la url especificada recibo la variable con $_POST['areatexto'] en donde la concateno con un string sql para insertar los datos.....todo bien...hasta que intento insertar una Ñ o parabras que contengan tildes.
Las ñ las transforma en ñ.
No he podido arreglarlo a pesar que he leido que se debe usar encodeURIComponent() tal como lo estoy haciendo...
también he probado cambiando la línea:
peticion.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=ISO-8859-1');
y
peticion.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8');
Alguien me ayuda porfa ?

Última edición por Bocaz; 31/10/2006 a las 14:49
  #2 (permalink)  
Antiguo 31/10/2006, 21:01
 
Fecha de Ingreso: agosto-2006
Mensajes: 110
Antigüedad: 17 años, 8 meses
Puntos: 1
Prueba esto

Hola, prueba a poner el charset utf-8 en la cabecera de la página (no sólo de la petición AJAX).
Si no te funciona, te doy otra solución, porque yo tengo un fichero de texto que contiene ña pero al incluir los datos en un div me entra como ñ.
Saludos.
  #3 (permalink)  
Antiguo 31/10/2006, 21:31
 
Fecha de Ingreso: octubre-2005
Mensajes: 95
Antigüedad: 18 años, 6 meses
Puntos: 1
Ok..gracias.
Lo también probé cambiando a utf-8 la cabecera de la página, pero el problema es que tengo un menú DHTML que desaparece cuando pongo esa cabecera...no tengo idea por que......jejee...
Finalmente lo he solucionado usando la función utf8_decode() al recibir el valor por post para luego concatenarlo a la SQL.
Nos vemos.
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 00:12.