2010-11-30 15 views
2

私のホスティング会社はmagic_quotes_gpcになりましたONとなりました。この準備のためにPHPスクリプトをstripslashes()でコーディングしました。しかし、現在、ホスティング会社はmagic_quotes_gpcをOFFにしていると言い、stripslashes()が存在するときに私のデータに今何が起こるのだろうかと疑問に思っていたのですが、何百万行ものコードをすべて手に入れてstripslashes()を取り除く必要がありますか?またはstripslashes()機能だけを残しておきますか? stripslashes()は私のデータを壊してしまいますか?PHP - magic quotes gpcとstripslashesに関する質問

+4

何百万行ものコードがありますか?本当に? – ircmaxell

+0

@ircmaxell 100万行と1行のコード! – HELP

+0

@ircmaxwell、彼らはPHPで次のOSを開発しています – HyderA

答えて

1

stripslashes()を通過して削除を開始します。 magic_quotes_gpcをテストし、必要な場合はstripslahes()を呼び出すだけで、これを前もって行うことができます。

9

マジッククォートが有効になっているかどうかを確認するには、get_magic_quotes_gpcを使用する必要があります。次のようなコードブロックを、すべてのスクリプトで共有される正確に1か所で実行する必要があります。複数の場所でstripslashesを使用している場合は間違っています。

// recursively strip slashes from an array 
function stripslashes_r($array) { 
    foreach ($array as $key => $value) { 
    $array[$key] = is_array($value) ? 
     stripslashes_r($value) : 
     stripslashes($value); 
    } 
    return $array; 
} 

if (get_magic_quotes_gpc()) { 
    $_GET  = stripslashes_r($_GET); 
    $_POST = stripslashes_r($_POST); 
    $_COOKIE = stripslashes_r($_COOKIE) 
    $_REQUEST = stripslashes_r($_REQUEST); 
} 
0

meagarには正しい答えがあります。

しかし、状況をトラバースするには、「ファイル内の検索」機能でNotepad ++のようなものが必要です。 meagarのコードスニペットをコピーし、stripslashesを検索してください。