Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

zmovirzynski

FCK Editor + PHP + MYSql (inserir, editar(recuperar) dados)

Recommended Posts

Olá a todos,

 

Estava vendo alguns tópicos e percebi que algumas pessoas tem problemas de como fazer a inserção e edição de dados através do FKC EDITOR, e não encontrei nada no forum que explicasse como se faz, então resolvi postar aqui um pequeno sisteminha contendo 5 arquivos, ele é bem simples e talvez o código não esteja bem organizado porque ainda sou novato em php, espero que ajude:

 

editor.php ->Arquivo que faz a inserção dos dados

editor_alt.php ->Arquivo que faz a alteração dos dados

editor_del.php ->Arquivo que deleta os dados

editor_mostra.php ->Arquivo que mostra todos os dados cadastrados no banco

editor_detalhe.php ->Arquivo que mostra os detalhes dos dados

 

Tabela do banco de dados contendo id, titulo, texto:

 

CREATE TABLE `editor` (

`id` int(10) NOT NULL auto_increment,

`titulo` varchar(100) NOT NULL,

`texto` longtext NOT NULL,

PRIMARY KEY (`id`)

);

 

Façam a alteração dos dados no inicio dos arquivos conforme o seu banco de dados, eles estão configurados desta forma:

host: localhost

usuário: root

senha : 123

Banco de Dados : editor

 

eu também resolvi postar os aquivos para que possam ser baixados aqui.

 

editor.php

 

<?/* * ---------------------------------------------- * Recuperando dados do mysql com FCKEditor * Autor: Orides Tomkiel Zmovirzynski * orides@midiaville.com.br * www.midiaville.com.br * ---------------------------------------------- */$conexao = mysql_connect("localhost","root","123"); //Faz conexão com o mysql$db = mysql_select_db("editor"); //Seleciona o banco de dados include "editor/fckeditor.php"; //Chama a classe fckeditor  $titulo = $_POST['titulo']; //Pega os titulo postado e coloca em uma variável  $texto = $_POST['texto']; //Pega os texto postado e coloca em uma variávelif (isset($_POST['texto'])){ //Verifica se a variável foi postada  $sql = "INSERT INTO editor (id, titulo, texto) VALUES (NULL, '$titulo', '$texto')"; //Faz a inserção do registro  $result = mysql_query($sql) or die(mysql_error()); //Verifica se o comando foi executado  header("Location: editor_mostra.php"); //Após inserido redireciona para a página editor_mostra.php  }?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><!-- Caminho do arquivo js do FCK Editor--><script type="text/javascript" src="editor/fckeditor.js"></script></head><body><form method="post" name="editor" action="<?=$_SERVER['PHP_SELF']?>">titulo:<input name="titulo" type="text" size="40" maxlength="200"><? $editor = new FCKeditor("texto"); //Nomeia a área de texto$editor-> BasePath = "/editor/";  //Informa a pasta do FKC Editor$editor-> Value = "";			 //Informa o valor inicial do campo, no exemplo está vazio $editor-> Width = "80%";		  //informa a largura do editor  $editor-> Height = "250";		 //informa a altura do editor$editor-> Create();			   // Cria o editor ?><input type="submit" value="Cadastrar"></form></body></html>

editor_alt.php

 

