データベースに挿入する前に<
と>
をPHPの文字列に置き換えたいので、ユーザーがコードを入力したときにその関数を実行しません。PHPの文字列を置き換えるにはどうすればいいですか
$comment = str_replace("<", "<", $comment);
$comment = str_replace(">", ">", $comment);
しかし、私は同じ文字列を<3msg
の中に置き換えたくありません。どうすれば私のコードを実行できますか?
データベースに挿入する前に<
と>
をPHPの文字列に置き換えたいので、ユーザーがコードを入力したときにその関数を実行しません。PHPの文字列を置き換えるにはどうすればいいですか
$comment = str_replace("<", "<", $comment);
$comment = str_replace(">", ">", $comment);
しかし、私は同じ文字列を<3msg
の中に置き換えたくありません。どうすれば私のコードを実行できますか?
は、あなたが別の場所で一つの文字を持っている場合は、次のこのまたは何か他のものに常にしている例の文字のために、より多くの。仕する必要があり、この
$comment = str_replace("<", "<", $comment);
$comment = str_replace(">", ">", $comment);
$comment = str_replace("<3msg", "<3msg", $comment);
あなたがなどのスクリプトを削除するには、データベースの入力をサニタイズしたいなら、あなたはこのようなstrip_tags
使用することができます:あなたがタグを保持しますが、あなたはまた、その意志htmlspecialchars
を使用することができますコードインジェクションを許可しないようにしたい場合は代わり
$comment = strip_tags($comment)
をあなたが何かを見逃さないように、より完全で包括的な変換を行います。
これを試してみてください:
PHP関数をUseing:
がHereを参照してください。
htmlentities()を使用して出力することができます。
$str = "A 'quote' is <b>and</b>";
// Outputs: A 'quote' is <b>bold</b>
echo htmlentities($str);
// Outputs: A 'quote' is <b>bold</b>
echo htmlentities($str, ENT_QUOTES);
PS
なぜDBに入れる前に置き換えたいですか? – nospor
あなたはその権利の[htmlentities](http://php.net/manual/en/function.htmlentities.php)を持っていますか? try [strip_tags](http://php.net/manual/en/function.strip-tags.php) – Thamilan
@nospor ...私が言ったように、ユーザーが文字列にコードを渡すと、私は望んでいない私がdbから取り出したときに実行されるコードは –