關於投票的程式,本文將會是最後一篇了。

 

搭配前三篇「投票區文章」,要學會它並不難!

沒看過這三篇的基礎,您(初學者)就不用費心了。

初學者還沒學會"走",就想"飛上天",......那並不容易。

按部就班,慢慢來吧

 

 

 

..............................................................................................................................................................................

本範例與完整說明,已經改寫成書本內的文章,

並集結出書,收錄 在「[新 書上市]ASP.NET專題實務II(下集):範例應用與4.0新功能

................................................................................................................................................................................

 

這是我在2001年寫好的作品,那時候還是ASP、JavaScript、HTML表單的時期,

我在2001年3月接手一個ASP網站,然後靠著自己一支一支程式慢慢讀程式碼來自修(因為之前的三個人,同時離職了)

幸好程式不難,我一個月後就開始寫新功能。

 

大約三個月後,寫出一些自己心裡會偷笑的小程式(但別人未必會覺得這是 "有水準" 的範例)

 

其中,有一個程式就是「ASP分頁」程式,可以做出前一頁、後一頁前十頁、後十頁的功能。

而且底下的頁數,會固定以「十頁」作一個區間,不會無限制地延伸下去,以免破壞版面。

 

 

截至目前為止,市面上沒有一本ASP的電腦書願意公開這個功能。

但很多網站都有這功能......(表示很多人會寫啊!但不公開?)

 

坊間的電腦書作者,願意公開的都是下面這種成果:

(頁數一旦太多,整個畫面醜到爆!)

 

我改寫成 ASP.NET版(採用DataSet)之後,目前放在書本裡面的 14-4節,而且有詳細解說。

但稍有一點小複雜,請見諒。

 

曾經有人建議我:把分頁寫成一個模組,讓大家直接呼叫引用.......(嗯!有空的話,我再來作啦)

不過 ASP.NET 3.5開始也推出了 DataPager控制項,上述的範例,似乎也沒啥價值了。

 

=========================================================================================

 

另外一個程式就是「自動化投票區」

那時候的網站,每一週要辦一次小投票。

每一週都要動手重寫,實在很煩。 後來我完成了一個很簡單的自動化投票區。流程如下:

 

第一,先在管理員的後台,自己設定題目。

      因為是單選題,所以題目不會太多。

     

 

 

第二、當你按下按鈕之後,這次投票就會寫進DB。

      這時候在網站的首頁上, User就會看見本週投票的「題目」與「選項」。

      程式會自動到DB裡面,抓取題目、選項名稱,自動組合到首頁上面。 是動態產生,不是寫死的。

      而且會自動關閉上一週的舊投票(User無法繼續投票了,於是就關閉囉)

     

 

 

第三、投票完成後,會立刻看見得票數與成果。

      根據上一篇文章([習題]ASP.NET的 簡易投票區 #3 -- 程式可以寫(改)得更好 )的建議,

      底下的長條圖,採用「得票率%」來作,不會有圖片太長,破壞畫面一事!

     

====================================================

 

因為共用同一個資料庫

所以歷年的投票記錄,隨時都可以打開來看!

第四、有一個「歷年投票回顧區」

     

 

全部的程式,只有四支。

所以上圖的歷史回顧區,點選任何一次投票,都會回到上上圖來展現(長條圖)

 

 

 

這個範例需要的基礎如下:

      這個程式並不難,只要您能參透本書 18.3節的範例,就能豁然開朗。 請看:

      程式的寫法完全一樣(底下有VB / C#兩種版本給您參考)。 參不透的話,就麻煩了。

      簡單的說,就是用「字串連接」的方式,來代替控制項的ID。以迴圈來處理之。

 

搭配前三篇「投票區文章」,要學會它並不難!

沒看過這三篇的基礎,您(初學者)就不用費心了。 初學者還沒學會"走",就想"飛上天",......那並不容易。

按部就班,慢慢來吧

 

 

當然,這個小範例是好多年前的作品了。

我不敢保證他 100%完美。

如果有機會的話,[出書計畫] ASP.NET範例集、問題集 (ASP.NET專題實務 /文魁出版 / 松崗出版,下集已經把這個範例完整收錄!,我會更詳細的解說它。

您就當這篇文章是「廣告文」吧~~

 

 

 

 

 

本範例與完整說明,已經改寫成書本內的文章,

並集結出書,收錄 在「[新 書上市]ASP.NET專題實務II(下集):範例應用與4.0新功能

 

=======================================================================

 

但以前資策會當講師時,很奇怪,這個範例沒幾個人聽得懂(兩三梯次以後,我上課就不用這個範例了,對初學者太難!)

幸好DB + 程式,安裝步驟很簡單,學生都能安裝起來使用。 直接裝起來,用得開心也不錯~

我是有點擔心:如果現場上課解說,學生聽懂的機會都不高了。 透過書本與文字,其實更不容易講清楚

 

這個範例的 Table設計如下圖:

沒什麼難的,一行記錄候選人名稱,一行記錄他的得票率。如此而已。

因為這個投票是單選、又要放在首頁上。不可能有太多選項的,這樣畫面會整個醜掉。

 

我向來不是小氣的人,程式碼在這邊,

希望對您有幫助:Vote.rar 可下載,內含 VB與 C#程式 。 2009/12/4更新。)

 

最後還是廣告一下,請各位多多支持這本書。

只有書本有銷路,我才有機會繼續出書。 感恩!

 

買本書,把基礎好好學起來,才會「有能力」快速吸收網路上的各種討論與免費範例!

這是相輔相成的。

 

=====================================================================

本範例與完整說明,已經改寫成書本內的文章,

並集結出書,收錄 在「[新 書上市]ASP.NET專題實務II(下集):範例應用與4.0新功能

=====================================================================

 

 

 

2011/5/9 補充:   從這個範例裡面,我們衍生出其他兩篇文章(範例),

自動化投票區、網路問卷、問卷調查,如何規劃與設計?#1(觀念篇)......考驗初學者能力的一門課
http://www.dotblogs.com.tw/mis2000lab/archive/2011/05/05/24244.aspx

自動化投票區、網路問卷、問卷調查,如何規劃與設計?#2 (程式篇)動態產生畫面與控制項
http://www.dotblogs.com.tw/mis2000lab/archive/2011/05/05/24269.aspx