Nitro 0 Опубликовано: 17 января 2008 Рассказать Опубликовано: 17 января 2008 (изменено) Значит ситуация такая, на сайте используется визинг редактор (мать его) заметил сегодня такой косяк, если в скрипте разрешено использование php в шаблонах, то получим в итоге ошибку: eval bla bla bla лишнее двоеточие там то там то... 2Celsoft, привожу исходник статической странички (это через визинг <> исходный код), на которой у меня вылезла ошибочка <p class="MsoNormal"><span style="font-family: Verdana; font-size: 10pt;">Адрес Москва, Дмитровское шоссе, д.100, стр.2. </span> </p> <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: normal; text-align: justify;"><span style="font-family: Verdana; font-size: 10pt;">Проезд </span> </p> <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: normal; text-align: justify; font-family: Verdana;"><span style="font-size: 10pt;">От станции метро "Петровско-Разумовская" автобус или маршрутное такси №63, №763, №149 до остановки "Улица Яхромская" </span></p> <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: normal; text-align: justify; font-family: Verdana;"><span style="font-size: 10pt;">От станции метро "Войковская" автобус или маршрутное такси №179 до остановки "Улица Яхромская" </span></p> <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: normal; text-align: justify;"><span style="font-family: Verdana; font-size: 10pt;">От ж/д станции Ховрино" автобус или маршрутное такси №748 до остановки "Дмитровское шоссе"</span> </p> <div class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: normal; text-align: justify; font-family: Verdana;"><span style="font-size: 10pt;">От ст. м. Тимирязевская троллейбус №78.</span></div> <div class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: normal; text-align: justify;"> </div> <p> <img border="0" alt="" src="http://localhost/uploads/thumbs/1196694077_adress3-kopija.jpg" /></p> <p> </p> <p> </p> <!--<?xml:namespace--> <p> </p> <p> </p> <!--?xml:namespace--> <p> </p> <!--дрес:--> <p> </p> если убить из статьи вот этот код: <p> </p> <p> </p> <!--<?xml:namespace--> <p> </p> <p> </p> <!--?xml:namespace--> <p> </p> <!--дрес:--> <p> </p> то всё ок, просто для информации, ведь проблема могла появиться у кого угодно, видно парсер что то пропустил, а в моём случае это как раз двоеточие. новость вставляли из ворда. P.S. IPBшный парсер покусал код, кидаю линк на исходник в тексте http://4dle.ru/kosyak.txt Изменено 17 января 2008 пользователем Nitro Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 094 Опубликовано: 18 января 2008 Рассказать Опубликовано: 18 января 2008 Все правильно, парсер сработал как и запланировано. Очень много людей просили чтобы в статическую страницу можно было добавлять PHP код, при условии что включена поддержка кода в шаблонах, это и было реализовано в одной из версий, в статике парсер оставляет PHP код, в новостях убирает. А теперь смотрим содержание <!--<?xml:namespace--> при выполнении eval <?xml это уже начало PHP, что собственно не так и происходит ошибка. Цитата Ссылка на сообщение Поделиться на других сайтах
Nitro 0 Опубликовано: 18 января 2008 Рассказать Опубликовано: 18 января 2008 Автор так я об этом и говорю, может имеет смысл включить в регулярку проверку на закрытие участка кода? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 094 Опубликовано: 18 января 2008 Рассказать Опубликовано: 18 января 2008 дело не в закрытии а в <?xml где часть кода как открывающий тег PHP, но на самом деле это не открывающий тег PHP, а кривой тег ворда, проще говоря мусор, который не имеет отношения к HTML и который нужно просто удалить Цитата Ссылка на сообщение Поделиться на других сайтах
Nitro 0 Опубликовано: 18 января 2008 Рассказать Опубликовано: 18 января 2008 Автор Хорошо, тогда есть предложение, можно сделать проверку на валидность открытия тега: то есть если значение состоит из <? то считаем за тег, а если в значении присутствует ещё какой либо символ, то попросту удаляем.... Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 094 Опубликовано: 18 января 2008 Рассказать Опубликовано: 18 января 2008 то есть если значение состоит из <? то считаем за тег, а если в значении присутствует ещё какой либо символ, то попросту удаляем.... немогу, запуск по eval это хак а не стандартная возможность скрипта. А если нужно кому то нужно просто публиковать текст а не выполнять PHP, а скрипт будет удалять то что недолжно подлежать удалению. Ошибка то происходит не в стандартной сборке, а после применения хака. Цитата Ссылка на сообщение Поделиться на других сайтах
Nitro 0 Опубликовано: 18 января 2008 Рассказать Опубликовано: 18 января 2008 Автор Да я и не уговариваю, это так, размышления вслух... Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.