• ベストアンサー

$ENV{'QUERY_STRING'}以外で引数を取得するには?

CGI上で$ENV{'QUERY_STRING'}を使用しないで引数を取得するにはどうしたらいいのでしょうか? hoge.cgi?XXXX の XXXX を取得したいのですがある理由によって$ENV{'QUERY_STRING'}が使用できません。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • fruit893
  • ベストアンサー率68% (15/22)
回答No.3

hoge.cgi?xxxx ではなく、 hoge.cgi/xxxx という表記のURIが許されるなら、 $ENV{'PATH_INFO'}を使う方法があります。

Intel_404
質問者

お礼

回答ありがとうございました。 一度試してみたいと思います。ありがとうございました

その他の回答 (2)

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.2

環境依存かもしれませんが $ENV{REQUEST_URI} で?以降を含めたパスがとれるかも。

Intel_404
質問者

お礼

回答ありがとうございました。 一度試してみたいと思います。ありがとうございました

回答No.1

PERLでかつMETHODがGETの場合、 $ENV{'QUERY_STRING'}を使う以外方法は 無いと思います。 どうしても、$EMVが使えないのであれば、 POSTにするという手もありますが、MAXLENGTHも $ENVで取るので、難しいですね。 思い切って、PHPに変更するなどの手を使うか 引数ではなくCOOKIEやファイル渡しにするか しかなさそうです。 という事で、とりあえずアドバイスで・・・・

Intel_404
質問者

お礼

回答ありがとうございます。 そうですか、それ以外ではできないのですね。残念です。他の方法を探してみます。

関連するQ&A