Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/11/2008, 01:30
sbsyoel
 
Fecha de Ingreso: julio-2008
Mensajes: 19
Antigüedad: 16 años, 4 meses
Puntos: 1
jQuery: Al usar $.ajax() se pierden datos POST

Hola!! Estoy programando un sencillo sistema para dejar comentarios en mi web, y me está dando unos cuantos quebraderos de cabeza. Os cuento lo que me ocurre, por si me podeis ayudar:

Lo que hago via jQuery es recoger el resultado del formulario y enviarlo a una página en php, que recogerá los datos y los almacenará en la base de datos. Pero por alguna razón los datos que llegan a la página PHP no son los originales y no lo entiendo.

Aquí dejo el código para que veais que puede estar ocurriendo.

SCRIPT jQUERY:

Código:
function docom(){
		var user;
		var id;
		var body;
		user = $("#comform_user").attr("value");
		id = $("#comform_id").attr("value");
		tinyMCE.activeEditor.save();
		body = $('#comform_body').attr("value");
		alert(body);
		if(body != ''){
		$.ajax({
			type: "POST",
			url: "docom.php",
			data: "user=" + user + "&id=" + id + "&body=" + body,
			success: function(datos){
				alert(datos);
				$('#com_wysiwyg').slideUp("slow", function () {$('#com_wysiwyg').html('<div class="comentario"><table><tr><td align="center" valign="top"><div class="com_avatar"><img src="users/avatar/' + user + '.jpg" width="60" height="75"></div><div class="com_username">' + user + '</div><div class="com_toolbar"></div></td><td rowspan="3" valign="top"><span class="body_com">' + datos + '</span></td></tr></table></div>').show(1000, function () {$("#com_wysiwyg").corner("10px"); $("#com_wysiwyg").css("margin-top", "0"); $("#com_wysiwyg").css("margin-bottom", "10px"); $(".com_avatar").corner("10px");});});
			}});
		}
		else{alert('El comentario no puede estar vacío');}
	}
El resultado del primer alert: alert(body); son los datos correctos por ejemplo: "<p>Este es mi comentario</p>"

Mientras que el segundo alert: alert(datos); me devuelve cosas como: "<p>Este es mi co". Es decir, no devuelve todo el contenido.

Os dejo también el código PHP:

Código:
	$user = $_POST['user'];
	$id = $_POST['id'];
	$body = $_POST['body'];

	include('connections/iyoel.php');
	
	$consulta_com = "INSERT INTO comentarios (user, type, content_id, body) VALUES('" . $user . "', 'A', '" . $id . "', '" . $body . "')";
	$resultado_com = mysql_query($consulta_com, $db);
	
	echo $body;
La verdad es que no entiendo que puede pasar. A ver si me podeis echar una mano.

Saludos.

Última edición por sbsyoel; 05/11/2008 a las 09:46