Invertir el efecto de `mysqli_real_escape_string`

Estoy trabajando en una aplicación donde el usuario puede crear plantillas HTML y guardarlas en la base de datos. Las plantillas constan de diferentes componentes como texto, imagen, etc. Cuando intento guardar el texto con unaapóstrofe ' me damysql_error (obviamente). Así que lo intentémysqli_real_escape_strings para anularlo. Funcionó, pero quiero recuperar el contenido guardado parapropósito de edición y los apóstrofes se escapan utilizando\(barras). Por lo tanto, el contenido se modifica internamente y ya no es un html válido para editar y el navegador produce un error de sintaxis.
También traté de buscar otras funciones para escapar y encontréjson_encode pero eso no es aceptado por mysql.
¿Puede alguien indicarme alguna función que haga esto en PHP? Por favor, sugiera cualquier función que realice la tarea por mí.

Actualizar:

  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}
    }); 
 }  

Agrego elmysql_real_escape_string en miauto_save.php. Ahora, cuando lo recupero de la base de datos, tengo que pasarlo a una variable de javascript como esta.

    var getSavedContent = <?php echo json_encode($IdLessContent); ?>;

¿Puede eso ser un problema?

Respuestas a la pregunta(2)

Su respuesta a la pregunta