jquery将html数据发布到mysql

时间:2012-02-10 09:20:31

标签: php jquery mysql ajax

我将html发布到我的upload.php文件并且im转换是在jquery中,但它存储在数据库中

%3Cdiv%20class%3D%22loungeTabsContainer%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cdiv%20id%3D%22tab1%22%20class%3D%22tab_content%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cul%20class%3D%22imageLibrary%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20

我怎么能像普通的html一样将它存储到数据库?代码块如下:

var id = $('body').attr('id');
    var content = escape(NewText);

    $.post("update.php", { id: id, content: content },
    function(response) {
        $("#response").html(response);
        $("#response").slideDown('slow');
        slideout();
        $("#loading").fadeOut('slow');
    });
    location.reload();

upload.php的

    $id = mysql_escape_string($_POST['id']);
$text = mysql_escape_string($_POST['content']);

// Connects to your Database 
mysql_connect("localhost", "#########", "###############") or die(mysql_error()); 
mysql_select_db("##########") or die(mysql_error()); 
mysql_query("UPDATE content SET content='".$text."' WHERE id='".$id."'") or die(mysql_error()); 

5 个答案:

答案 0 :(得分:0)

var content = escape(NewText); 

无效 试试这个而不是escape

var content = NewText.replace(/<\/?[^>]+>/gi, '');

我假设NewText是你包含数据的实际html

答案 1 :(得分:0)

你不需要在jQuery中转义它,因为$ .post()会自动为你做这个

答案 2 :(得分:0)

也许将mime类型更改为text / html - .post方法或其他地方的jquery设置应该有一个参数

答案 3 :(得分:0)

您发送的内容似乎是网址编码的。您可以使用urldecode对文本进行解码。

答案 4 :(得分:0)

首先,无需在jquery中进行转义,$.post()默认情况下在内部执行。

在发送jquery之前,请尝试检查您的内容。可能会被编码。