ブログみたいに使ってすみませんw
元請けが好きなのでさくらサーバのスタンダードをよく使います。
そのくせに最近まで(昨日までw)気がつかなかったのことがあったので書いておこうかと。
私はさくらでPHPを使うと今の標準が5.4なんでfilter_inputを普段GETとかPOSTとかには使ってるんです。
ですがなぜか$_SERVER
はベタに書いてたので、ふとfilter_inputを使ってみようとか思ったって話です。
(本当はIDEとしてNetBeansを使ってまして「$_SERVERを直接書くな!!フィルタしろ!!」って文句言われるからうっとうしいなぁと思ったのが元なんですがw)
それはさておき、よくフォームとかでサブミットされた次のページで基本的なチェックとして
if($_SERVER["REQUEST_METHOD"] == "POST")
とかってやると思うんですね。
要するにアドレス直打ちの最低限防止みたいな。
これをフィルタしてみようと思い、
if(filter_input(INPUT_SERVER,"REQUEST_METHOD") == "POST"){
***A***
}else{
***B***
}
みたいなのを書いた訳です。
最初はローカルPCのXAMPPで動作確認してOKと。
ではさくらサーバにアップして・・・あれ?Bに行っちゃう・・・
おかしいなと思ってコード書いてアップしてみたらさくらサーバではINPUT_SERVERは無視する?
REMOTE_ADDRとかHTTP_REFERERとかすべて空白で返ってきてしまう・・・
Googleでも調べてみましたが特に書いてる人もいなさそう?
INPUT_SESSIONが動作しないのはPHP自体の話でマニュアルにもあるので理解出来るんですが(NetBeansは文句言いますがw)
まぁ直書きすれば解決するんで大きくは問題にならないんですが、どなたか解決法とまで行かなくとも原因とかわかりませんかね?
個人的に気持ち悪いだけなんですがw