該工具可就一些主題對訪問者進行詢問,頁面上所有的字(除了按紐上的),全部由數據庫讀出,每個問卷的答案多少隨便增減,也很方便查閱,關鍵代碼如下,如果喜歡的朋友點連接下載全部源文件http://www.cnblogs.com/files/thcjp/survey.rar
1//第一步把調查標題和歡迎詞查詢出來
2 datatable dt=db.fill("select name,instruc from survey where id="+sid+"");//把數據從數據庫檢索到本地表中來
3 title.text=dt.rows[0]["name"].tostring();//將標題文本設置為本地表中的第一列(如果不喜歡這里是0,那你設成1嘛,我不負責哈,cpu會爆炸的),列名字為name的值
4 cw.text=dt.rows[0]["instruc"].tostring();//這是用戶第一次進來顯示的字
5
6 //第二步有點復雜,各位看官用心看了,前面我們不是放了一個空的panel控件嘛,下面要做的就是把所有的問題給查詢出來,并放到所有需要的控件中,然后再把控件給放到panel里面,這也是這個例題的關鍵所在
7 datatable qdt=db.fill("select qid,qlong from question where id="+sid+"");//把問題id和問題檢索出來放在本地內存表qdt中,備用;
8 for(int i=0;i<qdt.rows.count;i++)//進入代碼段的外層循環,處理調查的每個問題
9 {
10
11 literalcontrol html=new literalcontrol();//literalcontrol是一個非常基礎的控件,用與把html腳本動態插入到當前頁中去
12 html.text=qdt.rows[i]["qlong"].tostring()+":";//把文字交給新控件
13 panel1.controls.add(html);//將賦值后的控件加入到panel1中去
14
15 dropdownlist ddl=new dropdownlist();//聲明一個 dropdownlist 對象
16 string qid=qdt.rows[i]["qid"].tostring();//把當前問題的id保存在臨時變量中
17 ddl.id="q"+qid;//給控件加個名字 q 以后,該下拉列表的名字就成了 q1 ,q2這樣的了,你有權利不信,出去看下編譯后網頁的源文件就知道啦
18
19 datatable adt=db.fill("select answer from answer where qid="+qid+"");//查詢出所有這個問題的答案
20 //下面就可以進入代碼的層循環了,負責處理問題的每個答案
21 for(int j=0;j<adt.rows.count;j++)
22 {
23 listitem li=new listitem();//實例化一個新的數據項,每個答案就直接交給該實例項就ok了
24 li.text=adt.rows[j]["answer"].tostring();//賦值
25 ddl.items.add(li);//放到dropdownlist控件中去
26 }
27 panel1.controls.add(ddl);//把dorpdownlist控件加入到panel里面去
28 literalcontrol html1=new literalcontrol();//最后當然是加個分隔符咯
29 html1.text="<p>";//我想不用說了吧
30 panel1.controls.add(html1);//我想不用說了吧
31 }
新聞熱點
疑難解答