CJ Club TOP/CGI Script/i-mode/J-SKY向け/QUIZ4-i

QUIZ4-i

(i-mode向け4択クイズ)



■特徴とサンプル

  1. 4択クイズをランダムもしくは順に表示
  2. 成績別データを取得
  3. 成績別待ち受け画像表示(i-mode/J-Sky自動判別)
  4. 携帯端末からも簡単に問題追加/削除可能
  5. 任意の数のランキングも取得

    サンプル
    [ QUIZ4-i ]
    管理用、略語クイズのテストはできません。TV関連クイズのみ可です。

    iQUIZ-RING というのを運営しています。ぜひご参加ください!
    iQUIZ-RINGとは…?


■ダウンロード

まず次のファイルをダウンロードしてください。ダウンロードする場所は好きなところで結構です。

[ qi.zip(24KB)]
qi.zip
[ qi.lzh(24KB)]
qi.lzh
v3.3

ダウンロードが完了したら解凍してください。念のためこのページも保存することをオススメします。

このCGI はフリーですが規定通りに使ってください。オリジナルスクリプトです。ということは、著作権欄を消さない限り再配布自由です。
また、同封されているReadme.txtにも目を通しましょう。



■ファイル確認

解凍 したあと、以下のファイルがきちんとあるか確認してください。


■設定変更

最小限の設定変更の説明です。メモ帳などのエディタで qi.cgi のファイルを開いてください。

1行目

#!/usr/local/bin/perl

これを正しいパスに書きなおしてください。だいたいのサーバではこのままでOKです。


次にメモ帳などのエディタで set.cgi のファイルを開いてください。


9/10/11行目

$met    ="POST";
$backurl="index.html";
$pass  = "7777";

データの受け渡し形式をGETにするとJ-SKYでも利用可能
戻るURLを記入してください。
管理用パスワードです。変更してください。


20/21行目

$max_t = 40;
$skku  = 3;

$max_t は制限時間(秒単位)。60秒以上は指定できません(指定すると無制限になります)。
$skku は失格問題数。この数だけ問題を間違えると失格になります。

*P501i でも動作させたい場合は、14行目 $cgi_f= "qi.cgi"; をhttp://〜のURLでCGIを指定してください。

■サーバに送る(テスト設置)

基本設定ができたら、サーバに送りましょう。ここでは[ public_html ]の下に
[ qi ]というディレクトリを作ってそこに送るという仮定で説明します。

[public_html]┐
             ├ [qi] ┐(ロック機構を使う場合 [777])
             │      ├ qi.cgi   [755](このファイルにリンクを張ります)
             │      ├ qr.dat   [666]
             │      ├ set.cgi  [755]
             │      ├ qr2.dat  [666] (ランキングをとる場合必須)
             │      ├ jcode.pl [755] (このファイルは他のCGIと共有できます)
             │      └ qq.dat   [666] (このファイルはカウンタ機能を使う時必要)
             │
             └ index.html

[ ]内の数字は送るときのパーミッションです。
ファイル名 モード パーミッション
qi.cgi/jcode.pl/set.cgi アスキー(テキスト) 755
qr.dat/qq.dat/qr2.dat アスキー(テキスト) 666


■テストしてみる

試しにテストしてみましょう。うまく行ったら設置成功!HTMLファイルから[ qi.cgi ]にリンクを張りましょう。

■レベル別メッセージの設定

結果によりレベル別にわけ、メッセージを表示します。オプションとして待ち受け画像へのリンク設定もできます。
(ここは説明の便宜上、半角カナを利用しています。文字化けしていたら申し訳ありませんm(_ _)m)

34〜44行目

# 値の指定
@lv = (5,10,25,100);
# メッセージの指定
@lvm= ('小学生級','ニュースキャスター級','略語マニア級','略語キング');
$deep= 'コギャル級';
# 待ちうけ画像の指定(i-mode)
@lvi= ('q2.gif','q3.gif','q4.gif','q5.gif');
$deei= 'q1.gif';
# 待ちうけ画像の指定(j-Sky)
@lvp= ('q2.png','q3.png','q4.png','q5.png');
$deej= 'q1.png';

