私設SoS2オーナー応援BBS

新規発言一覧最新記事過去一覧検索ダウンロードページHOME

No.1884  Re[5]:【続】カードコレクションのカテゴリわけとページ切り替え
発言者: moon
発言日: 2015 09/30 21:18
> やってみようと思い、下記のようにしてみたのですが、これだと表示がされず…

> print qq|<FORM method="POST" action="$cgiurl">\n|;

他と同様に「&form('start');」を使い、閉じタグ出力も「&form('end');」を使うほうが良いです。

> print qq|<input type="hidden" name="collection" value="mode">\n|;
> print qq|<input type="hidden" name="category" value="$Fm{category}">\n|;
> print qq|<input type="hidden" name="id" value="$id">\n|;
> print qq|<input type="hidden" name="pass" value="$ps">\n|;

他と同様に「&input('hidden', 'mode', 'collection');」のようにしたほうが良いです。
モード用のnameとvalueが逆です。(名前がmode)
パスワード用の名前はpsです。

> print qq|<input type="hidden" name="start" value="$start">\n|;
> print qq|<select>\n|;
> print qq|<OPTION SELECTED>ページ切り替え\n|;
> print qq|<option value="1">1\n|;
> print qq|<option value="5">2\n|;
> print qq|<option value="10">3\n|;
> print qq|</select><input type="submit" value="みる"></FORM>\n|;

startの値をhiddenで指定すると選択できなくなります。(同様にcategoryも固定値になっています。)
代わりに、select要素のname属性をstartにしてください。

> (サブルーチンも、実は今まで一度も作ったことがないということもあり…sub get_card_image_pathをベースにどうすればいいのか分からず……ひとまずmyを抜く方法で様子見を…汗)

今回の件に限らず、共通化できる処理はサブルーチン化することをお勧めします。
現状では1か所でしか使用していないので共通化というメリットはないですが、サブルーチン化すると後で見た時に何をやっているのかが少しはイメージしやすくなると思います。
処理内容としては、カード名を受け取って画像ファイルを返していたのを、カテゴリ名を返すように変更します。(○○○、△△△、□□□、×××の部分を変更するだけ。)
sub ○○○{
  my $name = shift;
  my $△△△ = exists($card_name_hash{$name}) && exists($card_name_hash{$name}->{'□□□'}) ? $card_name_hash{$name}->{'□□□'} : '×××';
  return $△△△;
}

▼関連発言

1876:【続】カードコレクションのカテゴリわけとページ切り.. [YOUME] 09/28 07:08
 └1877:Re:【続】カードコレクションのカテゴリわけとペー... [moon] 09/28 22:56
  ├1878:Re[2]:【続】カードコレクションのカテゴリわけと.. [YOUME] 09/29 12:09
  │└1880:Re[3]:【続】カードコレクションのカテゴリわけ.. [moon] 09/29 20:46
  │ └1882:Re[4]:【続】カードコレクションのカテゴリわ.. [YOUME] 09/30 14:01
  │  └1884:Re[5]:【続】カードコレクションのカテゴリ.. [moon] 09/30 21:18
  │   └1885:Re[6]:【続】カードコレクションのカテゴ.. [YOUME] 10/01 11:53
  │    └1886:Re[7]:【続】カードコレクションのカテ.. [moon] 10/01 19:03
  │     └1887:Re[8]:【続】カードコレクションのカ.. [YOUME] 10/02 14:59
  │      └1888:Re[9]:【続】カードコレクションの.. [moon] 10/03 10:34
  │       └1889:Re[10]:【続】カードコレクショ... [YOUME] 10/03 19:32
  │        └1890:Re[11]:【続】カードコレクシ... [moon] 10/03 21:24
  │         └1891:Re[12]:【続】カードコレク... [YOUME] 10/04 10:32
  │          └1892:Re[13]:【続】カードコレ... [moon] 10/04 14:13
  │           └1893:Re[14]:【続】カードコ... [moon] 10/04 20:35<-last
  └1879:コレクション数に応じたボーナス [YOUME] 09/29 12:45
   └1881:Re:コレクション数に応じたボーナス [moon] 09/29 21:17
    └1883:Re[2]:コレクション数に応じたボーナス [YOUME] 09/30 14:08

  返信フォーム [引用]
名 前 保存
題 名
発 言
PASSWORD
投稿確認必ずチェックを入れてください。こちらにはチェックを入れないでください。
書き込む
◇題名は、短くわかりやすく書いてください。
◇過去に同じ内容が投稿されていないか検索してから書き込んで下さい。
◇管理人の判断により相応しくない投稿は削除します。

Pass 保存


CGIROOM