Coldfusion добавляет несколько строк - несколько массивов и сериализованные данные - PullRequest
0 голосов
/ 05 апреля 2011

Итак, у меня есть некоторые данные, которые нужно добавить в мою базу данных, это год из 4 цифр и некоторый текст (ограниченный примерно 300 символами.

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

Проблема в том, что эти строки должны добавляться динамическиДля одного пользователя это может быть его первый год, поэтому у него нет достижений, это нормально. Как правило, у пользователей будет от 2 до 6 лет достижений, но он должен быть открытым.

Каков наилучший способхранить эти данные локально, а затем в базе данных, учитывая, что они должны храниться в виде пар данных.

Я использую двумерный массив, но я не знаю, как

(i) добавить /добавить строку в 2d массив, как бы я добавил 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'>

Любые идеи, если есть лучшиеспособ подойти к этому, если вы не можете предоставить синтаксис для пробелов в моих знаниях?

Спасибо

1 Ответ

2 голосов
/ 05 апреля 2011

Предполагая, что пользователь может иметь только 1 достижение в год, не используйте 2D-массив, используйте структуру.

<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>

Длясохраняя его, я бы нормализовал его в своей собственной таблице достижений со столбцами для идентификатора, года, достижения и внешнего ключа, связывающего его с пользователем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...