主题:  大贤者制作CFM调票系统系例报道

吃鱼专家

职务:普通成员
等级:6
金币:11.0
发贴:5312
注册:2004/1/17 13:07:16
#12003/10/23 11:48:45
双数据库型投票系统,使用CFMX6.1+SQL2000,目前正在制作中
数据库1:POLL
字段1:ID,INT,自动计数
字段2:POLLNAME,NVARCHAR,投票标题名

数据库2:POLLSHOW
字段1:ID,INT,对应库POLL中的ID
字段2:POLLNUM,TINYINT,投票数,默认值0
字段3:POLLOPTION,NVARCHAR,投票选项名



s22

职务:版主
等级:4
金币:10.0
发贴:1634
注册:2004/12/19 13:06:46
#22003/10/23 13:01:22
做好给大家看看



54aft

职务:普通成员
等级:2
金币:1.0
发贴:657
注册:2002/8/26 17:11:53
#32003/10/23 13:11:49
我正在做一个旅游 的网站呀!
大家也去看看!
www.gxbl.com/gxbj/index.cfm
(正在建设中……)
估计10天后完工!



吃鱼专家

职务:普通成员
等级:6
金币:11.0
发贴:5312
注册:2004/1/17 13:07:16
#42003/10/23 13:17:47
正在做,一边做一边贴上来



吃鱼专家

职务:普通成员
等级:6
金币:11.0
发贴:5312
注册:2004/1/17 13:07:16
#52003/10/23 13:44:27
##polladd.cfm‘新建投票选项前台页


SELECT * from poll order by id desc


SELECT * from pollshow






‘用来输入投票的标题

'建立循环并假设有个选项






‘用来输入投票选项库pollshow的对应投票标题库poll的ID,改了此处,为了与库pollshow对应


投票名:
选项#i# ’用来输入投票的选项

    

编辑历史:[此帖被mb1978编辑过(编辑时间2003-10-24 09:25:48)]
[此帖被mb1978编辑过(编辑时间2003-10-24 10:41:17)]
[此帖被mb1978编辑过(编辑时间2003-10-24 15:22:23)]


吃鱼专家

职务:普通成员
等级:6
金币:11.0
发贴:5312
注册:2004/1/17 13:07:16
#62003/10/23 13:48:56
##polladdj.cfm’对应POLLADD.CFM提交的后台页
TABLENAME="poll"
FORMFIELDS="pollname">’先把投票标题名输入到poll库中
‘取列表
’建立列表循环,刚发现用LIST的话无法提交非数字,现在OK

insert into pollshow(id,polloption)
values('#form.id#','#listGETAT(option,i)#')
‘运用LISTGETAT取列表的对应位,并循环添加pollshow库,其中ID为同一个

Thank You!


返回投票管理

继续添加投票

编辑历史:[此帖被mb1978编辑过(编辑时间2003-10-24 09:35:26)]
[此帖被mb1978编辑过(编辑时间2003-10-24 10:24:05)]
[此帖被mb1978编辑过(编辑时间2003-10-24 10:38:57)]
[此帖被mb1978编辑过(编辑时间2003-10-24 10:42:08)]


s22

职务:版主
等级:4
金币:10.0
发贴:1634
注册:2004/12/19 13:06:46
#72003/10/23 20:45:28
代码比较混乱.规范一下先.
把所有的方法建到一个CFC里
CFC方法
1.创建投票
2.编辑投票
3.删除投票

前台方法.
1.返回结果
2.插入投票

还有就是不要把代码写的跟面条一样,一个页面到底.

问问题的时候起码也要写点注释,写上页面名称
数据库查询 写个*别人知道你查什么啊.



CFZone

职务:普通成员
等级:1
金币:0.0
发贴:31
注册:2003/10/15 21:48:11
#82003/10/23 22:20:47
呵呵,和我以前一样了,为什么要多个数据一起添加呢?!
插入一条再插一条记录就行了啦!!

你倒是多留点时间想想如何防止重复投票吧!哈哈!

我的QQ:52128097



CFZone

职务:普通成员
等级:1
金币:0.0
发贴:31
注册:2003/10/15 21:48:11
#92003/10/23 22:22:53
还要加几个字段了啦,大哥,开始时间,结束时间。。
设定有效。。是否可以多选!!??
starttime
endtime
enable
radio_check



吃鱼专家

职务:普通成员
等级:6
金币:11.0
发贴:5312
注册:2004/1/17 13:07:16
#102003/10/24 9:01:15
CFZone在上个帖子中说
引用:
呵呵,和我以前一样了,为什么要多个数据一起添加呢?!
插入一条再插一条记录就行了啦!!

你倒是多留点时间想想如何防止重复投票吧!哈哈!

我的QQ:52128097


我说的记录是指一个调查的多个选项

现在就防止重复投票的话你要我怎么调试?



吃鱼专家

职务:普通成员
等级:6
金币:11.0
发贴:5312
注册:2004/1/17 13:07:16
#112003/10/24 10:14:52
我现在的问题是如何把而来提交后变成
ID 投票数 选项名
1 0 A,B,C,D
1 0 A,B,C,D
1 0 A,B,C,D
1 0 A,B,C,D

变成我想要的
ID 投票数 选项名
1 0 A
1 0 B
1 0 C
1 0 D



吃鱼专家

职务:普通成员
等级:6
金币:11.0
发贴:5312
注册:2004/1/17 13:07:16
#122003/10/24 10:24:24
已经把问题解决,我已经修改



吃鱼专家

职务:普通成员
等级:6
金币:11.0
发贴:5312
注册:2004/1/17 13:07:16
#132003/10/24 15:43:07
现在开始公布投票页
##poll.cfm ’为了学习方便,只写出最新投票

SELECT * FROM poll ORDER BY id DESC

‘查出最新的ID数

SELECT * FROM pollshow WHERE id = #maxid#
’只列出最新ID的投票选项
‘计算一共有几个选项





’开始循环列出

‘为先项定义,同时也可以在TYPE中设定数据值,来代表是单选还是复选,此话后表




#polls.pollname#

#pollshows.polloption#




吃鱼专家

职务:普通成员
等级:6
金币:11.0
发贴:5312
注册:2004/1/17 13:07:16
#142003/10/24 15:45:54
##pollupda.com‘此为POLL.CFM的处理投票数的计数页

update pollshow
set pollnum=pollnum+1
WHERE showid IN (#Form.polloption#)
‘注意把=改成IN,这样就可一一对应,不然的话会使所有选项都加1



吃鱼专家

职务:普通成员
等级:6
金币:11.0
发贴:5312
注册:2004/1/17 13:07:16
#152003/10/24 15:47:49
目前还不能直接看出投票结果,等我写好后发上来