我正在开发一个应用程序,用户可以在其中创建 HTML 模板并将它们保存到数据库中。模板由不同的组件组成,如文本、图像等。当我尝试用撇号 '
保存文本时,它给了我mysql_error
(显然)。所以我试图mysqli_real_escape_strings
取消它。它有效,但我想取回保存的内容以用于编辑目的,并且撇号使用\
(斜杠)进行转义。因此内容在内部被修改,不再是有效的 html 来编辑,浏览器抛出一个语法错误。
我还尝试搜索其他功能以进行转义并遇到json_encode
但mysql不接受。
有人可以指出我可以在 php 中执行此操作的任何函数吗?请建议任何可以为我执行任务的函数!
更新:
function saveContent(){
var $getContent = $('#mainWrap').clone();
$getContent.find('.textBox, .pictureBox').removeAttr('id');
var saveContent = $getContent.wrap('<div></div>').html();
console.log(saveContent);
var getBodyStyle=$('body').attr('style');
console.log('this is body style'+getBodyStyle);
var auto="auto";
$.ajax({
url:"auto_save.php",
type:"POST",
dataType:"text",
//data:"txtComp="+saveContent+"&auto="+auto+"&pageId="+pageId+"&webId="+webId+"&userId="+userId+"&bodyStyle="+getBodyStyle,
data: {txtComp: saveContent, auto: auto, pageId: pageId,webId:webId,userId:userId,bodyStyle:getBodyStyle}
});
}
我mysql_real_escape_string
在我的auto_save.php
. 现在,当我从 DB 取回它时,我必须将它传递给这样的 javascript 变量。
var getSavedContent = <?php echo json_encode($IdLessContent); ?>;
这会是个问题吗?