@lv は結果でレベル分けの際の数値 @lvm はわかれたレベル別のメッセージ
$deep は最低レベルのメッセージ @lvi はレベル別の待ちうけ画像 $deei は最低レベルの待ちうけ画像です。
例えば正解が5問未満だと q1.gif へのリンクが張られた コギャル級 が出ます。
正解が22問だったら q3.gif へのリンクが張られた ニュースキャスター級 がでます。
J-Skyだと自動的に @lvp と $deej に指定された画像を出します。

例: 10未満をファミコン級、10〜49をスーファミ級、50〜99を64級 100以上をゲームキューブ級とするなら

# 値の指定
@lv = (10,50,100);
# メッセージの指定
@lvm= ('スーファミ級','64級','ゲームキューブ級');
$deep= 'ファミコン級';
# 待ちうけ画像の指定(i-mode)
@lvi= ('sfc.gif','64.gif','gamecube.gif');
$deei= 'fc.gif';
# 待ちうけ画像の指定(j-Sky)
@lvp= ('sfc.png','64.png','gamecube.png');
$deej= 'fc.png';

というような設定にします。

■問題作成

問題を作成します。qq.datをメモ帳などで開いてください。すると、

'DVD' これ何?<>デジタルバーサタイルディスク<>デジタルビデオディスク<>デッカイバーチャンの臀部<>デブブタドロンジョ<>1<>
'CD' これ何?<>コンタクトディスク<>コンパクトディスク<>こんなに出っ歯<>コングデブ<>2<>
'キムタク' これ何?<>木村タクシー<>キムチオタク<>現代語訳で金鐸<>広島カープの選手<>4<>
'WTO' これ何?<>世界教育機関<>世界経済機関<>世界観光機関<>渡辺徹の奥さん<>3<>
  :
  :

となっています。これは

問題<>答え1<>答え2<>答え3<>答え4<>正解番号<>

と区切られています。このように <> でそれぞれを区切ってください。あなたが問題を作る際も同じようにします。
あなたが問題を作るときはもちろんサンプルの問題は全部削除しても構いません。

オンラインからも携帯端末からも問題を追加できます。管理用からパスワードで入りフォームから追加してください。管理モードから削除も可能です。
たくさん問題を作る場合はオフラインでエディタで行い、ふと思いつき追加したい場合は携帯端末から追加すると便利です。

■RINGに登録

iQUIZ-RINGに参加しませんか?登録し送られてきた登録NOを
25行目

$RING  = "0";

に記入するだけでOK!ぜひご参加ください。


■マルチ設定機能

設定ファイルを複数作り、ひとつのCGIで複数のクイズを管理できます。
まず、set.cgi と同じような設定ファイルを作ってサーバにアップして下さい(パーミッションは755)。例 set1.cgi
それを qi.cgi の設定箇所に設定します。例 $set[*]="./set1.cgi";(*は連番で指定してください)
それで設定は完了。 $set[*] の * を no に指定してアクセスします。例 http://www.xxx.xom/qi.cgi?no=*
新しいログファイルは自動で生成されます(その際ログファイルを生成するディレクトリのパーミッションは777or755)

また、http://www.xxx.com/qi.cgi?mode=all より各設定のログなどの状況がわかります。

■その他

わからない、設置できない、バグがでた、などの情報はサポート掲示板までお願いします。

携帯端末以外のアクセス排除設定したとき、PCからの管理モードに入室するには、?mode=edit をつけアクセスしてください。
 例) http://www.xxx.com/qi.cgi?mode=edit
問題を間違ったあと戻って正解を選ぶ、という不正行為が行われる場合、制限時間を少なくすれば以外に効きます。

QUIZ4-ez (HDMLに対応したQUIZ4-i)
極楽とんぼのもっと食えよ!!-CGI編-



TOP
Click here to visit our sponsor