2011-04-05 37 views
0

所以我有一些數據,需要添加到我的數據庫,它是一個4位數的年份和一些文字(僅限於約300 charachetersColdFusion的加入多行 - 多陣列和序列化數據

<cfinput name=year_of_achievent /><cfinput class=text name=achievement /> 

的問題。這些行必須動態添加,對於一個用戶來說,可能是他們的第一年,所以沒有成就,這沒問題,用戶將有2到6年的成就,但必須打開。考慮到它必須作爲數據對存儲,本地存儲此數據然後存儲在數據庫中的最佳方式是什麼?

我thiking二維數組,但我不知道該怎麼

(I)添加/追加一行到一個二維數組,如何將添加一個第4行下面的陣列? (ii)將我的表格作爲序列化數據存儲在我的表格中?

<cfset myArray[1][1] = '2010'> 
<cfset myArray[1][2] = 'swam the english channel'> 

<cfset myArray[2][1] = '2009'> 
<cfset myArray[2][2] = 'Raised 1m for charity'> 

<cfset myArray[3][1] = '2008'> 
<cfset myArray[3][2] = 'ran NY marathon'> 

任何想法,如果有更好的方式來處理這一點,如果沒有可以提供一些語法在我的知識差距?

感謝

回答

2

假設一個用戶只能有每年1分的成績,不要使用二維數組,使用結構。

<cfset stuAchievements = {}> 

<cfset stuAchievements["2010"] = "swam the english channel"> 
<cfset stuAchievements["2009"] = "Raised 1m for charity"> 
<cfset stuAchievements["2008"] = "ran NY marathon"> 

或者換句話說:

<cfset stuAchievements[form.year_of_achievement] = form.achievement> 

對於存儲的話,我想這個歸到自己,成就表,與ID,一年,成就和外鍵鏈接列它回到用戶。

+0

謝謝,這就是我所做的唯一的區別是我創建了一個會話變量,並將其作爲我的結構,但絕對是要走的路。現在只需循環結構並將鍵和值插入到我的表中。 – 2011-04-05 19:38:30