1

次のコードを使用して文字列を保護し、データベースに挿入しています。

function protect($string){

    $string = mysql_real_escape_string($string);

    return $string;
}

次に、このコードを使用して保護を解除し、データベースからエコーアウトできるようにします。

function echoprotect($string){

    $string = nl2br($string);
    $string = stripslashes($string);

    return $string;
}

nl2br が機能していないようで、その理由がわかりません。私が得る出力は次のとおりです。

こんにちはrnrn内容など...

それ以外の:

こんにちは

内容など...

4

1 に答える 1

1

mysql_real_escape_stringマニュアルから:

mysql_real_escape_string()は、MySQL のライブラリ関数 mysql_real_escape_string を呼び出します。この関数は、\x00、\n、\r、 \、'、"、および \x1a の文字の前にバックスラッシュを追加します。

エスケープnl2br()された \n と \r を無視することも同様です。

于 2011-02-06T16:52:18.143 に答える