投票功能在日常上網中隨處可見,特別是在bbs中。它不但直觀的反映了網友對某種事物的看法,而且能很好的聚集人氣。
那麼就開始對投票這個功能模組進行設計。
第一讓我們看看流程圖:
這是個很簡單的應用系統就是負責寫入資料庫在顯示出來給使用者
現在開始實現這個功能:
首先我在mysql資料庫中建立如下的表
這三個分別對已投票專案表,題目表,和使用者表。建立使用者表是為了防止重複投票的發生。
資料庫建立好玩 就開始code階段了。
在這之前看看讓我先看看投票的流程
知道流程後那麼code就很快了。就是完成資料庫的儲存而已。再這裡要加入個處理程式 來計數。
關鍵**如下:
$sqlstr = "select * from votesubject where v_id = '$v_id'";
$res = db_query($sqlstr);
$sqlstr2 = "select * from vote where v_id = '$v_id'";
$res2 = db_query($sqlstr2);
$sqlstr = "update vote set t_count = t_count+1 where t_id = '$t_id'";
db_query($sqlstr);
效果圖好了 這個完成後就是怎麼顯示出來給使用者看結果了。
那麼我來看看這個顯示的過程
根據這個流程code
關鍵**如下
$sqlsum = "select sum(t_count) from vote where v_id = '$v_id'";
$res = db_query($sqlsum);
$row = db_fetch_array($res);
$countall = $row[0];
$sqlstr = "select * from vote where v_id = '$v_id'";
$res = db_query($sqlstr);
$per = floor(($row['t_count']/$countall)*100) . "%";
echo
"";echo
"" . $row['t_id'] . "-";
echo
"" . $row['t_name'] . "";
echo
"在這裡基本就完成了 等等還有點 那就是重複投票的問題
那麼加上了檢查程式來檢查使用者投票
讓我來看看這個的工作流程
這個就很好寫了
$time_limit = 30;
$voter_ip = $remote_addr;
$sqlstr = "select * from voteuser where v_id = '$v_id' and u_ip = '$voter_ip'";
$sqlstr .= "and u_time + interval $time_limit minute > now()";
$res = db_query($sqlstr);
if (db_num_rows($res)>0)
else
?>
頁面中查詢模組的設計與實現思路
二 萬能查詢 三 便捷查詢 總結在做乙個物品的展示管理頁面,想把增刪改查都放到頁面中,用axure畫了乙個頁面,比較簡單,主要分為上下兩部分,上半部分是查詢模組,下半部分是 用來展示資料。新增按鈕單獨在頁面中,修改按鈕在表的每一行資料後面,刪除按鈕在 下面,將 中的資料每一行設為可選,選擇後進行刪除...
模組與包的S設計
理論可見上文模組載入方案 這次 下如何設計 api 使用 js 模擬其他語言常見的模組 與包 的概念 模組化實踐 google doc 1.新增模組 通過 s.add 向執行環境新增模組,模組可以新增乙個簡單物件,或者乙個載入函式。簡單物件 s.add module1 載入函式 s.add modu...
模組設計與實現經驗總結 二
第乙個階段是明確模組的需求,能夠以詳細的功能規格說明書的方式 明確模組的功能需求,重點考慮模組要處理哪些例外和異常情況 盡自己最大努力把情況想全。例如對本模組對外提供的介面要詳細寫清楚,各種輸入引數情況下的行為是什麼,以及返回什麼值。對本模組要呼叫的外部介面,要寫明白本模組要求的響應是什麼,以及呼叫...