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

Форум PHP

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

 

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

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

тема: Добавление новости - TinyMCE
 
 автор: Zver   (20.07.2009 в 14:08)   письмо автору
 
 

Я подключил визуальный редактор к добовлениям новостей, такой вопрос, т.к. TinyMCE добовляет HTML теги, то при отображении новости выводится такое - <strong>тест</strong>...
Как это исправить ? Помагите плз ! =(

  Ответить  
 
 автор: mirage   (20.07.2009 в 17:54)   письмо автору
 
   для: Zver   (20.07.2009 в 14:08)
 

Ну самое простое...
$_POST['TinyMCE']=str_replace("<strong>","",$_POST['TinyMCE']);
$_POST['TinyMCE']=str_replace("</strong>","",$_POST['TinyMCE']);

Правда он все вхождения заменит...

  Ответить  
 
 автор: Den*s   (20.07.2009 в 18:23)   письмо автору
 
   для: Zver   (20.07.2009 в 14:08)
 

Вероятно вы принимаете запрос используя htmlspecialchars, если нет, то напишите сюда код получения информации с формы, вероятно дело в этом (либо дело при выводе)...

  Ответить  
 
 автор: Zver   (21.07.2009 в 10:20)   письмо автору
5.5 Кб
 
   для: Den*s   (20.07.2009 в 18:23)
 

Кода много, поэтому засунул в атач. Очень надеюсь на вашу помощь !

  Ответить  
 
 автор: neadekvat   (21.07.2009 в 10:38)   письмо автору
 
   для: Zver   (21.07.2009 в 10:20)
 

$text = htmlspecialchars(stripslashes($text));

admin.php строка 103.

$sql="INSERT INTO `news` 
VALUES ('','".$tema."','".$author."','".$date."','".$text."')";
$result=mysql_query($sql);
if (!$result) {echo "<script>alert('Ошибка при выполнении запроса к БД!');</SCRIPT>";}

как все сложно..


/*
Если значение $action не определено
*/
case "": 
$action='edit';
break;

А я для "значение не определено" всегда пользовался этим:
default: тра-ля-ля; break;

  Ответить  
 
 автор: Zver   (21.07.2009 в 10:54)   письмо автору
 
   для: neadekvat   (21.07.2009 в 10:38)
 

спасибо, но у меня проблемы с отображением HTML Кодов, а не добовлении - В TinyMCE добовляется как "Тест" а выводится как "<strong>Тест</strong>"

  Ответить  
 
 автор: mirage   (21.07.2009 в 11:33)   письмо автору
 
   для: Zver   (21.07.2009 в 10:54)
 

Если Вам, нужно избавится от тегов <strong>, то при добавление или при изменении новостей пропишите пару строк:



$text=str_replace("<strong>","",$text); 
$text=str_replace("</strong>","",$text);

$text = htmlspecialchars(stripslashes($text));
$text = nl2br($text);
$text = str_replace("\r"," ",$text);
................................


P.S. и в дальнейшем лучше работайте с отключонной директивой register_globals OFF, а то сразу не разберешь откуда берутся переменные...

  Ответить  
 
 автор: Zver   (21.07.2009 в 11:59)   письмо автору
 
   для: mirage   (21.07.2009 в 11:33)
 

нет, мне не нужно от них избавляться, мне нужно чтобы при выводе новости текст был, к примеру, жирным, заместо тега <strong></strong>.

  Ответить  
 
 автор: Mirage   (21.07.2009 в 12:28)   письмо автору
 
   для: Zver   (21.07.2009 в 11:59)
 

Вы же используете htmlspecialchars поэтому у Вас все теги конвертируются в HTML эквиваленты из за этого они выводятся в браузере как обычный текст...
Может Вам вот это поможет...
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=24931&page=1

  Ответить  
 
 автор: Zver   (21.07.2009 в 18:22)   письмо автору
 
   для: Mirage   (21.07.2009 в 12:28)
 

Нет, не помагло =( Мне бы пример чтоли, я ток плохо усваиваю (

  Ответить  
 
 автор: Mirage   (21.07.2009 в 18:57)   письмо автору
 
   для: Zver   (21.07.2009 в 18:22)
 

Один из вариантов хотя он не идеален в плане безопасности, но если к админовке имеют доступ ограниченные люди то удалите 103 строку "$text = htmlspecialchars(stripslashes($text));" в admin.php
Тогда новые сообщение будут корректно отображаться.

  Ответить  
 
 автор: Zver   (22.07.2009 в 12:22)   письмо автору
 
   для: Mirage   (21.07.2009 в 18:57)
 

Спасибо всем ! оказалось все очень просто. Прокопал весь редактор, и нашёл закомментированные строчки -
<script type="text/javascript">WYSIWYG.attach('textarea1',full);</script><textarea name="description" style="width:100%; height:100px" id="textarea1">$myrow[description]</textarea>

Все работает !

  Ответить  
Rambler's Top100
вверх

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