
こんばんわ。いつもお世話になっております。
htmlページでプルダウン形式で血液型を選択して、
cgiに送り、その結果、貴方は(血液型)です。と表示させたいのですが、
htmlページで、
<form action="xxx.cgi">
<div><select name="blood">
<option value="a">A型
<option value="b">B型
<option value="ab">AB型
<option value="o">O型
</select></div>
<input type=submit value="見る"></form>
として、
cgiの方では、
$blood="$in{'blood'}";
if ($blood==a) {
print "私はA型です。";
}
if ($blood==b) {
print "私はB型です。";
}
if ($blood==ab) {
print "私はAB型です。";
}
if ($blood==o) {
print "私はO型です。";
}
としたのですが、
表示結果が
私はA型です。私はB型です。私はAB型です。私はO型です。
と全部でてきてしまいます。
何か構文的におかしいのでしょうか?
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
CGIのカテゴリで言語が書いてないので言語はPerlと仮定します。
まず、Perlで文字列比較演算子は == ではなく eq です。
あと、血液型は調べていない人など不明な人やA/B/AB/O型以外の
血液型の人もいるのでそういった人のことも考慮しましょう。
<form action="xxx.cgi">
<div><select name="blood">
<option value="a">A型</option>
<option value="b">B型</option>
<option value="ab">AB型</option>
<option value="o">O型</option>
<option value="unknown">不明</option>
<option value="etc">その他</option>
</select></div>
<input type="submit" value="見る"></form>
my $blood = "$in{'blood'}";
if($blood eq 'a') {
print "私はA型です。";
} elsif($blood eq 'b') {
print "私はB型です。";
} elsif($blood eq 'ab') {
print "私はAB型です。";
} elsif($blood eq 'o') {
print "私はO型です。";
} elsif($blood eq 'unknown') {
print "私の血液型は不明です。";
} else {
print "私はその他の血液型です。";
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JSONで文字列が長い時
-
メモリをアドレスを直接指定し...
-
リロード後にプルダウンの選択...
-
実行時エラー 3020の対策
-
セレクトボックスを非表示にし...
-
SELECT OPTIONの中身をコピペ...
-
関数「exists」と「defined」の...
-
formで特定のinputを送信しない...
-
インラインフレーム内へのリンク
-
プルダウンリストの背景色の指定
-
複数列を持ったリストボックス...
-
Application.ScreenUpdating = ...
-
シェルスクリプトで、空白(ス...
-
数値かどうかの判定方法
-
[python] 文字列を変数名として...
-
C言語のflagの使い方が分かりま...
-
セレクトボックスのselected属...
-
Pythonの np.indicesに関する質...
-
日付の差分の求め方(日、分)
-
16進の10進変換について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JSONで文字列が長い時
-
メモリをアドレスを直接指定し...
-
Excel VBAで行追加後の...
-
途中まで出来ているのですが‥(D...
-
CGI(Perl)で、Net::FTPを使いたい
-
リロード後にプルダウンの選択...
-
フォームで入力した値を表示し...
-
linq で 楽天ウェブサービスのX...
-
【C#】数値の範囲チェックについて
-
連結リストについて
-
VB2010 のユーザコントロールの...
-
半角スペースが有効にならない。
-
iteratorの再利用について
-
CGIでのページ指定~その(2)
-
CGIからメールに書き出しする際...
-
複数行URLエンコードができるCG...
-
Application.ScreenUpdating = ...
-
formで特定のinputを送信しない...
-
セレクトメニューで2つの項目...
-
「*:*」って何を意味するのでし...
おすすめ情報