Я читал статью о безопасности форм, потому что у меня есть форма, в которую пользователь может добавлять сообщения.
Я прочитал, что лучше всего использовать strip_tags()
, htmlspecialchars()
и nl2br()
.Говорят, что где-то еще используется html_entity_decode()
.
. У меня есть код на моей странице, который принимает пользовательский ввод
<?php
$topicmessage = check_input($_POST['message']); //protect against SQLinjection
$topicmessage = strip_tags($topicmessage, "<p><a><span>");
$topicmessage = htmlspecialchars($topicmessage);
$topicmessage = nl2br($topicmessage);
?>
, но когда я повторяю сообщение, оно все на одноми кажется, что разрывы были удалены strip_tags
, а не возвращены nl2br()
.
Для меня это имеет смысл, почему это происходит, потому что, если разрыв был удален, какзнает ли он, куда положить его обратно (или делает это)?
В любом случае, я ищу способ, которым я могу защитить свою форму, чтобы ее можно было использовать, чтобы попытаться взломать сайт, как при использовании javascript в форме.