<?/* * ---------------------------------------------- * Recuperando dados do mysql com FCKEditor * Autor: Orides Tomkiel Zmovirzynski * orides@midiaville.com.br * www.midiaville.com.br * ---------------------------------------------- */$conexao = mysql_connect("localhost","root","123"); //Faz conexão com o mysql$db = mysql_select_db("editor"); //Seleciona o banco de dados include "editor/fckeditor.php"; //Chama a classe fckeditor  $id_select = $_GET['id']; //Recupera a variavel id para fazer o select  $id = $_POST['id']; //Recupera a variavel id para fazer o update  $titulo = $_POST['titulo']; //Pega os titulo postado e coloca em uma variável  $texto = $_POST['texto']; //Pega os texto postado e coloca em uma variávelif ((isset($_POST['id'])) && ($_POST['titulo']) && ($_POST['texto'])){ //Verifica se a variável foi postada  $sql = "UPDATE editor SET titulo='$titulo', texto='$texto' where id=$id"; //Faz a alteração do registro  $result = mysql_query($sql) or die(mysql_error()); //Verifica se os registros foram alterados  header("Location: editor_mostra.php"); //Após inserido redireciona para a página editor_mostra.php  }$sql_texto = "SELECT * FROM editor where id=$id_select";$query_texto = mysql_query($sql_texto) or die(mysql_error());$row_texto = mysql_fetch_assoc($query_texto);$id = $row_texto['id'];$titulo = $row_texto['titulo'];$texto = $row_texto['texto'];?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><!-- Caminho do arquivo js do FCK Editor--><script type="text/javascript" src="editor/fckeditor.js"></script></head><body><form method="post" name="form" action="<?=$_SERVER['PHP_SELF']?>"><b>Titulo</b><input name="titulo" value="<?php echo "$titulo"; ?>" type="text" size="40" maxlength="200"><? $editor = new FCKeditor("texto"); //Nomeia a área de texto$editor-> BasePath = "/editor/";  //Informa a pasta do FKC Editor$editor-> Value = "$texto";	   //Informa o texto a ser alterado $editor-> Width = "80%";		  //informa a largura do editor  $editor-> Height = "250";		 //informa a altura do editor$editor-> Create();			   // Cria o editor ?><input type="submit" value="Alterar"><input type="hidden" name="id" value="<?php echo "$id"; ?>"></form></body></html>

editor_del.php

 

<?/* * ---------------------------------------------- * Recuperando dados do mysql com FCKEditor * Autor: Orides Tomkiel Zmovirzynski * orides@midiaville.com.br * www.midiaville.com.br * ---------------------------------------------- */$conexao = mysql_connect("localhost","root","123"); //Faz conexão com o mysql$db = mysql_select_db("editor"); //Seleciona o banco de dados $id = $_GET['id']; //Recupera a variavel id para fazer o deleteif (isset($_GET['id'])){ //Verifica se a variável foi postada  $sql = "DELETE FROM editor WHERE id=$id"; //Deleta o registro  $result = mysql_query($sql) or die(mysql_error()); //Verifica se o comando foi executado  header("Location: editor_mostra.php"); //Após deletado redireciona para a página editor_mostra.php}?>

editor_mostra.php

 

<?php/* * ---------------------------------------------- * Recuperando dados do mysql com FCKEditor * Autor: Orides Tomkiel Zmovirzynski * orides@midiaville.com.br * www.midiaville.com.br * ---------------------------------------------- */$conexao = mysql_connect("localhost","root","123"); //Faz conexão com o mysql$db = mysql_select_db("editor"); //Seleciona o banco de dados $sql = "SELECT * FROM editor"; //Faz o select de todos os registros$query = mysql_query($sql) or die(mysql_error()); //Verifica se o comando foi executado// mostra a tabelaecho"<table border='1'> 		<tr><td>Titulo</td>		 <td>Editar</td>		 <td>Deletar</td>		</tr>";while ($linha=mysql_fetch_array($query)) {$id = $linha["id"];$titulo = $linha["titulo"];$texto = $linha["texto"];echo"<tr><td><a href='editor_detalhe.php?id=$id'>$titulo</a></td>		 <td><a href='editor_alt.php?id=$id'><img src='edita.gif' border='0'></a></td>		 <td><a href='editor_del.php?id=$id'><img src='deleta.gif' border='0'></a></td>	 </tr>";}echo "</table>";?>

editor_detalhe.php

 

<?php/* * ---------------------------------------------- * Recuperando dados do mysql com FCKEditor * Autor: Orides Tomkiel Zmovirzynski * orides@midiaville.com.br * www.midiaville.com.br * ---------------------------------------------- */$conexao = mysql_connect("localhost","root","123"); //Faz conexão com o mysql$db = mysql_select_db("editor"); //Seleciona o banco de dados  $id_select = $_GET['id']; //Recupera a variavel id para fazer o select$sql_texto = "SELECT * FROM editor where id=$id_select"; //Faz o select de todos os registros$query_texto = mysql_query($sql_texto) or die(mysql_error()); //Verifica se o comando foi executado$row_texto = mysql_fetch_assoc($query_texto);$id = $row_texto['id'];$titulo = $row_texto['titulo'];$texto = $row_texto['texto'];// mostra a tabelaecho"<table border='1' align='center' width='80%'> 		<tr><td align='center'><h2>$titulo</h2></td><br></tr>		<tr><td>$texto</td></tr>		</table>";?>

Bom pessoal, é isso, qualquer dúvida, critica ou elogio postem ai.

 

Att,

 

Orides Tomkiel Zmovirzynski

orides@midiaville.com.br

www.midiaville.com.br

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, desculpa, realmente eu não havia deixado explicito este detalhe, ele se encontra no mesmo diretorio do " fckeditor.js " no caso do exemplo está na pasta /editor/, e já aproveitando abaixo encontra-se o link para download da última versão do FCKEDITOR que no momento é a 2.3.1.

 

http://www.fckeditor.net/download/

 

Se ficar mais alguma dúvida pode postar ai.

 

Att,

 

Orides Tomkiel Zmovirzynski

orides@midiaville.com.br

www.midiaville.com.br

Compartilhar este post


Link para o post
Compartilhar em outros sites

tá mais tem vários arquivos lá!Só uso o FCKEditor.php e o fckeditor.js?Só esses 2 eu uso?e ponho na pasta /editor?Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Diogo,

 

A pasta " editor " a que me refiro é a mesma pasta " FCKeditor " que foi baixada e descompactada, eu só renomiei para " editor " não precisa criar uma nova pasta com o nome editor. Eu vou deixar a disposição para download a estrura que eu usei para fazer o sistema acima ( FCKeditor versão 2.3.1 ), com os arquivos mencionados mais a pasta do FCKeditor, já configurada para fazer upload de imagem, é só colocar na pasta raiz e usar, qualquer dúvida ou se precisar de ajuda posta ai que tamos ai pra isso. =]

 

 

Arquivos para download clique aqui.(975kb)

 

Att,

 

Orides Tomkiel Zmovirzynski

orides@midiaville.com.br

www.midiaville.com.br

Compartilhar este post


Link para o post
Compartilhar em outros sites

To com um problema no Fckeditor, ele não aparece no firefox de maneira nenhuma, to usando a versao mais atual, mas nao aparece nada, nada de botoes de inserção de tags e mto menos o campo text.. se aparecer o campo text ja seria bom, no safari aparece apenas o campo text, e no I.E ta certinho...Será que algue pode me ajudar??Att. Klein

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Klein,

 

Desculpa estar respondendo só agora, eu fiz testes nos seguintes navegadores:

 

FCKeditor versão 2.3.1

 

IE V6 : ok

IE V7 : ok

Mozilla Firefox 1.5.0.4 : ok

Opera : 8.54 ok

Opera : 9.02 ok

Netscape 7.02 : ok

 

E funcionaram todos sem problemas, se ainda estiver com problemas passa o endereço onde esta hospedado o editor de texto se for possivel para dar uma olhada.

 

Att,

 

Orides Tomkiel Zmovirzynski

orides@midiaville.com.br

www.midiaville.com.br

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal,estou tentando usar o FCKeditor em um sistema de cadastro/edição em php.Bom, com o cadastro está Ok, funciona muito bem.Como tenho que cadastrar artigos de lei, direto do word, neste editor tem um botão chamado ( copiar do word ), onde abre uma janela e consigo colar o texto do word.No campo de texto do FCKeditor, neste cadastro, depois de feito a colagem, o texto fica identico como estava no word.Fica muito bom.O problema é na edição, quando trago o texto do banco de dados para dentro do campo, FCKeditor, o texto ja cadastrado perde as formatações que foram cadastradas do work.Gostaria de saber se alguem ja trabalhou com este editor de texto, e se podem me ajudar com esse problema ?Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ATENÇÃO:

 

Não façam upload para o seu site da pasta de exemplos do FCKeditor (pasta samples), senão poderão sofrer uma bela de uma invasão completa do banco de dados.

 

