Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Визуальный html-редактор
 
 автор: Ziq   (02.10.2005 в 08:36)   письмо автору
 
 

Посоветуйте какой-нибудь html-редактор, чтобы к CMS прилепить.

   
 
 автор: napTu3aH   (02.10.2005 в 10:23)   письмо автору
 
   для: Ziq   (02.10.2005 в 08:36)
 

Spaw editor - визуальный - html редактор
http://www.solmetra.com/en/disp.php/en_products/en_spaw/en_spaw_intro

   
 
 автор: antf   (02.10.2005 в 21:09)   письмо автору
 
   для: napTu3aH   (02.10.2005 в 10:23)
 

На самом деле существуют три достойных внимания редактора: FCKEditor, TWinMCE, SpawEditor. Все они бесплатны, все переведены на множество языков в том числе и на русский, все имеют свои тонкости подключения и настройки. Чтобы их настроить нужно внимательно читать документацию требует внимательного прочтения документации на английском языке. Визуальные редакторы очень любят IE, сносно работают в Firefox и ненавидят Oper'у

FCKEditor
http://www.fckeditor.com/
Часто на форумах, куда меня выкидывал Яндекс, рекомендуют именно его. Также этот редактор был замечен мною в CMS новостного портала нашего города. Процесс редактирования текста показался мне неудобным, редактор никак не хотел меня понимать...

TinyMCE
http://tinymce.moxiecode.com/download.php
Хороший редактор, используется в PHPNuke. Имеет неудобную для начинающих документацию в виде справочника, но все же можно разобраться. Мне не понравилось две вещи:
-В документации я так и не нашел как поменять набор кнопок в панели.
-Панель выбора цвета шрифта грузится очень долго.

SpawEditor
http://www.solmetra.com/en/disp.php/en_products/en_spaw/en_spaw_intro
мой выбор, повторю достоинства:
-Большие возможности по форматированию текста, особенно понравилась работа с таблицами.
-вставляет в html код мало мусора, как мне показалось.
-маленький размер 430кб, FCKEditor - 964кб, это с удаленными лишними файлами
-очень понравился дизайн
-процесс настройки прост и приятен


Совет!
Создатели редакторов очень часто, перечисляя особенности своего продукта, указывают возможность вставки текста из Word. Никогда не нужно этим пользоваться!
Во-первых текст не будет вставлен правильно.
Во-вторых обилие вставляемого мусора Вас приведет в ужас. Иногда в такой помойке тегов встречаются xml дескрипторы <? ?>, которые при неотключенной соотв. директиве php.ini интерпретируются как дескрипторы php. Это порождает огромное количество ошибок.

   
 
 автор: Atom   (02.10.2005 в 21:24)   письмо автору
 
   для: antf   (02.10.2005 в 21:09)
 

Хочу спросить по поводу spaw: как настроить библиотеку изображений? (массив $spaw_imglibs в конфиге). Читал мануал, но не могу понять, какой к ней адрес нужно писать? У меня пишется, что библиотеки не существует.

   
 
 автор: antf   (02.10.2005 в 21:36)   письмо автору
 
   для: Atom   (02.10.2005 в 21:24)
 

На самом деле термин библиотека тут не очень удачен. Его можно понимать как директория, куда закачиваются изображения определенной тематики. Таких директорий может быть несколько, их нужно просто перечислить в массиве $spaw_imglibs файла config/ spaw_control.config.php. Также необходимо задать базовую директорию изображений. Вот пример:

<?
// base url for images
$spaw_base_url $_SERVER['DOCUMENT_ROOT'];

$spaw_imglibs = array(
  array(
    
'value'   => '/images/pages/',
    
'text'    => 'Страницы',
  ),
 array(
    
'value'   => '/images/news/',
    
'text'    => 'Новости',
  ),

);

?>

   
 
 автор: Atom   (02.10.2005 в 21:53)   письмо автору
 
   для: antf   (02.10.2005 в 21:36)
 

Про директорию понял. Но я делаю как в примере, а все равно пишет, что "Библиотека не существует". :(

<?
$spaw_base_url 
$_SERVER['DOCUMENT_ROOT'];

$spaw_imglibs = array(
  array(
    
'value'   => '/images/',
    
'text'    => 'Картинки',
  )
);
?>

   
 
 автор: antf   (02.10.2005 в 22:01)   письмо автору
 
   для: Atom   (02.10.2005 в 21:53)
 

Не знаю, помню мне тоже пришлось помучиться, но проблема где-то здесь. Больше никаких настроек нет.

   
 
 автор: Atom   (02.10.2005 в 22:48)   письмо автору
 
   для: antf   (02.10.2005 в 22:01)
 

А что у вас в $spaw_root?

   
 
 автор: antf   (02.10.2005 в 23:28)   письмо автору
 
   для: Atom   (02.10.2005 в 22:48)
 

Директория spaw расположена в корне.
$spaw_dir = '/spaw/';

   
 
 автор: Atom   (03.10.2005 в 14:42)   письмо автору
 
   для: antf   (02.10.2005 в 23:28)
 

Нет, не $spaw_dir, а $spaw_root :)

   
 
 автор: antf   (03.10.2005 в 20:09)   письмо автору
 
   для: Atom   (03.10.2005 в 14:42)
 

