• 締切済み

標準入力について

ユーザーからの入力した情報を受け取るのにSTDINを使い標準入力から次の行まで読み込まれるとあるのですが、一体、どの範囲からどの範囲まで読み込まれるのか良く分かりません。 ユーザーから入力された情報を全て受け取ると言う意味でしょうか? よく分かりません、教えて下さい。

みんなの回答

回答No.2

どうやら、標準入力とCGIでのパラメータ入力を混同されているようです。 標準入力ではなく、CGIでのパラメータの受け取り方を答えた方がいいようなので、参考URLの、「3.1 フォームデータを変数に格納する。」辺りが参考になりますでしょうか?

参考URL:
http://www.futomi.com/lecture/form/cgi-pm.html
afiio
質問者

お礼

パラメーターの受け取り方は分かりました。 でも、そもそも標準入力とは何ですか? 何の為にありますか? 分かりやすく教えてもらえませんか?

afiio
質問者

補足

すいません。 何か勘違いしていたようです。 理解するのに丸1日掛かりました。 http://takenaka-akio.cool.ne.jp/doc/perl_kiso/miscel.html すいません。

回答No.1

STDINもファイルハンドルと同様に扱えますので、スカラコンテキストで<STDIN>とすると最初の改行(エンターを押すまで)までが読み込まれます。これを繰り返し、1行ずつ取得することができます。 UNIX系のOSだとCtrl + DでEOFを送って標準入力からの送信を終了できます。これは<STDIN>にとっては、ファイルの末尾に来たのと同等の意味となります。

afiio
質問者

お礼

回答ありがとうございます。 >最初の改行(エンターを押すまで)までが読み込まれます。 どこからですか? 例えば、 ▼お名前<br> <INPUT TYPE="text" NAME="name"><br> ▼E-mail<br> <INPUT TYPE="text" NAME="mail"><br> ▼本文<font color="#FFFFFF">(必須)</font><br> <TEXTAREA NAME="honbun"></TEXTAREA><br> ▼URL<br> <INPUT TYPE="text" NAME="url" VALUE="http://"><br> ▼削除パス<br> <INPUT TYPE="password" NAME="p" VALUE=""> のような掲示板を作ったとして、この入力されたフォーム全ての情報を受け取ると言うことですか?曖昧過ぎて、ちゃんとした説明がないので、よく分かりません。

関連するQ&A