Как не позволить кому-то кидать HTML в комментарии форума - PullRequest
1 голос
/ 05 апреля 2011

я пытаюсь сделать небольшую вещь типа форума.так как бы я сделал комментарии, которые никто не может добавить туда html?

заранее спасибо =)

Ответы [ 5 ]

2 голосов
/ 05 апреля 2011

Самый простой способ - заменить < на &lt; и > на &gt;, а затем вставить сообщение в базу данных.

Это базовая отправная точка, вы можете внести в белый список определенные теги иподробнее об этом позже, но это защитит вас от почти каждой HTML-инъекции.

В качестве альтернативы, вы можете использовать некоторую функцию кодирования HTML для очистки ввода.

1 голос
/ 05 апреля 2011
0 голосов
/ 05 апреля 2011

Вы можете использовать strip_tags устранить все теги.

Если вы удалите только < с &lt; и > с &gt;, вы получите много мусора в сохраненной записи БД.

Но если вы создаете форум, возможно, вам следует реализовать какой-то особый способ, позволяющий пользователям немного персонализировать свой пост, например, stackoverflow ..

Вы можете создать специальный список слов или просто разрешить некоторые теги. Проверьте этот сайт .

0 голосов
/ 05 апреля 2011

Если вы хотите, чтобы они вообще не использовали HTML , вы можете просто использовать htmlspecialchars().У вас есть выбор: делать это перед сохранением в базе данных или перед выводом страницы (большинство людей порекомендуют санировать вывод непосредственно перед его использованием, т.е. при выводе страницы).

0 голосов
/ 05 апреля 2011

Вам нужно прочитать о входной санации .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...