if (!ereg('/$', $HTTP_SERVER_VARS['DOCUMENT_ROOT']))
$spaw_root = $HTTP_SERVER_VARS['DOCUMENT_ROOT'].$spaw_dir;
else
$spaw_root = $HTTP_SERVER_VARS['DOCUMENT_ROOT'].substr($spaw_dir,1,strlen($spaw_dir)-1);

Вы скачайте Proteus. Посмотрите config. Я ничего не менял. Редактор подключается в модуле cms/pages/pages_text.inc

   
 
 автор: Atom   (06.10.2005 в 20:47)   письмо автору
 
   для: antf   (03.10.2005 в 20:09)
 

Разобрался :) нужно указывать адрес с учетом папки spaw :)

   
 
 автор: Ziq   (03.10.2005 в 07:17)   письмо автору
 
   для: antf   (02.10.2005 в 21:09)
 

Объясните, пожалуйста, как работать с этим чудом(spaw). Т.е. Как перевести его на русский, как пользоваться. Я вошел в demo.php, но там много лишнего, это убирать вручную. Ну и т.д. Вы, я так понял, с ним уже работали.

   
 
 автор: antf   (03.10.2005 в 09:38)   письмо автору
 
   для: Ziq   (03.10.2005 в 07:17)
 

Все настройки находятся в config/spaw_control.default.config.php, подробно описаны документации.
Редактор вставляется следующим образом:

  $sw = new SPAW_Wysiwyg('text' /*имя (переменная POST, куда попадут данные)*/,
                               $text /*value (текст)*/,
                               'ru' /*language*/,
                               'full' /*toolbar mode*/,
                               'default' /*theme*/,
                               '540px' /*width*/,
                               '400px' /*height*/,
                               '../../css/main.css', /*stylesheet file*/
                               $spaw_dropdown_data /*dropdown data*/ );
        $sw->show();

   
 
 автор: Axxil   (03.10.2005 в 10:51)   письмо автору
 
   для: antf   (03.10.2005 в 09:38)
 

Хороший редактор.
Можно будет использовать в форуме.
А на предмет безопасности никто его не исследовал?

   
 
 автор: antf   (04.10.2005 в 15:49)   письмо автору
 
   для: Axxil   (03.10.2005 в 10:51)
 

Все они небезопасны, поскольку работают непосредственно с html-тегами. Можно конечно проутюживать содержимое, передаваемое редактором в массив $_POST, функцией htmlspecialchars, но результат тогда будет не тот ... Поэтому редактор лучше помещать в админе.

   
 
 автор: Atom   (04.10.2005 в 23:03)   письмо автору
 
   для: antf   (04.10.2005 в 15:49)
 

Ну не скажите... При очень большом желании можно ограбить livejournal.com (там открытый код, и все добавляется с использованием разрешенных html. Убирается весь javascript и прочее) и сделать это на сайте :) Но пока это только идеи :))

   
 
 автор: Ziq   (04.10.2005 в 07:09)   письмо автору
 
   для: antf   (03.10.2005 в 09:38)
 

А русская документация где-нибудь есть?

   
 
 автор: antf   (04.10.2005 в 15:48)   письмо автору
 
   для: Ziq   (04.10.2005 в 07:09)
 

Нет, вся документация на английском.

   
 
 автор: BArt Simpson   (04.10.2005 в 15:32)   письмо автору
 
   для: antf   (03.10.2005 в 09:38)
 

как я понемаю, что б засунуть данные в SPAW, они должны быть переменной

$spaw_dropdown_data 

?

   
 
 автор: antf   (04.10.2005 в 15:50)   письмо автору
 
   для: BArt Simpson   (04.10.2005 в 15:32)
 

Нет имя переменной ( $text) надо указать при создании объекта (см. выше)
PS Что-то мода пошла на визуальные редакторы :).

   
 
 автор: BArt Simpson   (04.10.2005 в 15:53)   письмо автору
 
   для: antf   (04.10.2005 в 15:50)
 

И на выходе тоже она же?

И чёйта я там не нашёл пипки "сохранить" или на подобие!!

Редактор надо в форму заключать?

   
 
 автор: Axxil   (04.10.2005 в 16:47)   письмо автору
 
   для: BArt Simpson   (04.10.2005 в 15:53)
 

Я долго себе голову ломал как прикрутить редактор к моему движку построенному на smarty.
В шаблоне просто так в лоб не напишешь $sw->show();

Выход нашёл простой как всё гениальное. Редактор что из себя представляет?
Правильно обычную DHTML форму. Поэтому без долгих раздумий: Избранное->просмотр HTML кода ->cut->paste. После недолгих манипуляций по повышению читаемости кода получил html файл.

