Вырезать все теги, но оставить iframe c youtube

(Ответов: 6, Просмотров: 710)
  1. Дипломник Аватар для Человек-откат
    • Регистрация: 06.04.2013
    • Сообщений: 106
    • Репутация: 6
    Доброе время суток!

    У меня на PHP сайте установлен редактор ckeditor который создаёт html код для вставки в базу.
    Задача: отфильтровать в данном коде всё лишнее и опасное

    Делаю так, вырезаю все теги, кроме указанных (iframe не вырезаю)
    $str = strip_tags($str, '<br><p><img><a><b><em><strong><i><font><div><tabl e><tr><td><iframe>');

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

    Пример видео с youtube:
    <iframe width="560" height="315" src="https://www.youtube.com/embed/ZAimVTiQ_YI" frameborder="0" allowfullscreen></iframe> ,

    но УДАЛИТЬ во всех остальных случаях?

    ---------- Сообщение добавлено 19:58 ---------- Предыдущее 19:56 ----------

    Возможно как-то можно это реализовать при помощи, регулярных выражений...
    • 0
  2. Гуру Аватар для buninsan
    • Регистрация: 12.02.2012
    • Сообщений: 1,017
    • Репутация: 189
    да не стоит думаю это делать вообше в целях безопасности в таких случаях большинство cms используют BBCode
    • 0
  3. Дипломник Аватар для Человек-откат
    • Регистрация: 06.04.2013
    • Сообщений: 106
    • Репутация: 6
    почему нет? В моём случае остаются только безопасные теги, нужно только как-то проверить iframe на наличие youtube и тогда не надо будет заморачиваться с BBCode

    ---------- Сообщение добавлено 20:06 ---------- Предыдущее 20:04 ----------

    хотя не знаю, может можно как-то закодировать теги или например java код, чтоб он проскочил мимо функции strip_tags ?
    • 0
  4. [web-developer] Аватар для cOAPerator
    • Регистрация: 22.02.2011
    • Сообщений: 615
    • Репутация: 111
    • Webmoney BL: ?
    Человек-откат, какой еще strip_tags и JS в базе? обалдели совсем что ли?
    перед вставкой в БД для всего mysql_real_escape_string и htmlentities вам в помошь и можете хранить в базе все что хотите
    а JS надо в файлах хранить, а не в БД

    кто вас учит блять, такую хуйню городить, Попов что ли?
    Последний раз редактировалось cOAPerator; 19.02.2016 в 01:04.
    • 1

    Спасибо сказали:

    buninsan(19.02.2016),
  5. Гуру Аватар для buninsan
    • Регистрация: 12.02.2012
    • Сообщений: 1,017
    • Репутация: 189
    Цитата Сообщение от cOAPerator Посмотреть сообщение
    кто вас учит блять, такую хуйню городить, Попов что ли?
    согласен в принципе, но не с выражениями, хотя...
    • 0
  6. Дипломник Аватар для Человек-откат
    • Регистрация: 06.04.2013
    • Сообщений: 106
    • Репутация: 6
    cOAPerator, притормози парнишка,

    strip_tags тупо вырезает все лишние теги и оставляет только теги форматирования, далее обрабатываем нужным образом iframe для youtube (контакта итп), что уже собственно было сделано, лишние iframe удаляем, а затем обработка перед вставкой в базу mysql_real_escape_string и htmlentities итд...

    И с BBCode заморочки не нужны!

    Вот и всё, почему нет?
    • 0
  7. [web-developer] Аватар для cOAPerator
    • Регистрация: 22.02.2011
    • Сообщений: 615
    • Репутация: 111
    • Webmoney BL: ?
    Человек-откат, ну и зачем столько телодвижений?
    если вы так боитесь за безопасность, используйте шорткоды для ссылок на ютуб, что то типа

    {https://www.youtube.com/embed/ZAimVTiQ_YI}

    а потом регуляркой меняйте перед добавлением туда и при выводе обратно. (и не надо говорить что регулярки долго работают)

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

    и еще момент, обрезайте в пути к ролику протокол чтобы получилось

    //www.youtube.com/embed/ZAimVTiQ_YI

    а то вдруг перейдете на SSL, чтобы потом менять не пришлось во всех роликах
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
Вырезать кусок кода с темы Wordpress
WordPress 2 05.02.2015 14:53
Теги для youtube видео
Вопросы от новичков 9 23.03.2014 12:33
Вырезать все теги в wordpress до more
Web программирование 2 19.11.2011 22:50
Как в WP вырезать из RSS ненужные части
Web программирование 6 05.10.2011 14:56
iframe.name партнерка по выкупу Iframe трафика
Партнерские программы 6 06.12.2010 22:49

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры