Cfcatch :P

Terrence Ryan
Senior Systems Programmer
Wharton Computing and Information Technology       
E-mail:         [EMAIL PROTECTED]



-----Original Message-----
From: Christopher Jordan [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, December 19, 2006 3:52 PM
To: CF-Talk
Subject: Re: Disregard last email

It's probably worth mentioning then, that *ALL* of the ColdFusion scopes 
are structures.
   Server,
   Application,
   Client,
   Variables,
   This (in CFCs),
   Form,
   URL,
   Session,
   Caller (in custom tags)

Have I missed any? :o)

Cheers,
Chris


Bruce Sorge wrote:
> yes it is. What was messing me up though was not realizing that passed form
> fields are actually structures. So, I was basically creating a structure of
> a structure when all I had to do was parse through the existing one. Now
> that I know that, I understand and will have a much easier time of it next
> time.
>
> Bruce
>
> On 12/19/06, Christopher Jordan <[EMAIL PROTECTED]> wrote:
>   
>> Bruce,
>>
>> I had trouble getting my head around structures too (about two years
>> ago), and now they're like my best friend. :o) I can probably help you
>> to get your head around them too if you like.
>> You solved your problem using a two dimensional array. That's fine. That
>> works, but in referencing it later it would probably be nice to have an
>> array of structures. I'll try and work with your example to show you
>> what I mean. (or at least this is what I *think* your example was trying
>> to accomplish). :o'
>>
>> GIVEN: Form.FieldNames = "Germany,UK,Spain,Australia,Marz"
>>        Form.Germany = "German"
>>        Form.UK = "English"
>>        Form.Spain = "Spanish"
>>        Form.Australia = "English"
>>        Form.Marz = "Martian"
>>
>> Then you could do something like this:
>> <CFSet WorldLanguages = ArrayNew(1)>
>>
>> <CFLoop index="i" from="1" to="#ListLen(Form.FieldNames)#">
>>     <CFSet ThisCountry = ListGetAt(Form.FieldNames, i)>
>>     <CFSet WorldLanguages[i] = StructNew()>
>>     <CFSet WorldLanguages[i].Country = ThisCountry>
>>     <CFSet WorldLanguages[i].Language = Trim(Form[ThisCountry])>
>> </CFLoop>
>>
>> What this code should result in is a single dimensioned array each
>> element of which is a structure. This makes for easy looping and easy
>> reference. It's *almost* the same as referencing a query object
>> (queryName.columnName). One thing that *really* helped me to get my head
>> around this stuff, was to dump these structures and arrays and what-not
>> using CFDump. It's amazing the clarity that I gained from seeing these
>> things graphically represented on screen! It was the "click" that I
>> needed to get me over the hump of understanding.
>>
>> Notice also, that it's not really necessary to use StructInsert (there
>> may be advantages to doing so, but if there are I don't know of them).
>> You can simply follow the name of your struct (i.e. MyStruct) by a
>> period and a key name. It didn't have to exist up until that point. By
>> the act of assigning a value to the structure key (<CFSet
>> MyStruct.KeyName = "Hello World"), you have just created that key as a
>> member of that structure, and given it a value.
>>
>> Easy right? :o)
>>
>> If you still want help understanding structures, give a shout and I'd be
>> happy to help you out however I can. Best of all, use CFDump to look at
>> these things. It gives amazing clarity. :o)
>>
>> Cheers,
>> Chris
>>
>> Bruce Sorge wrote:
>>     
>>> OK, I figure it out so please disregard the last message.
>>>
>>> I did it like this:
>>>
>>> <!--- Create the initial array --->
>>> <cfset languageArray= ArrayNew(1)>
>>>
>>> <!--- Loop through the form fields and get the names of them--->
>>>     <cfloop index="i" list="#form.fieldnames#">
>>> <!--- If the field is not empty, get the info --->
>>> <cfif  LEN(form[i])>
>>>      <cfset languageArray[1][1] = #i#>
>>>      <cfset languageArray[1][2] = #evaluate("form.#i#")#>
>>>      <!--- Query will go here soon --->
>>>     </cfif>
>>>     </cfloop>
>>>
>>>
>>>
>>>       
>>     
>
> 



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Create robust enterprise, web RIAs.
Upgrade & integrate Adobe Coldfusion MX7 with Flex 2
http://ad.doubleclick.net/clk;56760587;14748456;a?http://www.adobe.com/products/coldfusion/flex2/?sdid=LVNU

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:264508
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4

Reply via email to