ユーザーがメッセージを追加できるフォームがあるため、フォームのセキュリティに関する記事を読んでいました。
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);
?>
しかし、メッセージをエコーすると、すべてが1行になり、改行がによって削除され、strip_tags
元に戻されないように見えnl2br()
ます。
ブレークが削除された場合、それをどこに戻すか (またはそれを行うか) をどのように知るのでしょうか?
とにかく、フォームでjavascriptを使用するなど、サイトをハッキングしようとするためにフォームを保護できる方法を探しています。