Сделал вывод. Можно просто сгенерировать нужный вид редактора из предложенных в мануале, а потом просто его перегнать в обыную статическую форму. Я выбрал для себя третий вариант (из мануала) и т ак и сделал.

В аттач приложил результаты. Порядок действий: помещаем папку spaw в корень сервера а код из файла editor.html вставляем куда угодно, в любое место любого файла.

PS. Автор ни в коей мере не претендует на звание "самый умный", а исключительно делится опытом.

   
 
 автор: Axxil   (04.10.2005 в 16:50)   письмо автору
23.4 Кб
 
   для: Axxil   (04.10.2005 в 16:47)
 

то же самое только просто голый editor.html. для тех у кого уже есть spaw.

   
 
 автор: BArt Simpson   (05.10.2005 в 13:19)   письмо автору
 
   для: Axxil   (04.10.2005 в 16:47)
 

Вот так у меня заработало

<?
if(empty($save))
    {
$sql="SELECT * FROM content WHERE menu_id='$Page'";
$result=mysql_query("$sql");
if(
$myrow=mysql_fetch_row($result)){
    
$contentin =$myrow[3];    
}
mysql_free_result($result);



if (!
ereg('/$'$HTTP_SERVER_VARS['DOCUMENT_ROOT']))
  
$_root $HTTP_SERVER_VARS['DOCUMENT_ROOT'].'/';
else
  
$_root $HTTP_SERVER_VARS['DOCUMENT_ROOT'];

define('DR'$_root);
unset(
$_root);
$spaw_root DR.'spaw/';
include 
$spaw_root.'spaw_control.class.php';
echo
"
<form action=\"./?go=admin&Page=
$Page&edit=$edit\" method=\"post\">
<input type=hidden name=\"Page\" value=\"
$Page\">";

$sw = new SPAW_Wysiwyg('contentout'$contentin);
$sw->show();

echo
"<input type=submit name=\"save\" value=\"Сохранить\"></form>";    
    }
else{
$sql=mysql_query("UPDATE content SET cont='$contentout' WHERE menu_id='$Page'");
if(
$sql)
    {
    echo
"<br>изменения внесены";
    }
else{echo
"<br>ошибка";}

}

?>

   
 
 автор: antf   (04.10.2005 в 16:53)   письмо автору
 
   для: BArt Simpson   (04.10.2005 в 15:53)
 

> И на выходе тоже она же?
Нет, нужно указать и вход и выход см. выше.
> И чёйта я там не нашёл пипки "сохранить" или на подобие!!
Нужно поставить Submit. Содержимое редактора будет в переменной $_POST['имя, которое Вы указываете']
> Редактор надо в форму заключать?
Обязательно.

   
 
 автор: Alexx   (05.10.2005 в 22:59)   письмо автору
 
   для: antf   (04.10.2005 в 16:53)
 

Подскажите почему в spaw http://localhost/"/images/olye_znamenitosti_2.jpg/" получаеться такая ссылка на картинку. Когда

$spaw_dir = '/dir/';
$spaw_base_url = 'http://localhost';
'value' => '/images/',

в самом редакторе картинка отображаеться нормально, но когда документ сохраняешь то на странице не отображаеться так как ссылка на рисунок такая http://localhost/"/images/olye_znamenitosti_2.jpg/"

   
 
 автор: Axxil   (06.10.2005 в 10:49)   письмо автору
 
   для: Alexx   (05.10.2005 в 22:59)
 

сам spaw в каком каталоге развёрнут?
если в dir в корне тогда:
$spaw_base_url='/dir'
и тогда итоговый путь к картинке будет выглядеть
http://localhost/dir/images/olye_znamenitosti_2.jpg

Советую посмотреть внимательно файл dialogs/img_library.php там всё объясняется :)

   
 
 автор: Alexx   (06.10.2005 в 12:17)   письмо автору
 
   для: Axxil   (06.10.2005 в 10:49)
 

всё просмотрел не получаеться. когда сохроняешь то ссылка на рисунок становиться такой
http://localhost/"/images/olye_znamenitosti_2.jpg/". Окуда кавычки беруться я не понимаю всё просмотрел. Когда же файл открываешь на редоктирование то картинка отображаеться нормально. Проблема только в сохранении...

   
 
 автор: Atom   (06.10.2005 в 20:52)   письмо автору
 
   для: Alexx   (06.10.2005 в 12:17)
 

Возможно кавычки экранируются откуда-то? Проверьте, у вас нет обратных слэшов? (\)

   
 
 автор: Alexx   (06.10.2005 в 23:03)   письмо автору
 
   для: Atom   (06.10.2005 в 20:52)
 

нет не стоят... может кто-нибудь сталкивался с такой проблемой ?

   
 
 автор: Karen   (12.12.2005 в 01:26)   письмо автору
 
   для: Alexx   (06.10.2005 в 23:03)
 

Pri otravke pojavljajutsja (\) . Pri obrabotke prosto dobaj' $text=stripcslashes($text); i vse budet TIP-TOP

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования