□ ひろたか [2006年11月29日16時01分]NXerさんご教授お願いします。別スレにて記入しましたが再度投稿させて頂きます。現在、当方のアンケートはNXerさんのお陰でアンケートの投票をしないとグラフが表示されないのですが、一度投票してまた見に来た時にグラフが隠れているのは問題ではないかと少し疑問に思っています。そこで質問です。ユーザーが一度、投票するとその日の内はグラフが表示されている風には出来ますでしょうか?また、新規で投票される方には初回は表示してほしくないです。質問2)投票項目を追加時に任意に画像を添付する事は可能でしょうか?現在、思案中の案ですが、可能であれば組み込みたいと考えています。質問3)アンケート終了日が現在日付になっているのですが締め切り1週間2週間3・4・5・6週間とし最大でも1ヶ月に簡単に設定できるようにしたいのですがどうでしょうか?質問4)アンケート投票項目を追加した際のアンケート項目の並びの順番がバラバラなのでアイウエオ順とその他は必ず一番下に並ぶようになりますでしょうか?たくさん書きましたが宜しくお願いします。 □ NXer [2006年11月29日20時25分]>質問1)投票見に来た時にグラフがアンケート設置の最初の要望は、おそらく短期間、例、1週間で締め切り、その後のアクセスで利用者に結果を返す、という当方の想定でした。投票直後の集計、そして全体は締め切り直後からわかり、当初の趣旨に合致しているように思われます。締め切り期間が長く、その間で投票終了者に、中間結果を知らせるには、1.1 利用者の善意を信頼できる場合は、ボタンを押せば中間表示サブルーチンで表示できたり、表示の旗を立てることで表示できると思われます。過去ログでボタンや旗の立て方を応用してください。信頼できない場合で、しかも締め切りまでにどうしても中間集計結果を知りたい人は申し出があれば、メールで仮のパスワードを発行します。そのパスワードをファイル名に含む、ひろたかさんの結果表示のあんQにリンクするanq12345.htmlページのURLをしらせます。そのページにアクセスしていただくのも解決策です。ただし12345はパスワードですから定期的に12abc,22ezq など変更します。かなりセキュリティは高度になります。>ユーザーが一度、投票するとその日の内はグラフが表示されている風には出来ますでしょうか? これは、グラフ表示画面でブラウザの「名前を付けて保存」をすればその日以降いつでも見ることができます。また、ブラウザの印刷機能で印字できます。利用法のガイドで説明します。>新規で投票される方には初回は表示してほしくないです。投票直後の結果表示もしないなら旗を0にすれば表示されません。質問2)投票項目を追加時に任意に画像を添付これは、設置者にはとても簡単にできます。ただし、タグを許可すると表が乱れ、また、悪用されるために通常は、できません。セキュリティを考えると、anqmaster.cgi タグ許可anquser.cgi タグ不許可と2本インストールします。tempファイルは共有します。138行目付近---------------------------------# $value =~ s/<.*?>//g;# html 許可----------------------------------------------anqmaster.cgiでは138行目に#をつけてコメント文・非実行文にします。好きな月の形 というテーマです。-------------------------------------項目に以下の入力をします。十三夜 <img src=img/13th_night_moon.jpg width=100 height=60>--------------------------------------------------------------------img srcタグです。ただし、画像は自らが著作権を有するかフリー素材などで利用規定で許可されている画像です。画像をともなうアンケートは従来の文字中心のアンケートとは違った結果になるかもしれません。そのため文字アンケートと画像アンケートの二種類をセットにしてそれらの回答の信頼性を確認する必要があります。好きなアイスクリームで画像と文字でどのような結果になるのでしょうか。画像は、アンケートの表のサイズから10kバイト程度で十分と思われます。imgディレクトリに転送しておきます。利用者から画像アンケートの希望があれば一定の規則を作り、設置者で編集機能を使いあとから追加の変更ができます。質問3)終了日が現在日付>1週間2週間3・4・5・6週間とし最大でも1ヶ月に簡単に設定cgiのフリーソフトでカレンダ表示があれば、新しいテーマ設定欄の上または下にそれを表示するのも解決策と思います。万年カレンダのサブルーチンを組み込みます。あるいはフレームでカレンダページを表示するのはどうですか。ブログでよく見かけます。それらを参考にしてください。質問4)アンケート項目の並びの順番「バラバラ」を良く見ると登録順になっていませんか。項目順に並べ替え(ソート)するには、過去ログを見てください。ソートキーの変更で多分可能と思われます。例を示します。231行付近------------------------------------------$key{$_} = $num; #ソートキーを登録順の数値とします$key{$_} = $content; #ソートキーを内容順の文字列とします--------------------------------棒グラフ省略1 ブルドッグ 3 37.50% 2 ダックスフント 0 0% 3 チワワ 3 37.50% 4 パピヨン 1 12.50% 5 秋田犬 0 0%-------------------------------------当方のローカルサーバのソートでは、英数文字、かな、漢字で整序されました。それぞれのサーバの並べ替えに多少の違いがあるかもしれません。以上です。*******************************************************繰り返し警告します。サーバで直接cgiをテストすることは当方でテストしていますが、大変危険です。不具合の発生の責任は当方には一切ないことをおことわりします。******************************************************* □ ひろたか [2006年11月30日14時52分]NXerさんまず始めに回答有難うございました。ボタンを押せば中間表示サブルーチンで表示できたりする方法ですが、私なりにいろいろ調べてみてみたのですが、お恥ずかしいながら、ちょっとよく解りません具体的に教えていただけないでしょうか?それと先日、カテゴリごとに表示が出来るように組み込んでいただいたのですが、どうのようにしたら下記のような事が可能になりますでしょうか?(したい事)セレクトフォームにて各カテゴリが選択でき、なおかつその横に表示ボタンをつけて表示ボタンをクリックすればそのカテゴリの表示が出来るという代物です。ようするにスポーツをセレクトフォームから選択し、表示ボタンをクリックすると表示できればOKです。私なりに以下のように考えたのですが。。。print "<form action='$script' method=POST>\n";for ($i = 0; $i < 10; $i++) { if (! $i) { print "<option>○政治・経済○<option>▲芸\能\(音楽/俳優/その他)▲<option>◆スポーツ◆<option>★趣味・流行★<option>■恋愛■<option>□IT関係□<option>◎ゲーム・漫画・アニメ◎<option>▼その他▼"; }else { print"<option>"; } }print "</select>\n";print "<input type=submit value=' 表\示\ ' class=btn></td></form>\n";初心者の為、検討違いな事をしているかもしれませんが。。。よろしくお願いします。 □ NXer [2006年11月30日20時08分]過去ログの例とよく似ていますが、これはテーマ一覧のページの行付近です。NXerです。>中間表示その1)ガイド方式です。現在のスクリプトに挿入します。-------------------------------161 &header;print "<A HREF=\"http://ひろたかさんサーバ/index.htm\">|トップ|</A>\n";print "<A HREF=\"http:// ひろたかさんサーバ/anq/anq_revisit.cgi\">再訪問|</A>\n";print "<A HREF=\"http:// ひろたかさんサーバ/anq/view.htm\">使い方|</A>\n";print "<br><br>\n";--------------------------------------------------改造はこれだけ。その2)新しいcgiファイルの作成、今のものを次のように改造します。これまでのスクリプトは結果非表示のスクリプトです。その旗 $scoreview=0を1にします。---------------------------------#得票率表示/非表示フラッグ ゼロは非表示$scoreview=1;-------------------------------134 elsif ($in{'data'}) {$scoreview=1; &html; }------------------------------------そして-------------------# このファイルの名前$script = "anq_revisit.cgi";------------------------------と変更して、その名前で保存します。新しい全表示用になったcgiファイルanq_revisit.cgi を転送、パーミッション設定をします。利用者運用あんQの163で、このファイル(再訪用)にリンクを張りました。利用者用投票前非表示の、上でガイドをつけたあんQを起動して、「再訪問」をクリックすればおそらく、新規あんQが開きます。cgiでは、見かけは1本ですが、複数のスクリプトの集合体になることがしばしばあります。ファイル名で内容がわかるようにしたり、またコメント文を付けておく必要があります。専用ボタンを作る時は、そのボタンにリンクを張ります。いずれにしても利用者に、締め切り前の結果を返すものです。締め切り後は、すべて表示されます。過去ログにまわされた別件です。最新の書き込みへの回答になります。□ ひろたか [2006年11月29日21時01分] >セレクトボタンですが、ラジオボタンのことと思いますが、リストボックスが select option 機能があることから、こちらでサンプルを作成してみました。作ってみると、カテゴリ選択に意味が加わり画面全体に動的な要素が加味される感じです。初期設定--------------過去ログと同じ#カテゴリflag$ctgry="なし";#---------------- 初期設定ここまで ----------------#--------------------------------------------過去ログと同じ130 if ($in{'mode'} eq 'politics') {$ctgry="政治";}if ($in{'mode'} eq 'entertainment') {$ctgry="芸能\";}if ($in{'mode'} eq 'hobbies') {$ctgry="趣味";}if ($in{'mode'} eq 'others') {$ctgry="その他";}#-------------------------------------if ($in{'mode'} eq 'reg' || $in{'mode'} eq 'adreg' || $in{'mode'} eq 'change') { ®ist; }-----------------------------過去ログと同じ191 else { $inf = "終了";} }#----------------------カテゴリ別一覧表示1行 eqは文字列等号if ($mail eq $ctgry){&subject_view;}#-----------------------------カテゴリ選択なし初期一覧elsif ($ctgry eq "なし"){ if (($page_view>=1 && $count<=5)||($first_view>=1 && $count<=5)){&subject_view;} elsif ($page_view1>=1 && ($count>=6 && $count<=10)) {&subject_view;} elsif ($page_view2>=1 && $count>10) {&subject_view;} }----------------上挿入}#この括弧は元 print "</table>\n</blockquote>\n";-------------------------------------------222 if ($open_mode) { print "■<a href='$script?mode=first_page'>始めの5つのテーマを見る</a>\n"; }#--------------------------挿入print "<form action='$script' method=POST>\n";print "<table class=plain><tr><td class=plain>\n";print "<select size='4' name='mode'>\n";print "<option value='politics'>政治</option>\n";print "<option value='entertainment'>芸能\</option>>\n";print "<option value='hobbies'>趣味</option>\n";print "<option value='others'>その他</option>\n";print "</td></tr></table><br>\n";print "<table><tr><td class=plain><input type='submit' value='カテゴリ選択'></td>\n";print "<td class=plain><input type='reset' value=' リセット ' ></td></form></table>\n";#---------------------------------------print "</blockquote>\n";©--------------------------2行元画面スペースの都合で、2行にすれば、select size=2政治、芸能が表示され残りは、スライドバーを下げてみます。これからカテゴリが増える場合にも画面構成は初期値の行数で収まることから、リストボックスは優れタグです。------------------------------------------print "<select size='4' name='mode'>\n";-------------------------------------------ラジオボタンの場合print "<select size='4' name='mode'>\n";などをprint "<input type='radio' name='mode' value='politics'>政治<br>のようにすれば多分上のスクリプトで動作すると思われます。name属性でcgiにmode=politicsを引き渡します。ラジオボタンの欠点は、増加したとき、下に長く伸びていくことです。いろんなアイディアをお試しください。その都度ファイル名を変えて保存すれば、後に別のソフトにサブルーチンとして利用できます。しかし、今の汗(perspiration)が、きらりと光るアイディア(inspiration)になることを、当方は残念ながら、まったく保証できません。なお、htmlのタグなどは、次の参考文献や参考サイトを利用しています。当方の考えのほとんどすべては、すえぽんサイトやそれらから学んだものです。すえぽんさん、アンクさん、杜甫々さんに感謝申し上げます。1 アンク、ホームページ辞典、翔泳社、20012 杜甫々 『とほほのWWW入門』<http://www.tohoho-web.com/>
NXerさんご教授お願いします。別スレにて記入しましたが再度投稿させて頂きます。現在、当方のアンケートはNXerさんのお陰でアンケートの投票をしないとグラフが表示されないのですが、一度投票してまた見に来た時にグラフが隠れているのは問題ではないかと少し疑問に思っています。そこで質問です。ユーザーが一度、投票するとその日の内はグラフが表示されている風には出来ますでしょうか?また、新規で投票される方には初回は表示してほしくないです。質問2)投票項目を追加時に任意に画像を添付する事は可能でしょうか?現在、思案中の案ですが、可能であれば組み込みたいと考えています。質問3)アンケート終了日が現在日付になっているのですが締め切り1週間2週間3・4・5・6週間とし最大でも1ヶ月に簡単に設定できるようにしたいのですがどうでしょうか?質問4)アンケート投票項目を追加した際のアンケート項目の並びの順番がバラバラなのでアイウエオ順とその他は必ず一番下に並ぶようになりますでしょうか?たくさん書きましたが宜しくお願いします。
>質問1)投票見に来た時にグラフがアンケート設置の最初の要望は、おそらく短期間、例、1週間で締め切り、その後のアクセスで利用者に結果を返す、という当方の想定でした。投票直後の集計、そして全体は締め切り直後からわかり、当初の趣旨に合致しているように思われます。締め切り期間が長く、その間で投票終了者に、中間結果を知らせるには、1.1 利用者の善意を信頼できる場合は、ボタンを押せば中間表示サブルーチンで表示できたり、表示の旗を立てることで表示できると思われます。過去ログでボタンや旗の立て方を応用してください。信頼できない場合で、しかも締め切りまでにどうしても中間集計結果を知りたい人は申し出があれば、メールで仮のパスワードを発行します。そのパスワードをファイル名に含む、ひろたかさんの結果表示のあんQにリンクするanq12345.htmlページのURLをしらせます。そのページにアクセスしていただくのも解決策です。ただし12345はパスワードですから定期的に12abc,22ezq など変更します。かなりセキュリティは高度になります。>ユーザーが一度、投票するとその日の内はグラフが表示されている風には出来ますでしょうか? これは、グラフ表示画面でブラウザの「名前を付けて保存」をすればその日以降いつでも見ることができます。また、ブラウザの印刷機能で印字できます。利用法のガイドで説明します。>新規で投票される方には初回は表示してほしくないです。投票直後の結果表示もしないなら旗を0にすれば表示されません。質問2)投票項目を追加時に任意に画像を添付これは、設置者にはとても簡単にできます。ただし、タグを許可すると表が乱れ、また、悪用されるために通常は、できません。セキュリティを考えると、anqmaster.cgi タグ許可anquser.cgi タグ不許可と2本インストールします。tempファイルは共有します。138行目付近---------------------------------# $value =~ s/<.*?>//g;# html 許可----------------------------------------------anqmaster.cgiでは138行目に#をつけてコメント文・非実行文にします。好きな月の形 というテーマです。-------------------------------------項目に以下の入力をします。十三夜 <img src=img/13th_night_moon.jpg width=100 height=60>--------------------------------------------------------------------img srcタグです。ただし、画像は自らが著作権を有するかフリー素材などで利用規定で許可されている画像です。画像をともなうアンケートは従来の文字中心のアンケートとは違った結果になるかもしれません。そのため文字アンケートと画像アンケートの二種類をセットにしてそれらの回答の信頼性を確認する必要があります。好きなアイスクリームで画像と文字でどのような結果になるのでしょうか。画像は、アンケートの表のサイズから10kバイト程度で十分と思われます。imgディレクトリに転送しておきます。利用者から画像アンケートの希望があれば一定の規則を作り、設置者で編集機能を使いあとから追加の変更ができます。質問3)終了日が現在日付>1週間2週間3・4・5・6週間とし最大でも1ヶ月に簡単に設定cgiのフリーソフトでカレンダ表示があれば、新しいテーマ設定欄の上または下にそれを表示するのも解決策と思います。万年カレンダのサブルーチンを組み込みます。あるいはフレームでカレンダページを表示するのはどうですか。ブログでよく見かけます。それらを参考にしてください。質問4)アンケート項目の並びの順番「バラバラ」を良く見ると登録順になっていませんか。項目順に並べ替え(ソート)するには、過去ログを見てください。ソートキーの変更で多分可能と思われます。例を示します。231行付近------------------------------------------$key{$_} = $num; #ソートキーを登録順の数値とします$key{$_} = $content; #ソートキーを内容順の文字列とします--------------------------------棒グラフ省略1 ブルドッグ 3 37.50% 2 ダックスフント 0 0% 3 チワワ 3 37.50% 4 パピヨン 1 12.50% 5 秋田犬 0 0%-------------------------------------当方のローカルサーバのソートでは、英数文字、かな、漢字で整序されました。それぞれのサーバの並べ替えに多少の違いがあるかもしれません。以上です。*******************************************************繰り返し警告します。サーバで直接cgiをテストすることは当方でテストしていますが、大変危険です。不具合の発生の責任は当方には一切ないことをおことわりします。*******************************************************
NXerさんまず始めに回答有難うございました。ボタンを押せば中間表示サブルーチンで表示できたりする方法ですが、私なりにいろいろ調べてみてみたのですが、お恥ずかしいながら、ちょっとよく解りません具体的に教えていただけないでしょうか?それと先日、カテゴリごとに表示が出来るように組み込んでいただいたのですが、どうのようにしたら下記のような事が可能になりますでしょうか?(したい事)セレクトフォームにて各カテゴリが選択でき、なおかつその横に表示ボタンをつけて表示ボタンをクリックすればそのカテゴリの表示が出来るという代物です。ようするにスポーツをセレクトフォームから選択し、表示ボタンをクリックすると表示できればOKです。私なりに以下のように考えたのですが。。。print "<form action='$script' method=POST>\n";for ($i = 0; $i < 10; $i++) { if (! $i) { print "<option>○政治・経済○<option>▲芸\能\(音楽/俳優/その他)▲<option>◆スポーツ◆<option>★趣味・流行★<option>■恋愛■<option>□IT関係□<option>◎ゲーム・漫画・アニメ◎<option>▼その他▼"; }else { print"<option>"; } }print "</select>\n";print "<input type=submit value=' 表\示\ ' class=btn></td></form>\n";初心者の為、検討違いな事をしているかもしれませんが。。。よろしくお願いします。
過去ログの例とよく似ていますが、これはテーマ一覧のページの行付近です。NXerです。>中間表示その1)ガイド方式です。現在のスクリプトに挿入します。-------------------------------161 &header;print "<A HREF=\"http://ひろたかさんサーバ/index.htm\">|トップ|</A>\n";print "<A HREF=\"http:// ひろたかさんサーバ/anq/anq_revisit.cgi\">再訪問|</A>\n";print "<A HREF=\"http:// ひろたかさんサーバ/anq/view.htm\">使い方|</A>\n";print "<br><br>\n";--------------------------------------------------改造はこれだけ。その2)新しいcgiファイルの作成、今のものを次のように改造します。これまでのスクリプトは結果非表示のスクリプトです。その旗 $scoreview=0を1にします。---------------------------------#得票率表示/非表示フラッグ ゼロは非表示$scoreview=1;-------------------------------134 elsif ($in{'data'}) {$scoreview=1; &html; }------------------------------------そして-------------------# このファイルの名前$script = "anq_revisit.cgi";------------------------------と変更して、その名前で保存します。新しい全表示用になったcgiファイルanq_revisit.cgi を転送、パーミッション設定をします。利用者運用あんQの163で、このファイル(再訪用)にリンクを張りました。利用者用投票前非表示の、上でガイドをつけたあんQを起動して、「再訪問」をクリックすればおそらく、新規あんQが開きます。cgiでは、見かけは1本ですが、複数のスクリプトの集合体になることがしばしばあります。ファイル名で内容がわかるようにしたり、またコメント文を付けておく必要があります。専用ボタンを作る時は、そのボタンにリンクを張ります。いずれにしても利用者に、締め切り前の結果を返すものです。締め切り後は、すべて表示されます。過去ログにまわされた別件です。最新の書き込みへの回答になります。□ ひろたか [2006年11月29日21時01分] >セレクトボタンですが、ラジオボタンのことと思いますが、リストボックスが select option 機能があることから、こちらでサンプルを作成してみました。作ってみると、カテゴリ選択に意味が加わり画面全体に動的な要素が加味される感じです。初期設定--------------過去ログと同じ#カテゴリflag$ctgry="なし";#---------------- 初期設定ここまで ----------------#--------------------------------------------過去ログと同じ130 if ($in{'mode'} eq 'politics') {$ctgry="政治";}if ($in{'mode'} eq 'entertainment') {$ctgry="芸能\";}if ($in{'mode'} eq 'hobbies') {$ctgry="趣味";}if ($in{'mode'} eq 'others') {$ctgry="その他";}#-------------------------------------if ($in{'mode'} eq 'reg' || $in{'mode'} eq 'adreg' || $in{'mode'} eq 'change') { ®ist; }-----------------------------過去ログと同じ191 else { $inf = "終了";} }#----------------------カテゴリ別一覧表示1行 eqは文字列等号if ($mail eq $ctgry){&subject_view;}#-----------------------------カテゴリ選択なし初期一覧elsif ($ctgry eq "なし"){ if (($page_view>=1 && $count<=5)||($first_view>=1 && $count<=5)){&subject_view;} elsif ($page_view1>=1 && ($count>=6 && $count<=10)) {&subject_view;} elsif ($page_view2>=1 && $count>10) {&subject_view;} }----------------上挿入}#この括弧は元 print "</table>\n</blockquote>\n";-------------------------------------------222 if ($open_mode) { print "■<a href='$script?mode=first_page'>始めの5つのテーマを見る</a>\n"; }#--------------------------挿入print "<form action='$script' method=POST>\n";print "<table class=plain><tr><td class=plain>\n";print "<select size='4' name='mode'>\n";print "<option value='politics'>政治</option>\n";print "<option value='entertainment'>芸能\</option>>\n";print "<option value='hobbies'>趣味</option>\n";print "<option value='others'>その他</option>\n";print "</td></tr></table><br>\n";print "<table><tr><td class=plain><input type='submit' value='カテゴリ選択'></td>\n";print "<td class=plain><input type='reset' value=' リセット ' ></td></form></table>\n";#---------------------------------------print "</blockquote>\n";©--------------------------2行元画面スペースの都合で、2行にすれば、select size=2政治、芸能が表示され残りは、スライドバーを下げてみます。これからカテゴリが増える場合にも画面構成は初期値の行数で収まることから、リストボックスは優れタグです。------------------------------------------print "<select size='4' name='mode'>\n";-------------------------------------------ラジオボタンの場合print "<select size='4' name='mode'>\n";などをprint "<input type='radio' name='mode' value='politics'>政治<br>のようにすれば多分上のスクリプトで動作すると思われます。name属性でcgiにmode=politicsを引き渡します。ラジオボタンの欠点は、増加したとき、下に長く伸びていくことです。いろんなアイディアをお試しください。その都度ファイル名を変えて保存すれば、後に別のソフトにサブルーチンとして利用できます。しかし、今の汗(perspiration)が、きらりと光るアイディア(inspiration)になることを、当方は残念ながら、まったく保証できません。なお、htmlのタグなどは、次の参考文献や参考サイトを利用しています。当方の考えのほとんどすべては、すえぽんサイトやそれらから学んだものです。すえぽんさん、アンクさん、杜甫々さんに感謝申し上げます。1 アンク、ホームページ辞典、翔泳社、20012 杜甫々 『とほほのWWW入門』<http://www.tohoho-web.com/>