WordPressでは自動的にマジッククオートされてしますので、stripslashes_deepをで元に戻す必要がある

参考記事:http://foreignkey.jp/archives/99

プラグイン作成時に$_GET,$_POSTしてデータの受け渡しをすることが多いのですが、$_GET,$_POSTで受けとったデータは全てマジッククオートされています。

マジッククオートとは
http://www.php.net/manual/ja/security.magicquotes.what.php

なので$_GET,$_POSTで受け取った後、stripslashes_deep関数を使って、元に戻します。

参考記事:http://codex.wordpress.org/Function_Reference/stripslashes_deep

※stripslashes関数もあるのですが、こちらは再帰的な処理をしない為、stripslashes_deep関数を使う方が良い。
参考:http://php.net/manual/ja/function.stripslashes.php

元に戻したあと、データベースに登録してあげるとOK!

なぜWordPressは基本マジッククオートをするのか、マジッククオートしてるものを外してDBに登録しても構わないのか?
※それなら最初からマジッククオートしなくて良いじゃんって思うのですが・・・
このあたり他のプラグインを見つつ、勉強します。

参考:http://www.atmarkit.co.jp/ait/articles/1201/13/news139.html

を見ていると、マジッククオート事体意味がないものと書かれて・・・
外してDBに登録してもOKっぽい。でも、なんでWordPressは基本マジッククオートつけるのか?の疑問は残ったままです。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

w

%s と連携中