SSIスクリプトへの引数の渡し方

CGIテクニック集トップへ





概要

SSIで呼び出したCGIスクリプトへ引数を渡す方法です。メッセージボード5トップディスプ等で引数が必要な場合にこの方法を利用します。

必用な処理

  1. SSIをinclude virtualで呼び出す

サンプルコード

 <!--#include virtual="topdisp.cgi?mode=event" -->

コードの解説

 <!--#include virtual="topdisp.cgi?mode=event" -->

SSIでCGIを実行するのに通常は

 <!--#exec cgi="script.cgi" -->

 <!--#exec cmd="script.cgi" -->

を利用するのですがこれらではスクリプトに引数を渡すことができません。"include virtual"を利用することでGETで渡した場合のように引数をスクリプトに渡すことができます。引数を受け取るCGIでは通常通りGETとして環境変数QUERY_STRINGに入るのでCGI.pmを使って受け取った値を取り出すことができます。直接環境変数を読み込む場合は、

 $data=$ENV{"QUERY_STRING"};

のようにして値を取り出すこともできます。

関連するCGIテクニック

スクリプト名をファイル名から自動的に取得
スクリプト名の区別によるssiモードの作り方