• 締切済み

STDINについて

perl初心者です。よろしくお願いします。 <INPUT TYPE="password" NAME="pass" SIZE=12 MAXLENGTH=12> <INPUT TYPE="submit" VALUE="入室"> で入力されたパスワード(1234)を read(STDIN, $pass, $ENV{'CONTENT_LENGTH'}); print $pass;とすると、status=send&pass=1234とかえってきます。 これについて、$passの内容を1234にするには、 $pass=………;とするのでしょうが、この………部分の記述を どうすればよいのかわかりません。left関数は拒否されました。

みんなの回答

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

参考URLが参考になるかも

参考URL:
http://okweb.jp/kotaeru.php3?qid=1206111
igosotaro
質問者

お礼

ありがとうございました。ご回答がヒントになり、他の質問を しらみつぶしに読んでいきましたところ、 $pass = substr($pass,17,$len);に出会いました。 問題は解決しました。

igosotaro
質問者

補足

どうも私には難しすぎるようです。このデコードというのをそのまま コピーすればよいのでしょうか?フォームメソッドはPOSTでなく ても、1234が返ってきさえすれば問題ないのですが。 $len = $ENV{'CONTENT_LENGTH'}; $len = $len - 17; $pass = right($pass,$len); print $pass; とやってみたら、 …&mode::right…というようなエラーメッセージがでました。

すると、全ての回答が全文表示されます。

関連するQ&A