2012-02-10 52 views
0

即時發佈HTML我upload.php的文件和IM逃逸是jQuery的,但它在數據庫中jQuery的發佈HTML數據到mysql

%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()); 

回答

0

它看起來像你發送的內容是網址編碼。您可以使用urldecode來解碼文本。

0
var content = escape(NewText); 

不工作 嘗試,而不是escape

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

我假設NewText這是你的實際的HTML含有數據

0

您不需要在jQuery中轉義它,因爲$ .post()會自動爲您執行它

0

也許將mime類型更改爲text/html - .post方法應該有一個參數可用或在其他地方的jQuery設置

0

首先,不需要在jquery中轉義,$.post()默認在內部執行。

嘗試檢查您的內容,然後發送到jquery。可能被編碼。