2011-07-06 27 views

回答

-2

我假設提交選項將其視爲與名selectedOption表單變量,並嘗試下面的查詢......

<cfquery name="qUpdate" datasource="datasourcename"> 
Update TShirt_port set option#form.selectedOption# = option#form.selectedOption# + 1 
</cfquery> 
+3

怎麼樣queryparams和不直接在查詢中使用form/url變量? – Lucas

1

數據庫只與 選項1,選項2的一個記錄,選項3

最大的問題是你的表結構。如果選項存儲在行(不是列)中,那麼操作數據會更容易。對於一個非常簡單的表格,插入每個選項作爲一個單獨的一行,0票初始化:

RecordID | OptionName | TotalVotes 
    1  | T-Shirt 1 | 0 
    2  | T-Shirt 2 | 0 
    3  | T-Shirt 3 | 0 
    .... 
    5  | T-Shirt 5 | 0 

然後用你的SELECT查詢的結果來填充表單(或顯示總計如果需要的話):

<cfoutput query="poll"> 
    <input type="radio" name="TshirtOption" value="#RecordID#"> #OptionName# 
    ... 
</cfoutput> 

提交表單時,增加所選選項的總票數。當然添加驗證。

<cfquery name="updateVote" datasource="fiteastpoll"> 
    UPDATE Tshirt_poll 
    SET  TotalVotes = TotalVotes + 1 
    WHERE RecordID = <cfqueryparam value="#form.TshirtOption#" cfsqltype="cf_sql_integer"> 
</cfquery>