Estou tentando usar na área administrativa de um dos sites que estou
trabalhando, e estou tendo um problema:
Antes de usar o CKEditor, eu tinha somente alguns campos do tipo
textarea,
onde eu inseria o código HTML.
Qual a lógica de funcionamento da coisa:
Ao carregar a página com o "form", se o campo id for 0, ele limpa
todos os
campos, senão ele busca no banco os campos da tabela onde id = ao
campo id,
e preenche todos os campos com seus respectivos valores, daí eu posso
alterar da forma que quiser.
Oque está acontecendo: em um dos campos "descricao" por exemplo, eu
implementei o referido editor, agora eu não consigo fazer com que na
área de
texto seja exibido o conteúdo do campo "descricao". Ele consegue
gravar todo
o seu conteúdo no banco, porém, se eu alterar o conteúdo de qualquer
outro
campo e mandar gravar, o campo "descricao"
vai gravar o que estiver nele, ou seja, nada.
Se eu remover o editor, e deixar somente o campo "textarea", funciona
corretamente.
Se alguém puder me dar uma dica fico agradecido.
Segue abaixo, trechos do código.
if($id == 0) { $objResponse -> addAssign("nome", "value", ""); $objResponse -> addAssign("nome_url", "value", ""); $objResponse -> addAssign("categoria1", "value", "");...
} else { $id = mysql_escape_string($id); $consulta = mysql_query("SELECT * FROM prensas WHERE id = '{$id}'"); $row = mysql_fetch_assoc($consulta); $objResponse -> addAssign("nome", "value", $row['nome']); $objResponse -> addAssign("nome_url", "value", $row['nome_url']); $objResponse -> addAssign("categoria1", "value", $row['categoria1']);...
} $objResponse -> addAssign("adicionar", "style.display", "none"); $objResponse -> addAssign("alterar", "style.display", "block"); } return $objResponse->getXML(); } $xajax -> processRequests(); if(isset($_POST["id"])) { $MySQL = new MySQL; $MySQL -> setField("nome", $_POST["nome"]); $MySQL -> setField("nome_url", $_POST["nome_url"]); $MySQL -> setField("categoria1", $_POST["categoria1"]);...
if($_POST["id"] == 0) { $id = $MySQL -> insert("prensas"); } else { $MySQL -> update("prensas", "id", $_POST["id"]); $id = mysql_escape_string($_POST["id"]); } ... </script> <script type="text/javascript" src="ckeditor/ckeditor.js"></script> <script src="ckeditor/_samples/sample.js" type="text/javascript"></script> <link href="ckeditor/_samples/sample.css" rel="stylesheet" type="text/css"/>
...
<td colspan="3"><textarea name="descricao" rows="30" class="campos" id="descricao"></textarea> <script type="text/javascript"> window.onload = function() { CKEDITOR.replace( 'descricao' ); }; </script> </td>