が含ま私は使用しなくても、私のindex.phpのに外部のPHPファイルを含めたい:?index.phpをP = pagetoinclude.php
私は今、このようにそれを持っています:index.php?page = home <これはhome.phpを含みますが、私はこのようにする方法を完全に忘れています:
index.php/home/without "?"代わりに "/"スラッシュを使用します。
ありがとうございました。ウェズリー。
が含ま私は使用しなくても、私のindex.phpのに外部のPHPファイルを含めたい:?index.phpをP = pagetoinclude.php
私は今、このようにそれを持っています:index.php?page = home <これはhome.phpを含みますが、私はこのようにする方法を完全に忘れています:
index.php/home/without "?"代わりに "/"スラッシュを使用します。
ありがとうございました。ウェズリー。
そして、私はあなたが適切なチェックをやっている場合を除きGETパラメータで渡されたページを含むことは非常に安全でない可能性があることを指摘すべきです。
偽のクリアURLを使用しようとしているようです。
index.phpでURLを取得し、index.php /で分割し、必要に応じて残りの文字列を解析します。
機能AcceptPathInfo
この種の命名はApache:
このディレクティブは、実際のファイル名(または既存のディレクトリに存在しないファイル)を以下の末尾のパス名の情報を含む要求が受け入れられるか、拒否されるかどうかを制御します。末尾のパス名情報は、PATH_INFO環境変数のスクリプトで使用できるようにすることができます。
たとえば、
/test/
という場所が、単一のファイルhere.html
のみを含むディレクトリを指しているとします。/test/here.html/more
と/test/nothere.html/more
の両方の要求は、/more
をPATH_INFOとして収集します。
あなたは$_SERVER['PATH_INFO']
とその環境変数にアクセスすることができます。
が利用可能な場合は、実際のスクリプトのファイル名の末尾が、クエリ文字列の前の任意のクライアントが提供するパス名情報が含まれています。たとえば、現在のスクリプトがURL
http://www.example.com/php/path_info.php/some/stuff?foo=bar
でアクセスされた場合、$_SERVER['PATH_INFO']
には/some/stuff
が含まれます。
Apache Webサーバを持っていないか、AcceptPathInfo
を使用できない場合は、おそらくあなたのファイルにそのような要求を書き換え、何とか要求されたURIからのパス情報の一部を取得するために他のメカニズムを使用することができます。
私はすでに$ _GETを取り出していますが、これを例として使用しました。私はあらかじめ定義された変数のみを使用します。 mod_rewriteを使って少し安全にしたかったのです。しかし、私は今覚えています。 ヘルプメイトに感謝します。 – Wesley