この小さなセクションよりもはるかに高度な検証スクリプトを作成しています。問題が発生している特定の部分を印刷しているだけです。
このスクリプトは、設定のリストを含む 1 次元配列を取り込んで、必要なテストを実行し、必要な文字列を含む多次元配列を吐き出すだけで、問題はまったくありません。
何らかの理由でtrim()
strip_tags()
strip_html_tags()
機能は動作していますが、同時に失敗しています。これは、文字列が関数を介して渡され、クリーンとして表示されることを意味しますが、組み込みの PHP 関数は期待どおりに機能しません。
問題は、組み込み関数がユーザーに直接出力されるテキストに対してのみ機能するのか、それとも関数が出力前、つまりデータベースに保存されている間ではなく出力されているときに機能するのかということです。
ユーザー入力としてすべてのスクリプトタグを削除して、プレーンテキストのみを取得しようとしています。
以下の機能を持つ各ステートメントでスイッチを使用したかったのは、switchステートメントのスニペットです。
私が使用しようとしているものは、期待どおりに機能しません。
function check_input1($input)
{
if(trim($input))
{
$cleaninput[$i][$input] = 'CLEAN';
}else
$cleaninput[$i][$input] = 'DIRTY';
}
function check_input2($input)
{
if(strip_tags($input))
{
$cleaninput[$i][$input] = 'CLEAN';
}else
$cleaninput[$i][$input] = 'DIRTY';
}
function check_input3($input)
{
if(strip_html_tags($input))
{
$cleaninput[$i][$input] = 'CLEAN';
}else
$cleaninput[$i][$input] = 'DIRTY';
}
私が知っていることは、html要素で直接出力されます。
strip_tags(trim($key))
strip_tags(trim($value))