E de preferência coloquem o fckeditor dentro de uma pasta protegida com senha, pra garantir.

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal,Estou implementando o FCKeditor em um site em php só que estou tendo um probleminha.Aqui no localhost roda beleza, insere no mysql, edita, apaga, só que ao passar para o server ele retorna 3 erros :################# 1º Erro ###################Erro: 'CTRL' não está definidoverifiquei q o erro está no arquivo fckconfig.jse a partir da linha 123 são essas aqui:FCKConfig.Keystrokes = [ [ CTRL + 65 /*A*/, true ], [ CTRL + 67 /*C*/, true ], [ CTRL + 88 /*X*/, true ], [ CTRL + 86 /*V*/, 'Paste' ], [ SHIFT + 45 /*INS*/, 'Paste' ], [ CTRL + 90 /*Z*/, 'Undo' ], [ CTRL + 89 /*Y*/, 'Redo' ], [ CTRL + SHIFT + 90 /*Z*/, 'Redo' ], [ CTRL + 76 /*L*/, 'Link' ], [ CTRL + 66 /*B*/, 'Bold' ], [ CTRL + 73 /*I*/, 'Italic' ], [ CTRL + 85 /*U*/, 'Underline' ], [ CTRL + ALT + 83 /*S*/, 'Save' ], [ CTRL + ALT + 13 /*ENTER*/, 'FitWindow' ], [ CTRL + 9 /*TAB*/, 'Source' ]] ;################# 2º Erro ###################Erro: 'FCKConfig.ContextMenu.length' é nulo ou não é um objeto################# 3º Erro ###################Chamada de procedimento ou argumento inválido##########################################Esses outros dois eu não encontrei o local.Os arquivos que eu enviei para o servidor são o mesmo que estou usando local.Agradeço a força !!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia João,

 

Parece ser um erro causado por falta de arquivo que sao referencias destas funcoes, se puder, passa o endereço do fckeditor do seu site para que eu possa debugar e verificar qual a causa dos erros, a versão que voce está usando é a mesma referenciada no post acima, só para fazer um teste aqui, qualquer coisa adicional que possa ajudar a encontrar o erro posta ai tambem.

 

Att,

 

Orides

 

www.midiaville.com.br

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agradeço a atenção, colocarei uma cópia dele em uma área não restrita do site e posto aqui, mas adianto que inseri todas as pastas do FCKEditor menos a _Samples e a_testcases.Novamente agradeço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

mto bom vlw..mas voce sabe como faz para remover ou adicionar algum botão? e como que faz pra determinar um background default pra ele

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá mze,

 

Essas configurações voce altera no arquivo fckconfig.js, tem os arrays com os botoes, é só seguir a lógica e eliminar os botões indesejados, quando ao skin na linha:

 

FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/' ;

 

você indica o caminho do skin que voce quer que apareça, é só copiar e subistituir, é só escolher um dos tres:

 

FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/' ;

FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/office2003/' ;

FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/silver/' ;

 

tambem da para baixar mais na net, qualquer duvida posta ai.

 

Att,

 

Orides

 

 

www.midiaville.com.br

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Pessoal,

 

Bom, já estou com estes arquivos que foram sugeridos como download do FCKeditor, muito bom mesmo, porém estou com alguns erros que não entendo como estão ocorrendo, todos os arquivos estão funcionando beleza, mas :

 

1- Arquivo "editor_alt.php" : Ele não está enviando/mostrando os campos que devem ser atualizados. Já conferi o comando update e está certo. Não estou entendendo. http://forum.imasters.com.br/public/style_emoticons/default/pinch.gif //Resolvido.

 

2- Os estilos que formatei na hora de edição e logo salvei, quando mando exibir não estão sendo exibidos como devem.

 

3- Aparecem uns erros :

Warning: Unknown: 1 result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query() in Unknown on line 0

 

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Desde já fico grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá Bráulio,Não sei se está com os mesmos problemas ainda, mas se estiver este erro dos estilos é meio chatinho mesmo, quando voce troca o estilo as veses os arquivos do estilo anterior fica no cache do seu navegador, entao sugiro que limpe os arquivos temporarios e acesse novamente a página, quanto à este Warning é que voce deve estar tentando limpar a conexao com o banco de dados no fim do processo e ele nao esta achando a referencia para isso, veja se o nome que voce deu para variavel do sql é o mesmo que voce esta tentando limpar no fim do seu código, acho que é isso, quanto ao editor eu estou devendo uma atualização, pois por muito eu uso ele e já dei umas tunadas e melhoradas para usá-lo, inclusive uma coisa muito procurada que é separar o diretorio de upload por usuario logado, e nao todos podendo acessar o mesmo diretorio, mas fica para a proxima versao que disponibilizarei nos proximos meses.Att,Orides

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, pessoal!Vou aproveitar esse tópico pra tirar uma dúvida.Alguém sabe se tem como o FCK aceitar comandos PHP???Tipo, eu digitar lá nele assim:<?php echo "123"; ?>E ele executar o código php na hora de apresentar no browser?Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.