Revertendo o efeito de mysqli_real_escape_string
Estou trabalhando em um aplicativo onde o usuário pode criar modelos HTML e salvá-los no banco de dados. Os modelos consistem em componentes diferentes, como texto, imagem, etc. Quando tento salvar o texto com umapóstrofo '
isso me dámysql_error
(obviamente) .Então eu tenteimysqli_real_escape_strings
para nulificar it.It trabalhou, mas eu quero voltar o conteúdo salvo parapropósito de edição e os apóstrofos são escapados usando\
(slashes). Então o conteúdo é modificado internamente e não é mais um html válido para editar e o navegador lança um erro de sintaxe.
Eu também tentei procurar outras funções para escapar e me depareijson_encode
mas isso não é aceito pelo mysql.
Alguém pode me apontar para qualquer função que faria isso em php? Por favor, sugira qualquer função que iria realizar a tarefa para mim!
Atualizar:
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}
});
}
Eu adiciono omysql_real_escape_string
no meuauto_save.php
. Agora, quando eu buscar de volta do DB, eu tenho que passá-lo para uma variável javascript como esta.
var getSavedContent = <?php echo json_encode($IdLessContent); ?>;
Isso pode ser um problema?