-
涅魂
-
- 文章: 4463
- 註冊時間: 2004-01-04 11:17 am
- 來自: Taiwan
- 性別: 男生
由 涅魂 » 2006-03-12 12:55 am
- 代碼: 選擇全部
//===================================================== // 外掛名稱:工會投票系統 // 作者: 涅魂 // 創作時間:2006.02.03 // 最後修改時間:2006.03.03 //===================================================== ※v3版本工會投票系統請至此處安裝雖然提名為公會投票功能,但其實不只有自己的工會成員才能投票喔~ 另外,因為程式中有用到mbstring模組中的函式,所以請確認您的伺服器中有載入mbstring.dll模組 這看似簡單,其實非常重要,否則程式在處理字元時中文字體會變成亂碼... 範例圖片1(投票列表)範例圖片2(投票內容)範例圖片3(投票統計)新增資料表簡介 寫:wog_vote:
v_id 流水號 g_id 投票主辦工會 v_title 投票標題 v_name 投票發起人 v_text 發起原因 v_num 可投票數 v_lv 投票權限,1=工會內部成員,2=全體工會 v_date 投票舉辦日期 v_enddate 投票結束日期 v_record 投票玩家紀錄
wog_vote_list:
vl_id 流水號 v_id 投票主數據編號 vl_title 項目標題 vl_count 項目投票數
當投票過期30天以上時程式會自動將該筆投票以及相關項目自動刪除~ ##########開始安裝########## 在您的資料庫中執行下列SQL語法 寫:CREATE TABLE `wog_vote` ( `v_id` int(10) unsigned NOT NULL auto_increment, `g_id` int(10) unsigned NOT NULL default '0', `v_title` varchar(30) NOT NULL default '', `v_name` varchar(30) NOT NULL default 'N/A', `v_text` text NOT NULL, `v_num` tinyint(2) unsigned NOT NULL default '1', `v_lv` tinyint(1) unsigned NOT NULL default '1', `v_date` int(10) unsigned NOT NULL default '0', `v_enddate` int(10) unsigned NOT NULL default '0', `v_record` text NOT NULL, PRIMARY KEY (`v_id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ;
CREATE TABLE `wog_vote_list` ( `vl_id` int(10) unsigned NOT NULL auto_increment, `v_id` int(10) unsigned NOT NULL default '0', `vl_title` varchar(30) NOT NULL default '', `vl_count` int(10) unsigned NOT NULL default '0', PRIMARY KEY (`vl_id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ;
開啟檔案wog/wog.js 寫:Find - 代碼: 選擇全部
view_name.write('<tr><td><input type="button" value="佈告欄" onClick="parent.act_click(\'group\',\'book\')"> </td><td class=b1><--公會佈告欄<會員專用></td></tr>');
After Add - 代碼: 選擇全部
[color=red]view_name.write('<tr><td><input type="button" value="投票所" onClick="parent.vote()"></td><td class=b1><--觀看由工會所舉辦的投票活動</td></tr>');[/color]
Find - 代碼: 選擇全部
function group_book_view(temp)
Before Add - 代碼: 選擇全部
[color=red]function vote() { var view_name=parent.wog_view.document; message_cls(); view_name.write(temp_table1); view_name.write('<tr><td bgcolor=#4B689E colspan=2>工會投票所</td></tr>'); view_name.write('<tr><td><input type="button" value="顯示投票" onclick="parent.act_click(\'vote\',\'list\')"></td><td><input type="button" value="建立投票" onclick="parent.vote_create()"></td></tr>'); view_name.write(temp_table2); }
function vote_list(temp) { var view_name=parent.wog_view.document; message_cls(); view_name.write('<form action="wog_act.php" method="POST" target="mission">'); view_name.write(temp_table1); view_name.write('<tr bgcolor=#4B689E><td width=4%>選擇</td><td width=24%>投票主題</td><td width=10%>發起人</td><td width=10%>發起工會</td><td width=12%>投票量</td><td width=20%>開始時間</td><td width=20%>結束時間</td></tr>'); if(temp) { var s1=temp.split(";"); for(var li=0;li<s1.length;li++) { var s=s1[li].split(","); view_name.write('<tr><td><input type="radio" name="v_id" value="'+s[0]+'"></td><td>'+s[1]+'</td><td>'+s[2]+'</td><td>'+s[3]+'</td><td>'+s[6]+'</td><td>'+s[4]+'</td><td>'+s[5]+'</td></tr>'); } view_name.write('<tr><td colspan=7><input type="submit" value="閱讀"> <input type="button" value="刪除" onclick="parent.foot_trun(\'vote\',\'delete\',\'\',\'\',document.forms[0].v_id);"></td></tr>'); }else { view_name.write('<tr><td colspan=7>目前沒有任投票</td></tr>'); } view_name.write(temp_table2); view_name.write('<input type="hidden" name="f" value="vote">'); view_name.write('<input type="hidden" name="act" value="view">'); view_name.write('</form>'); }
function vote_view(temp,id,title,name,cause,num,begindate,enddate) { var view_name=parent.wog_view.document; message_cls(); view_name.write('<form action="wog_act.php" method="POST" target="mission">'); view_name.write(temp_table1); view_name.write('<tr><td colspan=3 bgcolor=#3B588E>'+title+'</td></tr>'); view_name.write('<tr><td bgcolor=#4B689E>發起人</td><td bgcolor=#4B689E>開始時間</td><td bgcolor=#4B689E>結束時間</td></tr>'); view_name.write('<tr><td width=30% height=32>'+name+'</td><td width=35%>'+begindate+'</td><td width=35%>'+enddate+'</td></tr>'); view_name.write('<tr><td colspan=3 bgcolor=#4B689E>投票原因</td></tr>'); view_name.write('<tr><td colspan=3><br>'+cause+'<br><br></td></tr>'); view_name.write('<tr><td colspan=3 bgcolor=#4B689E>投票項目</td></tr>'); view_name.write('<tr><td colspan=3>每人最多可投 <font color=yellow>'+num+'</font> 票<br><br>'); view_name.write('<table border=0 width=50% align=center>'); var s1=temp.split(";"); for(var li=0;li<s1.length;li++) { var s=s1[li].split(","); var button_type=(parseInt(num)>1)?"<input type=checkbox name=list[] value="+s[0]+">":"<input type=radio name=list value="+s[0]+">"; view_name.write('<tr><td width=5%>'+button_type+'</td><td style="text-align:left">'+s[1]+'</td></tr>'); } view_name.write('</table><br><br></td></tr>'); view_name.write('<tr><td colspan=3><input type=submit value="投票"> <input type="button" value="結果" onclick="parent.act_click(\'vote\',\'end_view\','+id+')"></td></tr>'); view_name.write(temp_table2); view_name.write('<input type="hidden" name="f" value="vote">'); view_name.write('<input type="hidden" name="act" value="add">'); view_name.write('<input type="hidden" name="v_id" value="'+id+'">'); view_name.write('</form>'); }
function vote_end_view(temp,title,tatal) { var view_name=parent.wog_view.document; message_cls(); view_name.write('<tr><td></td><td></td><td></td><td></td></tr>'); view_name.write(temp_table1); view_name.write('<tr><td colspan=4 bgcolor="#4B689E">投票結果</td></tr>'); view_name.write('<tr><td colspan=2 bgcolor="#3B588E">'+title+'</td><td colspan=2 bgcolor="#3B588E">總票數: '+tatal+' 票</td></tr>'); var s1=temp.split(";"); for(var li=0;li<s1.length;li++) { var s=s1[li].split(","); var per=(parseInt(s[1]) > 0)?Math.round((parseInt(s[1])/parseInt(tatal))*1000)/10:0; view_name.write('<tr><td width=45%>'+s[0]+'</td><td width=15% style="text-align:left"><img src='+img+'bar/bxg.gif border=0 width='+per+'% height=12></td><td width=20%>'+s[1]+' 人</td><td width=20%>'+per+'%</td></tr>'); } view_name.write(temp_table2); }
function vote_create() { var view_name=parent.wog_view.document; message_cls(); view_name.write('<form action="wog_act.php" method="POST" target="mission">'); view_name.write(temp_table1); view_name.write('<tr><td bgcolor=#4B689E colspan=2>建立新投票</td></tr>'); view_name.write('<tr><td>投票主題</td><td><input type="text" name="title" size=30 maxlength=30></td></tr>'); view_name.write('<tr><td valign="top">投票原因</td><td><textarea name="cause" cols=24 rows=6></textarea></td></tr>'); view_name.write('<tr><td valign="top">投票項目<br><非必要項目請留空></td><td>'); for(var a=1;a<=10;a++) { view_name.write('<input type="text" name="list'+a+'" size=30 maxlength=30><br>'); } view_name.write('</td></tr>'); view_name.write('<tr><td>投票數量</td><td>'); for(var a=1;a<=5;a++) { var check=(a==1)?"checked":""; view_name.write('<input type="radio" name="num" value="'+a+'" '+check+'>'+a+' 票 '); } view_name.write('</td></tr>'); view_name.write('<tr><td>投票權限</td><td><input type="radio" name="lv" value="1" checked>工會內部 <input type="radio" name="lv" value="2">全體工會</td></tr>'); view_name.write('<tr><td>投票時間</td><td><select name=date>'); for(var a=1;a<=30;a++) { view_name.write('<option value="'+a+'">'+a+' 天 '); } view_name.write('</select></td></tr>'); view_name.write('<tr><td colspan=2><input type="submit" value="建立"> <input type="reset" value="重寫"></td></tr>'); view_name.write(temp_table2); view_name.write('<input type="hidden" name="f" value="vote">'); view_name.write('<input type="hidden" name="act" value="create">'); view_name.write('</form>'); }[/color]
開啟檔案wog/wog_act.php 寫:Find - 代碼: 選擇全部
case "pet":
Before Add - 代碼: 選擇全部
[color=red] case "vote": include("./class/wog_act_vote.php"); $wog_act_class= new wog_act_vote; switch($_POST["act"]) { case "create": $wog_act_class->vote_create($HTTP_COOKIE_VARS["wog_cookie"]); break; case "list": $wog_act_class->vote_list($HTTP_COOKIE_VARS["wog_cookie"]); break; case "view": $wog_act_class->vote_view($HTTP_COOKIE_VARS["wog_cookie"]); break; case "end_view": $wog_act_class->vote_end_view($HTTP_COOKIE_VARS["wog_cookie"]); break; case "add": $wog_act_class->vote_add($HTTP_COOKIE_VARS["wog_cookie"]); break; case "delete": $wog_act_class->vote_delete($HTTP_COOKIE_VARS["wog_cookie"]); break; } break;[/color]
建立檔案wog/class/wog_act_vote.php 寫:- 代碼: 選擇全部
[color=red]<? class wog_act_vote{ function vote_create($user_id) { global $DB_site,$_POST; $p=$DB_site->query_first("SELECT a.p_name,a.p_g_id,b.g_adm_id1 FROM wog_player a,wog_group_main b WHERE a.p_id=$user_id AND b.g_id=a.p_g_id"); if($p["p_g_id"]==0) { alertWindowMsg("沒有所屬工會"); } if($p["g_adm_id1"] != $user_id) { alertWindowMsg("你沒有發起投票的權限"); } while(list($key,$value) = each($_POST)) { $_POST[$key]=mb_convert_encoding($_POST[$key],"BIG-5","auto"); } if(empty($_POST["title"])) { alertWindowMsg("沒有填入投票主題"); } if(empty($_POST["list1"]) || empty($_POST["list2"])) { alertWindowMsg("前兩項目必須填寫"); } $vote=$DB_site->query_first("SELECT v_id FROM wog_vote WHERE v_name='$p[p_name]' AND v_title='$_POST[title]'"); if($vote["v_id"]) { alertWindowMsg("無法建立相同的投票主題"); } if(empty($_POST["cause"])) { $_POST["cause"]="無"; } $enddate=time()+($_POST["date"]*60*60*24); $DB_site->query("INSERT INTO wog_vote(v_id,g_id,v_title,v_name,v_text,v_num,v_lv,v_date,v_enddate,v_record)VALUES('','$p[p_g_id]','".strip_tags($_POST[title])."','$p[p_name]','".strip_tags($_POST[cause])."','$_POST[num]','$_POST[lv]','".time()."','$enddate','')"); $vote=$DB_site->query_first("SELECT v_id FROM wog_vote WHERE v_title='$_POST[title]' AND v_name='$p[p_name]'"); for($li=1;$li<=10;$li++) { if(!empty($_POST["list".$li])) { $DB_site->query("INSERT wog_vote_list(vl_id,v_id,vl_title,vl_count)VALUES('','$vote[v_id]','".strip_tags($_POST["list".$li])."','0')"); } } showscript("parent.job_end(10);"); }
function vote_list($user_id) { global $DB_site; $result=$DB_site->query("SELECT v_id FROM wog_vote WHERE v_enddate<".time()."-60*60*24*30"); if($vote=$DB_site->fetch_array($result)) { $DB_site->query("DELETE FROM wog_vote WHERE v_id=$vote[v_id]"); $DB_site->query("DELETE FROM wog_vote_list WHERE v_id=$vote[v_id]"); } $DB_site->free_result($result); $p=$DB_site->query_first("SELECT p_g_id FROM wog_player WHERE p_id=$user_id"); $s=""; $result=$DB_site->query("SELECT a.v_id,a.v_title,a.v_name,a.v_date,a.v_enddate,b.g_name FROM wog_vote a,wog_group_main b WHERE (a.g_id=$p[p_g_id] OR v_lv=2) AND b.g_id=a.g_id ORDER BY a.v_enddate DESC"); while($vote=$DB_site->fetch_array($result)) { $count=$DB_site->query_first("SELECT sum(vl_count) AS sum FROM wog_vote_list WHERE v_id=$vote[v_id]"); $enddate=(time()>$vote["v_enddate"])?"<font color=red>".date("y-m-d h:i:s",$vote["v_enddate"])."</font>":"<font color=yellow>".date("y-m-d h:i:s",$vote["v_enddate"])."</font>"; $s.=";".$vote["v_id"].",".$vote["v_title"].",".$vote["v_name"].",".$vote["g_name"].",".date("y-m-d h:i:s",$vote["v_date"]).",".$enddate.",".$count["sum"]; } $s=substr($s,1); showscript("parent.vote_list('$s');"); }
function vote_view($user_id) { global $DB_site,$_POST; if(empty($_POST["v_id"]) || !is_numeric($_POST["v_id"])) { alertWindowMsg("沒有選擇投票主題"); } $p=$DB_site->query_first("SELECT a.p_g_id,b.v_id,b.g_id,b.v_title,b.v_name,b.v_text,b.v_num,b.v_lv,b.v_date,b.v_enddate FROM wog_player a,wog_vote b WHERE p_id=$user_id AND b.v_id='$_POST[v_id]'"); if($p["p_g_id"] != $p["g_id"] && $p["v_lv"] != 2) { alertWindowMsg("你沒有參與這個投票的權限"); } $s=""; $result=$DB_site->query("SELECT vl_id,vl_title FROM wog_vote_list WHERE v_id=$p[v_id] ORDER BY vl_id ASC"); while($list=$DB_site->fetch_array($result)) { $s.=";".$list["vl_id"].",".$list["vl_title"]; } $s=substr($s,1); $vote["v_text"]=str_replace("\r\n","<br>",$p["v_text"]); showscript("parent.vote_view('$s','$p[v_id]','$p[v_title]','$p[v_name]','$p[v_text]','$p[v_num]','".date("Y-m-d h:i:s",$p["v_date"])."','".date("Y-m-d h:i:s",$p["v_enddate"])."');"); }
function vote_end_view($user_id) { global $DB_site,$_POST; $vote=$DB_site->query_first("SELECT v_title FROM wog_vote WHERE v_id=$_POST[temp_id]"); $countall=0; $s=""; $result=$DB_site->query("SELECT vl_title,vl_count FROM wog_vote_list WHERE v_id=".$_POST["temp_id"]." ORDER BY vl_id ASC"); while($list=$DB_site->fetch_array($result)) { $countall+=Intval($list["vl_count"]); $s.=";".$list["vl_title"].",".$list["vl_count"]; } $s=substr($s,1); showscript("parent.vote_end_view('$s','$vote[v_title]',$countall);"); }
function vote_add($user_id) { global $DB_site,$_POST; if(empty($_POST["list"])) { alertWindowMsg("沒有選擇投票項目"); } $p=$DB_site->query_first("SELECT a.p_g_id,b.g_id as v_g_id,b.v_num,b.v_lv,b.v_record,b.v_enddate FROM wog_player a,wog_vote b WHERE a.p_id=$user_id AND b.v_id=$_POST[v_id]"); if($p["v_enddate"] < time()) { alertWindowMsg("投票已過期"); } if($p["p_g_id"] != $p["v_g_id"] && $p["v_lv"] ==1) { alertWindowMsg("你沒有參與這個投票的權限"); } if($p["v_record"] != "") { $record=@explode(",",$p["v_record"]); if(array_search($user_id,$record) !== false) { alertWindowMsg("您已投過此篇投票"); } } if($p["v_num"] < count($_POST["list"])) { alertWindowMsg("超過限定可投票數"); } $p["v_record"]=(empty($p["v_record"]))?$user_id:$p["v_record"].",".$user_id; $DB_site->query("UPDATE wog_vote SET v_record='$p[v_record]' WHERE v_id=$_POST[v_id]"); if($p["v_num"] > 1) { for($li=0;$li < count($_POST["list"]);$li++) { $DB_site->query("UPDATE wog_vote_list SET vl_count=vl_count+1 WHERE vl_id='".$_POST["list"][$li]."'"); } }else { $DB_site->query("UPDATE wog_vote_list SET vl_count=vl_count+1 WHERE vl_id='".$_POST["list"]."'"); } showscript("parent.job_end(15);"); }
function vote_delete($user_id) { global $DB_site,$_POST; $p=$DB_site->query_first("SELECT a.p_g_id,b.g_id,b.g_adm_id1 FROM wog_player a,wog_group_main b,wog_vote c WHERE a.p_id=$user_id AND c.v_id='$_POST[temp_id2]' AND b.g_id=c.g_id"); if(!isset($p) || empty($p)) { alertWindowMsg("沒有所屬工會"); } if($p["g_adm_id1"] != $user_id || $p["p_g_id"] != $p["g_id"]) { alertWindowMsg("非該工會會長無法刪除投票"); } $DB_site->query("DELETE FROM wog_vote WHERE v_id=$_POST[temp_id2]"); $DB_site->query("DELETE FROM wog_vote_list WHERE v_id=$_POST[temp_id2]"); showscript("parent.job_end(1);"); } } ?>[/color]
完畢~有問題請提出。
最後由 涅魂 於 2007-04-08 3:02 pm 編輯,總共編輯了 2 次。
-
想不通
-
- 文章: 185
- 註冊時間: 2005-11-06 2:37 pm
由 想不通 » 2006-03-12 1:39 pm
請問這個有什麼用途???
-
lts
-
- 文章: 126
- 註冊時間: 2005-04-23 9:51 am
- 來自: 緣份
由 lts » 2006-03-12 2:04 pm
-
涅魂
-
- 文章: 4463
- 註冊時間: 2004-01-04 11:17 am
- 來自: Taiwan
- 性別: 男生
由 涅魂 » 2007-04-08 3:01 pm
- 代碼: 選擇全部
//===================================================== // 外掛名稱:工會投票系統 For WOGV3 // 作者: 涅魂 // 創作時間:2006.02.03 // 最後修改時間:2006.04.08 //=====================================================
更新至v3,更新內容如下 - 不需要搭配mb_string.dll模組及可使用
- 建立新投票的表單配置更新,並加入[新增項目]按鈕以達到動態新增項目的效果
- 顯示投票內容的配置更新
- 顯示投票頁面追加[投票結果]按鈕,並將[閱讀]、[刪除]按鈕改成[閱讀投票]、[刪除投票]
- 顯示投票結果頁面追加[顯示投票]按鈕以顯示其他投票
安裝前請先安裝下列文章內的form_send()函式至wog.js [分享]解決表單亂碼問題[hr] 舊版升至新版因為這次的改版內容較細微,若列出詳細修改方式可能會讓修改變得較為複雜 因此僅列出wog.js的修改,wog_act_vote.php請使用下方提供的下載點下載後覆蓋,若有不便之處請見諒 開啟檔案wog.js 寫:尋找 - 代碼: 選擇全部
function vote() { .......... }
改為 - 代碼: 選擇全部
function vote() { var view_name=parent.wog_view.document; message_cls(); view_name.write(temp_table1); view_name.write('<tr><td bgcolor=#4B689E colspan=2>工會投票所</td></tr>'); view_name.write('<tr><td><input type="button" value="[color=red]顯示投票[/color]" onclick="parent.act_click(\'vote\',\'list\')"></td><td><input type="button" value="[color=red]建立投票[/color]" onclick="parent.vote_create()"></td></tr>'); view_name.write(temp_table2); }
尋找 - 代碼: 選擇全部
function vote_list(temp) { .......... }
改為 - 代碼: 選擇全部
function vote_list(temp) { var view_name=parent.wog_view.document; message_cls(); view_name.write('<form action="wog_act.php" method="POST" target="mission">'); view_name.write(temp_table1); view_name.write('<tr bgcolor=#4B689E><td width=4%>選擇</td><td width=24%>投票主題</td><td width=10%>發起人</td><td width=10%>發起工會</td><td width=12%>投票量</td><td width=20%>開始時間</td><td width=20%>結束時間</td></tr>'); if(temp) { var s1=temp.split(";"); for(var li=0;li<s1.length;li++) { var s=s1[li].split(","); view_name.write('<tr><td><input type="radio" name="v_id" value="'+s[0]+'"></td><td>'+s[1]+'</td><td>'+s[2]+'</td><td>'+s[3]+'</td><td>'+s[6]+'</td><td>'+s[4]+'</td><td>'+s[5]+'</td></tr>'); } view_name.write('<tr><td colspan=7><input type="submit" value="[color=red]閱讀內容[/color]"> [color=red]<input type="button" value="投票結果" onclick="parent.foot_trun(\'vote\',\'end_view\',\'\',\'\',document.forms[0].v_id);">[/color] <input type="button" value="[color=red]刪除投票[/color]" onclick="parent.foot_trun(\'vote\',\'delete\',\'\',\'\',document.forms[0].v_id);"></td></tr>'); }else { view_name.write('<tr><td colspan=7>目前沒有任投票</td></tr>'); } view_name.write(temp_table2); view_name.write('<input type="hidden" name="f" value="vote">'); view_name.write('<input type="hidden" name="act" value="view">'); view_name.write('</form>'); }
尋找 - 代碼: 選擇全部
function vote_view(temp,id,title,name,cause,num,begindate,enddate) { .......... }
改為 - 代碼: 選擇全部
function vote_view(temp,id,title,name,cause,num,begindate,enddate) { var view_name=parent.wog_view.document; message_cls(); view_name.write('<form action="wog_act.php" method="POST" target="mission">'); view_name.write(temp_table1); [color=red]view_name.write('<tr><td colspan="2" bgcolor="#3B588E">'+title+'</td></tr>'); view_name.write('<tr><td width="25%" bgcolor="#4B689E">發起人</td><td width="75%" bgcolor="#4B689E">投票原因</td>'); view_name.write('<tr><td height="32">'+name+'</td><td valign="top" rowspan="5">'+cause+'</td>'); view_name.write('<tr><td bgcolor="#4B689E">開始時間</td></tr>'); view_name.write('<tr><td height="32">'+begindate+'</td></tr>'); view_name.write('<tr><td bgcolor="#4B689E">結束時間</td></tr>'); view_name.write('<tr><td height="32">'+enddate+'</td></tr>'); view_name.write('<tr><td colspan="2" bgcolor="#4B689E">投票項目</td></tr>'); view_name.write('<tr><td colspan="2">每人最多可投 <font color="yellow">'+num+'</font> 票<br><br>'); view_name.write('<table border="0" width="50%" align=center>'); var s1=temp.split(";"); for(var li=0;li<s1.length;li++) { var s=s1[li].split(","); var button_type=(parseInt(num)>1)?'<input type="checkbox" name="list[]" value='+s[0]+'>':'<input type="radio" name="list" value='+s[0]+'>'; view_name.write('<tr><td width="5%">'+button_type+'</td><td style="text-align:left">'+s[1]+'</td></tr>'); } view_name.write('</table><br><br></td></tr>'); view_name.write('<tr><td colspan="3"><input type="submit" value="完成投票"> <input type="button" value="投票結果" onclick="parent.act_click(\'vote\',\'end_view\','+id+')"></td></tr>'); [/color] view_name.write(temp_table2); view_name.write('<input type="hidden" name="f" value="vote">'); view_name.write('<input type="hidden" name="act" value="add">'); view_name.write('<input type="hidden" name="v_id" value="'+id+'">'); view_name.write('</form>'); }
尋找 - 代碼: 選擇全部
function vote_end_view(temp,title,tatal) { .......... }
改為 - 代碼: 選擇全部
function vote_end_view(temp,title,tatal) { var view_name=parent.wog_view.document; message_cls(); view_name.write('<tr><td></td><td></td><td></td><td></td></tr>'); view_name.write(temp_table1); view_name.write('<tr><td colspan=4 bgcolor="#4B689E">投票結果</td></tr>'); view_name.write('<tr><td colspan=2 bgcolor="#3B588E">'+title+'</td><td colspan=2 bgcolor="#3B588E">總票數: '+tatal+' 票</td></tr>'); var s1=temp.split(";"); for(var li=0;li<s1.length;li++) { var s=s1[li].split(","); var per=(parseInt(s[1]) > 0)?Math.round((parseInt(s[1])/parseInt(tatal))*1000)/10:0; view_name.write('<tr><td width=45%>'+s[0]+'</td><td width=15% style="text-align:left"><img src='+img+'bar/bxg.gif border=0 width='+per+'% height=12></td><td width=20%>'+s[1]+' 人</td><td width=20%>'+per+'%</td></tr>'); } [color=red]view_name.write('<tr><td colspan=4 bgcolor="#4B689E"><input type="button" value="顯示投票" onclick="parent.act_click(\'vote\',\'list\')"></td></tr>'); [/color] view_name.write(temp_table2); }
尋找 - 代碼: 選擇全部
function vote_create() { .......... }
改為 - 代碼: 選擇全部
[color=red]function vote_create() { var view_name=parent.wog_view.document; message_cls(); view_name.write('<form action="wog_act.php" method="POST" target="mission" name="f1">'); view_name.write(temp_table1); view_name.write('<tr><td bgcolor="#4B689E" colspan="4">建立新投票</td></tr>'); view_name.write('<tr><td valign="top" width="15%">投票主題</td><td valign="top" width="35%"><input type="text" name="title" size=30 maxlength=30></td><td width="15%" valign="top" rowspan="2">投票項目</td><td width="35%" rowspan="2"><div id="list_span">'); for(var a=1;a<=5;a++) { view_name.write('<input type="text" name="list['+a+']" size=30 maxlength=30><br>'); } view_name.write('</div><input type="button" name="list_add" value="追加項目" onclick="parent.vote_list_add(document.f1)"></td></tr>'); view_name.write('<tr><td valign="top">投票原因</td><td valign="top"><textarea name="cause" cols=24 rows=6></textarea></td>'); view_name.write('<tr><td valign="top" rowspan="2">可投票數</td><td rowspan="2">'); for(var a=1;a<=5;a++) { var check=(a==1)?"checked":""; view_name.write('<input type="radio" name="num" value="'+a+'" '+check+'>'+a+' 票<br> '); } view_name.write('</td><td valign="top">投票權限</td><td><input type="radio" name="lv" value="1" checked>工會內部 <br><input type="radio" name="lv" value="2">全體工會</td></tr>'); view_name.write('<tr><td valign="top">投票時間</td><td><select name=date>'); for(var a=1;a<=30;a++) { view_name.write('<option value="'+a+'">'+a+' 天 '); } view_name.write('</select></td></tr>'); view_name.write('<tr><td colspan="4"><input type="button" value="建立" onclick="parent.form_send(document.f1)"> <input type="reset" value="重寫"></td></tr>'); view_name.write(temp_table2); view_name.write('<input type="hidden" name="f" value="vote">'); view_name.write('<input type="hidden" name="act" value="create">'); view_name.write('</form>'); } function vote_list_add(frm) { var f=parent.wog_view.document; var getInput=frm.getElementsByTagName('input'); var list=new Array(); for(var i=0;i < getInput.length;i++) { if((getInput[i].name).substr(0,4) == "list") { list.push(getInput[i]); } } if(list.length > 10) { f.f1.list_add.disabled=true; return false; } f.getElementById('list_span').innerHTML+='<input type="text" name="list['+list.length+']" size=30 maxlength=30><br>'; }[/color]
[hr] 初次安裝請下載wog_act_vote.php並解壓縮後將檔案放至於[wog]資料夾內的[class]資料夾之下 wog_act_vote.php 寫:檔案名稱:wog_act_vote.php 壓縮格式:zip , rar 壓縮大小:1.52KB , 1.87KB 原始大小:6.22KB 下載: ZIP格式 RAR格式
在您的資料庫中執行下列SQL語法 寫:- 代碼: 選擇全部
CREATE TABLE `wog_vote` ( `v_id` int(10) unsigned NOT NULL auto_increment, `g_id` int(10) unsigned NOT NULL default '0', `v_title` varchar(30) NOT NULL default '', `v_name` varchar(30) NOT NULL default 'N/A', `v_text` text NOT NULL, `v_num` tinyint(2) unsigned NOT NULL default '1', `v_lv` tinyint(1) unsigned NOT NULL default '1', `v_date` int(10) unsigned NOT NULL default '0', `v_enddate` int(10) unsigned NOT NULL default '0', `v_record` text NOT NULL, PRIMARY KEY (`v_id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ;
CREATE TABLE `wog_vote_list` ( `vl_id` int(10) unsigned NOT NULL auto_increment, `v_id` int(10) unsigned NOT NULL default '0', `vl_title` varchar(30) NOT NULL default '', `vl_count` int(10) unsigned NOT NULL default '0', PRIMARY KEY (`vl_id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ;
開啟檔案wog/wog.js 寫:尋找 - 代碼: 選擇全部
function group_book_view(temp)
上方,加上 - 代碼: 選擇全部
function vote() { var view_name=parent.wog_view.document; message_cls(); view_name.write(temp_table1); view_name.write('<tr><td bgcolor=#4B689E colspan=2>工會投票所</td></tr>'); view_name.write('<tr><td><input type="button" value="顯示投票" onclick="parent.act_click(\'vote\',\'list\')"></td><td><input type="button" value="建立投票" onclick="parent.vote_create()"></td></tr>'); view_name.write(temp_table2); }
function vote_list(temp) { var view_name=parent.wog_view.document; message_cls(); view_name.write('<form action="wog_act.php" method="POST" target="mission">'); view_name.write(temp_table1); view_name.write('<tr bgcolor=#4B689E><td width=4%>選擇</td><td width=24%>投票主題</td><td width=10%>發起人</td><td width=10%>發起工會</td><td width=12%>投票量</td><td width=20%>開始時間</td><td width=20%>結束時間</td></tr>'); if(temp) { var s1=temp.split(";"); for(var li=0;li<s1.length;li++) { var s=s1[li].split(","); view_name.write('<tr><td><input type="radio" name="v_id" value="'+s[0]+'"></td><td>'+s[1]+'</td><td>'+s[2]+'</td><td>'+s[3]+'</td><td>'+s[6]+'</td><td>'+s[4]+'</td><td>'+s[5]+'</td></tr>'); } view_name.write('<tr><td colspan=7><input type="submit" value="閱讀內容"> <input type="button" value="投票結果" onclick="parent.foot_trun(\'vote\',\'end_view\',\'\',\'\',document.forms[0].v_id);"> <input type="button" value="刪除投票" onclick="parent.foot_trun(\'vote\',\'delete\',\'\',\'\',document.forms[0].v_id);"></td></tr>'); }else { view_name.write('<tr><td colspan=7>目前沒有任投票</td></tr>'); } view_name.write(temp_table2); view_name.write('<input type="hidden" name="f" value="vote">'); view_name.write('<input type="hidden" name="act" value="view">'); view_name.write('</form>'); }
function vote_view(temp,id,title,name,cause,num,begindate,enddate) { var view_name=parent.wog_view.document; message_cls(); view_name.write('<form action="wog_act.php" method="POST" target="mission">'); view_name.write(temp_table1); view_name.write('<tr><td colspan="2" bgcolor="#3B588E">'+title+'</td></tr>'); view_name.write('<tr><td width="25%" bgcolor="#4B689E">發起人</td><td width="75%" bgcolor="#4B689E">投票原因</td>'); view_name.write('<tr><td height="32">'+name+'</td><td valign="top" rowspan="5">'+cause+'</td>'); view_name.write('<tr><td bgcolor="#4B689E">開始時間</td></tr>'); view_name.write('<tr><td height="32">'+begindate+'</td></tr>'); view_name.write('<tr><td bgcolor="#4B689E">結束時間</td></tr>'); view_name.write('<tr><td height="32">'+enddate+'</td></tr>'); view_name.write('<tr><td colspan="2" bgcolor="#4B689E">投票項目</td></tr>'); view_name.write('<tr><td colspan="2">每人最多可投 <font color="yellow">'+num+'</font> 票<br><br>'); view_name.write('<table border="0" width="50%" align=center>'); var s1=temp.split(";"); for(var li=0;li<s1.length;li++) { var s=s1[li].split(","); var button_type=(parseInt(num)>1)?'<input type="checkbox" name="list[]" value='+s[0]+'>':'<input type="radio" name="list" value='+s[0]+'>'; view_name.write('<tr><td width="5%">'+button_type+'</td><td style="text-align:left">'+s[1]+'</td></tr>'); } view_name.write('</table><br><br></td></tr>'); view_name.write('<tr><td colspan="3"><input type="submit" value="完成投票"> <input type="button" value="投票結果" onclick="parent.act_click(\'vote\',\'end_view\','+id+')"></td></tr>'); view_name.write(temp_table2); view_name.write('<input type="hidden" name="f" value="vote">'); view_name.write('<input type="hidden" name="act" value="add">'); view_name.write('<input type="hidden" name="v_id" value="'+id+'">'); view_name.write('</form>'); }
function vote_end_view(temp,title,tatal) { var view_name=parent.wog_view.document; message_cls(); view_name.write('<tr><td></td><td></td><td></td><td></td></tr>'); view_name.write(temp_table1); view_name.write('<tr><td colspan=4 bgcolor="#4B689E">投票結果</td></tr>'); view_name.write('<tr><td colspan=2 bgcolor="#3B588E">'+title+'</td><td colspan=2 bgcolor="#3B588E">總票數: '+tatal+' 票</td></tr>'); var s1=temp.split(";"); for(var li=0;li<s1.length;li++) { var s=s1[li].split(","); var per=(parseInt(s[1]) > 0)?Math.round((parseInt(s[1])/parseInt(tatal))*1000)/10:0; view_name.write('<tr><td width=45%>'+s[0]+'</td><td width=15% style="text-align:left"><img src='+img+'bar/bxg.gif border=0 width='+per+'% height=12></td><td width=20%>'+s[1]+' 人</td><td width=20%>'+per+'%</td></tr>'); } view_name.write('<tr><td colspan=4 bgcolor="#4B689E"><input type="button" value="顯示投票" onclick="parent.act_click(\'vote\',\'list\')"></td></tr>'); view_name.write(temp_table2); }
function vote_create() { var view_name=parent.wog_view.document; message_cls(); view_name.write('<form action="wog_act.php" method="POST" target="mission" name="f1">'); view_name.write(temp_table1); view_name.write('<tr><td bgcolor="#4B689E" colspan="4">建立新投票</td></tr>'); view_name.write('<tr><td valign="top" width="15%">投票主題</td><td valign="top" width="35%"><input type="text" name="title" size=30 maxlength=30></td><td width="15%" valign="top" rowspan="2">投票項目</td><td width="35%" rowspan="2"><div id="list_span">'); for(var a=1;a<=5;a++) { view_name.write('<input type="text" name="list['+a+']" size=30 maxlength=30><br>'); } view_name.write('</div><input type="button" name="list_add" value="追加項目" onclick="parent.vote_list_add(document.f1)"></td></tr>'); view_name.write('<tr><td valign="top">投票原因</td><td valign="top"><textarea name="cause" cols=24 rows=6></textarea></td>'); view_name.write('<tr><td valign="top" rowspan="2">可投票數</td><td rowspan="2">'); for(var a=1;a<=5;a++) { var check=(a==1)?"checked":""; view_name.write('<input type="radio" name="num" value="'+a+'" '+check+'>'+a+' 票<br> '); } view_name.write('</td><td valign="top">投票權限</td><td><input type="radio" name="lv" value="1" checked>工會內部 <br><input type="radio" name="lv" value="2">全體工會</td></tr>'); view_name.write('<tr><td valign="top">投票時間</td><td><select name=date>'); for(var a=1;a<=30;a++) { view_name.write('<option value="'+a+'">'+a+' 天 '); } view_name.write('</select></td></tr>'); view_name.write('<tr><td colspan="4"><input type="button" value="建立" onclick="parent.form_send(document.f1)"> <input type="reset" value="重寫"></td></tr>'); view_name.write(temp_table2); view_name.write('<input type="hidden" name="f" value="vote">'); view_name.write('<input type="hidden" name="act" value="create">'); view_name.write('</form>'); } function vote_list_add(frm) { var f=parent.wog_view.document; var getInput=frm.getElementsByTagName('input'); var list=new Array(); for(var i=0;i < getInput.length;i++) { if((getInput[i].name).substr(0,4) == "list") { list.push(getInput[i]); } } if(list.length > 10) { f.f1.list_add.disabled=true; return false; } f.getElementById('list_span').innerHTML+='<input type="text" name="list['+list.length+']" size=30 maxlength=30><br>'; }
開啟檔案wog/wog_act.php 寫:尋找 - 代碼: 選擇全部
case "pet":
下方,加上 - 代碼: 選擇全部
case "vote": include("./class/wog_act_vote.php"); $wog_act_class= new wog_act_vote; switch($_POST["act"]) { case "create": $wog_act_class->vote_create($HTTP_COOKIE_VARS["wog_cookie"]); break; case "list": $wog_act_class->vote_list($HTTP_COOKIE_VARS["wog_cookie"]); break; case "view": $wog_act_class->vote_view($HTTP_COOKIE_VARS["wog_cookie"]); break; case "end_view": $wog_act_class->vote_end_view($HTTP_COOKIE_VARS["wog_cookie"]); break; case "add": $wog_act_class->vote_add($HTTP_COOKIE_VARS["wog_cookie"]); break; case "delete": $wog_act_class->vote_delete($HTTP_COOKIE_VARS["wog_cookie"]); break; } break;
儲存、關閉所有檔案
完畢,有任何問題歡迎指教
|