こんにちは、お世話になります。

Javascript(以下js)のsrcにPHPを指定し、HTML内にPHPを埋め込む時、
埋め込まれた場合と直接PHPにアクセスされた場合を判定する方法が判りません。

埋め込む時のソース
<script language="JavaScript" type="text/javascript" src="http://example.com/aaa.php?p=1" charset="utf-8"></script>
こんな感じですが、cakePHPで書いているので、実際のsrcは
http://example.com/aaa/bbb/1
のようになります。

PHP側で出力する時、js形式になるようにしています。
埋め込む時はそのままjsとして実行されますが、
PHPが直接アクセスされた場合は、htmlタグなどが無いため
変な表示になってしまいます。
直接アクセスされた場合はhtmlタグやbodyタグなどを出力させたいのですが、
判定方法はPHPでどのように書いたらよいのでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (1件)

そのJavascriptが書いてあるaaa.phpは、実際に出力もさせたいという事でしょうか?それとも、直接アクセスされてしまった場合はhtmlタグやbodyタグを含めて出力させたいということでしょうか?


いずれにせよ、basename()などURLから判別させるのが、無難だと思います。
もし、後者だった場合、逆に出力もさせず、aaa.phpの冒頭に
if (basename($_SERVER['PHP_SELF']) == 'aaa.php') {
exit();
}
などで弾いてしまう手もあると思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報