<< miniDNSからお引越 | Top | もう3月も終わりかい! >>
[ Date: 2005年02月24日 / Modified: 2006年12月17日 ]
PHPのSESSION変数でファイル名を渡す
Smartyのテンプレートから別のPHPスクリプトを読み込むには
{include_php file="$server_root/blog/scripts/include_file.php"}
などとするが、そのスクリプトに読み込みたい(その都度違った)ファイル名を渡したいときはどうすればいいのだろう。普通に考えれば、ファイル名をSmarty側で読める変数名にassignしてテンプレート側で読めばできそうなのだが、いろいろやってもうまくいかなかった。
...ということで、結局SESSION変数で値のファイル名をグローバルなスコープにしてしまうことで、うまくいった。
index.php(テンプレート呼び出し側)
session_start();
..............................
if (isset($file_path)) {
$_SESSION["incfile"] = $file_path;
}
テンプレート側
{include_php file="$server_root/blog/scripts/include_contents.php"}
include_contents.php側で
$file = $_SESSION["incfile"];
include("$file");
投稿者 jgb : 2005年02月24日 08:53