Book description
ColdFusion has enjoyed widespread use among developers as a powerful, easy-to-learn platform for creating and deploying dynamic web applications. ColdFusion's simple, tag-based language makes it easy to handle basic tasks, like processing form data and querying databases, but the language is also powerful enough to deliver highly scalable, robust applications. And now that Macromedia has integrated ColdFusion into its MX family of technologies, ColdFusion is capable of interacting with Flash MX applications, which opens up even more possibilities.The first edition of this book has been praised as "the best reference book available on the subject." This new edition, Programming ColdFusion MX, 2nd Edition, goes even further, documenting new techniques for using ColdFusion MX 6.1 to develop and serve dynamic web page content. This exhaustive guide covers everything from the basics to advanced topics, with numerous examples that you can use for your own applications. Contents include:
- Sharing application data using the web application framework and shared scope variables
- Accessing databases, maintaining database records, and advanced database techniques such as drill-down queries, query caching, and query of queries
- Integrating applications with ColdFusion MX's new security framework
- Interacting with other data sources, including LDAP directories, email servers, and other web servers
- Extending ColdFusion with user-defined functions (UDFs), custom tags, and ColdFusion Components (CFCs)
- Advanced topics such as working with XML, consuming and producing web services, and integrating ColdFusion with Flash via Flash Remoting
- Reference material for all the tags and functions that comprise CFML, the ColdFusion Markup Language
Publisher resources
Table of contents
- Programming ColdFusion MX, 2nd Edition
- A Note Regarding Supplemental Files
- Preface
- 1. Introducing ColdFusion
- 2. ColdFusion Basics
- 3. Passing Data Between Templates
-
4. Database Basics
- 4.1. Configuring Data Sources
- 4.2. Introducing cfquery
- 4.3. A Quick SQL Primer
- 4.4. Retrieving and Displaying Data
- 4.5. Sorting Query Results
- 4.6. Grouping Output
- 4.7. Looping Over a Query Result Set
- 4.8. Formatting Techniques
- 5. Maintaining Database Records
- 6. Complex Datatypes
- 7. Maintaining State
- 8. Security
- 9. Error and Exception Handling
- 10. Dynamic Form Controls
-
11. Advanced Database Techniques
- 11.1. Display Techniques
- 11.2. Drilldown Queries
- 11.3. Query Caching
- 11.4. Advanced SQL
- 11.5. Query of Queries
- 11.6. Calling Stored Procedures
- 11.7. Transaction Processing
- 12. Manipulating Files and Directories
-
13. Working with Email
-
13.1. Sending Email
- 13.1.1. Sending HTML Mail
- 13.1.2. Sending Multi-Part Messages
- 13.1.3. Emailing Form Contents
- 13.1.4. Adding Query Results to Email
- 13.1.5. Including Grouped Query Results
- 13.1.6. Sending Customized Email to Multiple Recipients
- 13.1.7. Sending File Attachments
- 13.1.8. Specifying Additional Header Information
- 13.2. Dealing with Undeliverable Email
- 13.3. Retrieving Messages
- 13.4. Building a Web-Based Email Client
-
13.1. Sending Email
- 14. Interacting with Other Web Servers Using HTTP
- 15. Interfacing with LDAP-Enabled Directories
-
16. Working with the Verity Search Interface
- 16.1. Creating Collections
- 16.2. Populating Collections
- 16.3. Searching Collections
-
16.4. The Verity Search Language
-
16.4.1. Simple Versus Explicit Searches
-
16.4.1.1. Operators
- 16.4.1.1.1. Order of evaluation
- 16.4.1.1.2. Prefix and infix notation
- 16.4.1.1.3. Quotation marks
- 16.4.1.1.4. Special characters
- 16.4.1.1.5. Concept operators
- 16.4.1.1.6. Evidence operators
- 16.4.1.1.7. Proximity operators
- 16.4.1.1.8. Relational operators
- 16.4.1.1.9. Score operators
- 16.4.1.1.10. Modifiers
-
16.4.1.1. Operators
- 16.4.2. Building an Advanced Search Interface
-
16.4.1. Simple Versus Explicit Searches
- 16.5. Updating Collections
- 16.6. Maintaining Collections
- 16.7. Advanced Techniques
- 17. Graphing and Charting
- 18. Regular Expressions in ColdFusion
- 19. Scripting
- 20. User-Defined Functions
-
21. Creating Custom Tags
- 21.1. Getting Started
- 21.2. Calling Custom Tags
- 21.3. Passing Data
- 21.4. Returning Data
- 21.5. Attribute Validation and Error Handling
- 21.6. Advanced Techniques
- 21.7. Protecting Your Tags
- 21.8. CFX Tags
- 22. ColdFusion Components
- 23. XML and WDDX
- 24. Web Services
- 25. Working with the System Registry
- 26. Using the ColdFusion Scheduler
- 27. Interacting with COM, CORBA, and Java
- 28. Flash Remoting
-
A. Tag Reference
-
A.1. Tags by Type
- A.1.1. Custom Tag Tags
- A.1.2. Database Tags
- A.1.3. Error, Exception-Handling, and Debugging Tags
- A.1.4. Extensibility Tags
- A.1.5. Filesystem Tags
- A.1.6. Flow Control Tags
- A.1.7. Form Tags
- A.1.8. Miscellaneous Tags
- A.1.9. Output Tags
- A.1.10. Protocol Tags
- A.1.11. Security Tags
- A.1.12. System Tags
- A.1.13. UDFs/CFCs/Web Services Tags
- A.1.14. Variable Manipulation Tags
- A.1.15. Verity Search Engine Tags
-
A.2. Alphabetical List of Tags
- cfabort
- cfadminsecurity
- cfapplet
- cfapplication
- cfargument
- cfassociate
- cfauthenticate
- cfbreak
- cfcache
- cfcase
- cfcatch
- cfchart
- cfchartdata
- cfchartseries
- cfcol
- cfcollection
- cfcomponent
- cfcontent
- cfcookie
- cfdefaultcase
- cfdirectory
- cfdump
- cfelse
- cfelseif
- cferror
- cfexecute
- cfexit
- cffile
- cfflush
- cfform
- cfftp
- cffunction
- cfgraph
- cfgraphdata
- cfgrid
- cfgridcolumn
- cfgridrow
- cfgridupdate
- cfheader
- cfhtmlhead
- cfhttp
- cfhttpparam
- cfif
- cfimpersonate
- cfimport
- cfinclude
- cfindex
- cfinput
- cfinsert
- cfinternaldebug
- cfinvoke
- cfinvokeargument
- cfldap
- cflocation
- cflock
- cflog
- cflogin
- cfloginuser
- cflogout
- cfloop
- cfmail
- cfmailparam
- cfmailpart
- cfmodule
- cfnewinternaladminsecurity
- cfnewinternalregistry
- cfobject
- cfobjectcache
- cfoutput
- cfparam
- cfpop
- cfprocessingdirective
- cfprocparam
- cfprocresult
- cfproperty
- cfquery
- cfqueryparam
- cfregistry
- cfreport
- cfrethrow
- cfreturn
- cfsavecontent
- cfschedule
- cfscript
- cfsearch
- cfselect
- cfservlet
- cfservletparam
- cfset
- cfsetting
- cfsilent
- cfslider
- cfstoredproc
- cfswitch
- cftable
- cftextinput
- cfthrow
- cftrace
- cftransaction
- cftree
- cftreeitem
- cftry
- cfupdate
- cfwddx
- cfxml
-
A.1. Tags by Type
-
B. Function Reference
-
B.1. Functions by Category
- B.1.1. Array Functions
- B.1.2. Date/Time Functions
- B.1.3. Decision/Evaluation Functions
- B.1.4. Encoding/Encryption Functions
- B.1.5. File/Directory Functions
- B.1.6. Formatting Functions
- B.1.7. Internationalization/Localization Functions
- B.1.8. List Functions
- B.1.9. Mathematical Functions
- B.1.10. Miscellaneous Functions
- B.1.11. Query Functions
- B.1.12. Security Functions
- B.1.13. String Functions
- B.1.14. Structure Functions
- B.1.15. Undocumented Functions
- B.1.16. Verity Functions
- B.1.17. XML Functions
-
B.2. Alphabetical List of Functions
- Abs
- ACos
- ArrayAppend
- ArrayAvg
- ArrayClear
- ArrayDeleteAt
- ArrayInsertAt
- ArrayIsEmpty
- ArrayLen
- ArrayMax
- ArrayMin
- ArrayNew
- ArrayPrepend
- ArrayResize
- ArraySet
- ArraySort
- ArraySum
- ArraySwap
- ArrayToList
- Asc
- Asin
- Atn
- AuthenticatedContext
- AuthenticatedUser
- BitAnd
- BitMaskClear
- BitMaskRead
- BitMaskSet
- BitNot
- BitOr
- BitSHLN
- BitSHRN
- BitXor
- Ceiling
- CFusion_DBConnections_Flush
- CFusion_Decrypt
- CFusion_Disable_DBConnections
- CFusion_Encrypt
- CFusion_GetODBCDSN
- CFusion_GetODBCINI
- CFusion_SetODBCINI
- CFusion_Settings_Refresh
- CFusion_VerifyMail
- CF_GetDataSourceUserName
- CF_IsColdFusionDataSource
- CF_SetDataSourcePassword
- CF_SetDataSourceUserName
- Chr
- CJustify
- Compare
- CompareNoCase
- Cos
- CreateDate
- CreateDateTime
- CreateObject
- CreateODBCDate
- CreateODBCDateTime
- CreateODBCTime
- CreateTime
- CreateTimeSpan
- CreateUUID
- DateAdd
- DateCompare
- DateConvert
- DateDiff
- DateFormat
- DatePart
- Day
- DayOfWeek
- DayOfWeekAsString
- DayOfYear
- DaysInMonth
- DaysInYear
- DE
- DecimalFormat
- DecrementValue
- Decrypt
- DeleteClientVariable
- DirectoryExists
- DollarFormat
- Duplicate
- Encrypt
- Evaluate
- Exp
- ExpandPath
- FileExists
- Find
- FindNoCase
- FindOneOf
- FirstDayOfMonth
- Fix
- FormatBaseN
- GetAuthUser
- GetBaseTagData
- GetBaseTagList
- GetBaseTemplatePath
- GetClientVariablesList
- GetCurrentTemplatePath
- GetDirectoryFromPath
- GetException
- GetFileFromPath
- GetFunctionList
- GetHTTPRequestData
- GetHTTPTimeString
- GetK2ServerCollections
- GetK2ServerDocCount
- GetK2ServerDocCountLimit
- GetLocale
- GetMetaData
- GetMetricData
- GetNumericDate
- GetPageContext
- GetProfileSections
- GetProfileString
- GetTempDirectory
- GetTempFile
- GetTickCount
- GetTimeZoneInfo
- GetToken
- Hash
- Hour
- HTMLCodeFormat
- HTMLEditFormat
- IIf
- IncrementValue
- InputBaseN
- Insert
- Int
- IsArray
- IsAuthenticated
- IsAuthorized
- IsBinary
- IsBoolean
- IsCustomFunction
- IsDate
- IsDebugMode
- IsDefined
- IsK2ServerABroker
- IsK2ServerDocCountExceeded
- IsK2ServerOnline
- IsLeapYear
- IsNotMap
- IsNumeric
- IsNumericDate
- IsObject
- IsProtected
- IsQuery
- IsSimpleValue
- IsStruct
- IsUserInRole
- IsWDDX
- IsXmlDoc
- IsXmlElem
- IsXmlRoot
- JavaCast
- JSStringFormat
- Lcase
- Left
- Len
- ListAppend
- ListChangeDelims
- ListContains
- ListContainsNoCase
- ListDeleteAt
- ListFind
- ListFindNoCase
- ListFirst
- ListGetAt
- ListInsertAt
- ListLast
- ListLen
- ListPrepend
- ListQualify
- ListRest
- ListSetAt
- ListSort
- ListToArray
- ListValueCount
- ListValueCountNoCase
- LJustify
- Log
- Log10
- LSCurrencyFormat
- LSDateFormat
- LSEuroCurrencyFormat
- LSIsCurrency
- LSIsDate
- LSIsNumeric
- LSNumberFormat
- LSParseCurrency
- LSParseDateTime
- LSParseEuroCurrency
- LSParseNumber
- LSTimeFormat
- LTrim
- Max
- Mid
- Min
- Minute
- Month
- MonthAsString
- Now
- NumberFormat
- ParagraphFormat
- ParseDateTime
- Pi
- PreserveSingleQuotes
- Quarter
- QueryAddColumn
- QueryAddRow
- QueryNew
- QuerySetCell
- QuotedValueList
- Rand
- Randomize
- RandRange
- REFind
- REFindNoCase
- ReleaseCOMObject
- RemoveChars
- RepeatString
- Replace
- ReplaceList
- ReplaceNoCase
- REReplace
- REReplaceNoCase
- Reverse
- Right
- RJustify
- Round
- RTrim
- Second
- SetEncoding
- SetLocale
- SetProfileString
- SetVariable
- Sgn
- Sin
- SpanExcluding
- SpanIncluding
- Sqr
- StripCR
- StructAppend
- StructClear
- StructCopy
- StructCount
- StructDelete
- StructFind
- StructFindKey
- StructFindValue
- StructGet
- StructInsert
- StructIsEmpty
- StructKeyArray
- StructKeyExists
- StructKeyList
- StructNew
- StructSort
- StructUpdate
- Tan
- TimeFormat
- ToBase64
- ToBinary
- ToString
- Trim
- Ucase
- URLDecode
- URLEncodedFormat
- URLSessionFormat
- Val
- ValueList
- Week
- Wrap
- WriteOutput
- XmlChildPos
- XmlElemNew
- XmlFormat
- XmlNew
- XmlParse
- XmlSearch
- XmlTransform
- Year
- YesNoFormat
-
B.1. Functions by Category
- C. Example Database Tables
- D. ColdFusion Resources
- Index
- About the Author
- Colophon
- Copyright
Product information
- Title: Programming ColdFusion MX, 2nd Edition
- Author(s):
- Release date: August 2003
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781491909485
You might also like
book
Programming ColdFusion
ColdFusion is a powerful platform for creating and deploying dynamic web applications. Developers like ColdFusion because …
book
Adobe ColdFusion 8 Web Application Construction Kit, Volume 1: Getting Started
The ColdFusion Web Application Construction Kit is the best-selling ColdFusion series of all time—the books that …
book
Adobe ColdFusion 9 Web Application Construction Kit, Volume 2: Application Development
Written by the best known and most trusted name in the ColdFusion community, Ben Forta, The …
book
macromedia® Coldfusion® MX 7 Web Application Construction Kit
With more than 75 of the Fortune 100 companies using it (and more than 10,000 organizations …