- ベストアンサー
require,includeとAjaxで分岐
お世話になります PHPファイルについて requireやincludeで読み込まれた場合と Ajaxでのアクセスに対する処理を分岐する というのは可能でしょうか? $_SERVER['PHP_SELF']と__FILE__を比較すればいいかな とか思ってますがそれで本当に大丈夫なのか? もしかしてこの二つ、なんか違う形でパス返したりしないか? もうちょっと賢いやり方あるんじゃないか?とちょっと不安です 動機としては『これって一つにまとまってた方が便利じゃね?』 ぐらいのもんなんで、やめといたほうがいいっていうものなら諦めます よろしくお願いします
お礼
そんなカンジです、ありがとうございます こっちのやってるのが非表示のiframeにロードして contentsのテキストをjsonに変換とかいう なんちゃってAjaxでなかったらまさにそれでした formからの送信でrequestheaderを操作することって できないですかね…?
補足
結局今回の件については 当初想定してた__FILE__と$_SERVERの情報比較で それ自身が呼び出されてるのかrequireされたりして 別のファイルから呼び出されてるのかを見る形にしました $_SERVER['PHP_SELF']は__FILE__と違って ドキュメントルートを含まずURL変数を含み サーバーが解釈した後のものなので全部小文字になってたりする というのがあったのでそれを踏まえ if((str_ireplace(__FILE__,'',$_SERVER['DOCUMENT_ROOT'].$_SERVER['PHP_SELF'])=="")&&isset($_POST['hoge'])){Ajaxアクセスの処理} みたいなカンジでとりあえず行きました (URL変数が含まれてしまうのは逆に GETでのアクセスを遮断できるので対処してません) しかし今後に有用な情報をいただけました、ありがとうございます