Cover image for Programming ColdFusion

Book description

ColdFusion is a powerful platform for creating and deploying dynamic web applications. Developers like ColdFusion because its simple, tag-based language makes it easy to handle simple tasks, like processing form data and querying databases. ColdFusion is easy to learn, yet powerful enough to deliver highly scalable, robust applications. Programming ColdFusion covers everything you need to know to create effective web applications with ColdFusion and includes numerous examples that you can use for your own applications. The book starts with ColdFusion basics and quickly progresses to topics like sharing application data, accessing databases, and maintaining state information. It also provides chapters on advanced database techniques, working with the Verity search engine, and interacting with other data sources, including LDAP directories, email servers, and other web servers. Finally, the book explores more advanced topics, such as creating custom tags, sharing data with WDDX, and calling external objects.

Table of Contents

  1. Programming ColdFusion
    1. Preface
      1. Audience
      2. Organization
      3. Conventions Used in This Book
      4. Comments and Questions
      5. Acknowledgments
    2. 1. Introducing ColdFusion
      1. What Is Allaire’s ColdFusion?
      2. ColdFusion Architecture
      3. Getting Started with ColdFusion
    3. 2. ColdFusion Basics
      1. Getting Started
        1. Saving CFML Templates
        2. Tag Syntax
        3. Comments
      2. Datatypes
      3. Variables
        1. Variable Names
        2. Assigning Values to Variables
        3. Variable Scope
        4. Specifying Default Values Using CFPARAM
      4. Expressions
        1. Operators
        2. Functions
      5. Writing Output
        1. Using Pound Signs Within Expressions
          1. Including an expression within a string
          2. Including expressions within tag attributes
        2. Nested Pound Signs
        3. Escaping Pound Signs
      6. Conditional Processing
        1. CFIF, CFELSEIF, and CFELSE
        2. CFSWITCH, CFCASE, and CFDEFAULTCASE
        3. IIF
      7. Looping
        1. Index Loops
        2. Conditional Loops
      8. Including Other Templates
    4. 3. Passing Data Between Templates
      1. Passing Parameters via URL
        1. Dealing with Special Characters
        2. Obtaining a List of All Available URL Parameters
      2. Passing Data Using Forms
        1. Handling Specific Types of Form Fields
          1. Multiple selection lists
          2. Checkboxes and radio buttons
        2. Using Hidden Form Fields
        3. Automatically Validating Form-Field Data
        4. Manually Validating Form-Field Data
        5. Obtaining a List of All Available Form Variables
      3. Dealing with Nonexistent Parameters
    5. 4. Database Basics
      1. Configuring Data Sources
        1. Configuring a Data Source in the ColdFusion Administrator
        2. Additional Resources
      2. Introducing CFQUERY
        1. Connecting to a Data Source Dynamically
      3. A Quick SQL Primer
      4. Retrieving and Displaying Data
        1. Creating the Example Database
        2. Retrieving Data from a Data Source
        3. Outputting Query Results
        4. Obtaining Additional Query Information
      5. Sorting Query Results
      6. Grouping Output
      7. Looping Over a Query Result Set
      8. Formatting Techniques
        1. Formatting Plain-Text Strings
          1. Using ParagraphFormat
          2. Changing case
          3. Making strings JavaScript-safe
          4. Making strings safe for XML
        2. Formatting HTML
          1. HTMLCodeFormat
          2. HTMLEditFormat
        3. Formatting Numbers
          1. Formatting decimal numbers
          2. General number formatting
          3. Locale-specific number formatting
        4. Formatting Currency Values
          1. Formatting dollars
          2. Locale-specific currency formatting
          3. Locale-specific currency formatting with the Euro
        5. Formatting Boolean Values
        6. Formatting Dates and Times
          1. General date formatting
          2. Locale-specific date formatting
          3. Time formatting
    6. 5. Maintaining Database Records
      1. Inserting Records
        1. Inputting Data via Forms
        2. Inserting Form-Field Data
          1. Inserting a record using CFQUERY
          2. Inserting a record using CFINSERT
      2. Updating Existing Records
        1. Choosing a Record to Update
        2. Dynamically Populating Update Forms
        3. Performing the Database Update
          1. Updating a record using CFQUERY
          2. Updating a record using CFUPDATE
        4. Dynamically Populating AdditionalForm-Field Types
          1. Populating text areas
          2. Populating select lists
          3. Generating and selecting multiple checkboxes
          4. Generating and selecting radio buttons
      3. Deleting Records
        1. Deleting a Single Record
        2. Deleting Multiple Records
        3. Asking for Confirmation Before Deleting
    7. 6. Complex Datatypes
      1. Lists
        1. Looping Over a List
        2. Manipulating Lists
      2. Arrays
        1. Initializing an Array
        2. Adding Data to an Array
        3. Manipulating Array Elements
      3. Structures
        1. Creating a Structure
        2. Populating a Structure with Data
        3. Using a Collection Loop to Loop Over the Contents of a Structure
        4. Creating an Array of Structures
        5. Manipulating Structures
      4. Query Objects
    8. 7. Maintaining State
      1. Setting Up the Web Application Framework
        1. The Application.cfm File
        2. The OnRequestEnd.cfm File
      2. Using Persistent Variables
        1. Locking
          1. Locking shared persistent variables as of ColdFusion 4.5
          2. Locking shared persistent variables in ColdFusion 4.0/4.01
          3. Locking access to nonthread-safe objects and file operations
          4. Additional locking considerations
        2. Application Variables
        3. Client Variables
          1. Client variable storage options
          2. Creating an external data source for client variable storage
          3. Using client variables without cookies
          4. Storing complex datatypes in client variables
          5. Client variables and clustering
          6. Deleting client variables
        4. Cookies
          1. Setting cookies
          2. Retrieving cookies
          3. Deleting cookies
        5. Session Variables
          1. Using session variables without cookies
          2. Deleting session variables
          3. Session variables and clustering
        6. Server Variables
      3. Browser Redirection
      4. Portal Example
        1. Web Application Framework
        2. Main Template
        3. Customization
        4. Logging Out
    9. 8. Security
      1. Security Basics
      2. Implementing Security from Scratch
        1. Creating a Simple Security Table in the Database
        2. Setting Up the Application.cfm Template
        3. Creating Login and Registration Screens
        4. Authenticating Users
        5. Securing Non-CFML Files
        6. Levels of Access
      3. Using ColdFusion’s Built-in Advanced Security Services
        1. Administering Advanced Security
          1. Enable Advanced Security
          2. Set up a user directory
          3. Create a security context
          4. Add user directories to the security context
          5. Establish rules for resources within the security context
          6. Create policies for associating users with rules
          7. Additional resources
        2. Authenticating Users
        3. Authorizing Access to Specific Resources
          1. Using IsProtected( )
          2. Using IsAuthorized( )
        4. Impersonating Users
    10. 9. Error and Exception Handling
      1. Basic Exception Handling
      2. Custom Exception Handling
      3. Rethrowing Exceptions
      4. Error Handling Within the Web-Application Framework
        1. Form Validation Errors
        2. Request Errors
        3. Specific Exceptions
        4. Monitors
      5. Server-wide Error Handling
        1. Missing Template Handler
        2. Site-wide Error Handler
    11. 10. Dynamic Form Controls
      1. Combining HTML and CFML Form Controls
      2. Data Validation
      3. Basic Input Controls
      4. Textual Input
      5. A Selection Control
      6. Sliders
      7. Grids
        1. Customizing Column Data
        2. Specifying Row Data
        3. Creating Updateable Grids
          1. Updating a grid using CFGRIDUPDATE
          2. Updating a grid using CFQUERY
      8. Trees
        1. Populating a Tree Control
          1. Creating a static tree
          2. Dynamically populating a tree control with query data
        2. Submitting a Tree Selection
        3. Creating a Tree via Recursion
      9. Custom Controls
      10. Form Controls in Version 5.0
        1. Preserving Input
        2. Data Validation with JavaScript Regular Expressions
        3. Grids
        4. Sliders
        5. Trees
    12. 11. Advanced Database Techniques
      1. Display Techniques
        1. Flushing Page Output
        2. Displaying Limited Record Sets
        3. Alternating Row Color in HTML Tables
        4. Multicolumn Output
          1. Sorting multicolumn output from left to right
          2. Sorting multicolumn output from top to bottom
        5. Next/Previous Record Browsing
        6. Controlling Whitespace
          1. Optimizing output
          2. Suppressing output
          3. Suppressing whitespace
      2. Drill-Down Queries
      3. Query Caching
      4. Advanced SQL
        1. Dynamic SQL
        2. Creating and Modifying Tables
          1. Creating new tables
          2. Populating new tables with existing data
          3. Altering table design
          4. Deleting tables
        3. Retrieving Unique Values
        4. Using Column Aliases
        5. Scalar Functions
        6. Aggregate Functions
        7. Subqueries
        8. Unions
        9. Joins
          1. Inner joins
          2. Outer joins
        10. Data Binding
      5. CFSQL
      6. Calling Stored Procedures
        1. Using CFSTOREDPROC
          1. Passing parameters using CFPROCPARAM
          2. Specifying result sets using CFPROCRESULT
        2. Using CFQUERY
      7. Transaction Processing
    13. 12. Manipulating Files and Directories
      1. Working with Directories
        1. Listing Directory Contents
        2. Creating a Directory
        3. Renaming a Directory
        4. Deleting a Directory
      2. Dealing with Files
        1. Uploading Files
        2. Renaming Files
        3. Moving Files
        4. Copying Files
        5. Deleting Files
        6. Reading Text Files
        7. Reading Binary Files
        8. Writing Text Files
        9. Writing Binary Files
        10. Appending Text Files
      3. Performing FTP Operations
        1. Connecting to a Remote Server
        2. Closing the Connection
        3. Performing File and Directory Operations
          1. Obtaining a directory listing
          2. Uploading files
          3. Downloading files
          4. Deleting files
    14. 13. Working With Email
      1. Sending Email
        1. Sending HTML Mail
        2. Emailing Form Contents
        3. Adding Query Results to Email
        4. Including Grouped Query Results
        5. Sending Customized Email to Multiple Recipients
        6. Sending File Attachments
        7. Specifying Additional Header Information
      2. Dealing with Undeliverable Email
      3. Retrieving Messages
        1. Retrieving Message Headers
        2. Retrieving Message Contents
        3. Dealing with Attachments
        4. Deleting Messages
      4. Building a Web-Based Email Client
    15. 14. Interacting with Other Web Servers Using HTTP
      1. Retrieving Information
        1. Saving Information to a Variable
        2. Saving Information to a File
        3. Retrieving HTTP Header Information
        4. Creating Query Objects from Text Files
        5. Passing Parameters
      2. Parsing Data
      3. Generating Static HTML Pages
      4. Posting Information
        1. Posting Form-Field Data
        2. Posting URL Variables
        3. Posting CGI Variables
        4. Posting Cookies
        5. Posting Files
      5. CFHTTP Considerations
        1. Column Headers and Delimited Text Files
        2. Authentication
    16. 15. Interfacing with LDAP-Enabled Directories
      1. LDAP Basics
        1. LDAP Attributes
        2. Public LDAP Servers
      2. Querying an LDAP Directory
        1. Performing an LDAP Query
        2. Obtaining the LDAP Server Schema
      3. Modifying LDAP Entries
        1. Adding Entries
        2. Updating Entries
        3. Deleting Entries
      4. Modifying the Distinguished Name
    17. 16. Working with the Verity Search Interface
      1. Creating Collections
        1. Creating Collections with the ColdFusion Administrator
        2. Creating Collections with the CFCOLLECTION Tag
      2. Populating Collections
        1. Indexing Files
          1. Indexing files with the ColdFusion Administrator
          2. Indexing Files Programmatically with CFINDEX
        2. Indexing Query Results
          1. Indexing database query results
          2. Indexing CFLDAP query results
          3. Indexing CFPOP query results
      3. Searching Collections
        1. Building a Search Interface
          1. Searching file collections
          2. Searching database collections
      4. The Verity Search Language
        1. Simple Searches
        2. Explicit Searches
          1. Operators
            1. Order of evaluation
            2. Prefix and infix notation
            3. Double quotation marks
            4. Special characters
            5. Concept operators
            6. Evidence operators
            7. Proximity operators
            8. Relational operators
            9. Score operators
            10. Modifiers
        3. Building an Advanced Search Interface
      5. Updating Collections
        1. Adding New Records to a Collection
        2. Deleting Records from a Collection
      6. Maintaining Collections
        1. Optimizing Collections
        2. Repairing Collections
        3. Purging Collections
        4. Deleting Collections
      7. Advanced Techniques
        1. Creating a Top-Ten List
        2. Custom Attributes
          1. Populating the custom attributes
          2. Searching the custom attributes
          3. Extending the usefulness of custom attributes
        3. Modifying the Verity Summary Attribute
        4. Tweaking Verity’s XML Filter
        5. Searching Database and Document Collections Simultaneously
    18. 17. Regular Expressions in ColdFusion
      1. Regular-Expression Syntax
        1. Special Characters
        2. POSIX Character Classes
      2. Finding Strings
      3. Replacing Strings
      4. Back References
      5. Useful Regular Expressions
      6. Input Considerations
      7. Regular Expression Builder
    19. 18. Scripting
      1. Scripting Syntax
        1. Working with Variables
        2. Commenting Your Code
      2. Writing Output
      3. CFScript Statements
        1. if/else
        2. switch/case
        3. for Loops
        4. for/in Loops
        5. while Loops
        6. do/while Loops
        7. Using break Within a Loop
        8. Using continue
      4. User-Defined Functions
        1. Defining Custom Functions
        2. Calling User-Defined Functions
        3. Passing Optional Parameters
        4. The Function Scope
        5. Error and Exception Handling
        6. Function Libraries
    20. 19. Creating Custom Tags
      1. Getting Started
        1. Why Custom Tags?
        2. Custom Tags Versus CFINCLUDE
        3. Custom Tags Versus User-Defined Functions
      2. Calling Custom Tags
      3. Passing Data
      4. Returning Data
        1. Avoiding Potential Variable-Name Conflicts
        2. Returning Multiple Values from a Custom Tag
      5. Attribute Validation and Error Handling
        1. Handling Required Attributes
        2. Handling Optional Attributes
        3. Validating Datatypes
        4. Error and Exception Handling
        5. Merging Validation and Error-Handling Concepts
      6. Advanced Techniques
        1. Calling Custom Tags via CFMODULE
        2. Passing Attributes via Structures
        3. Creating Tag Pairs
        4. Nesting Custom Tags
        5. Aborting Tag Processing
      7. Protecting Your Tags
      8. CFX Tags
        1. Registering CFX Tags
          1. Registering C++/Delphi CFX tags
          2. Registering Java CFX tags
        2. Calling CFX Tags
        3. Additional Resources
    21. 20. Sharing Data with WDDX
      1. WDDX Basics
        1. What Can You Do with WDDX?
        2. How Does It Work?
        3. Show Me the WDDX!
      2. Serializing and Deserializing Data
        1. Serializing and Deserializing Simple Values
          1. Datatype conversion issues
          2. Testing for well-formed WDDX
        2. Serializing and Deserializing Complex Datatypes
          1. Serializing/deserializing record sets
          2. Serializing/deserializing arrays
          3. Structures
          4. Serializing/deserializing binary data
      3. Storing WDDX Packets
        1. Storing Packets in a Text File
        2. Storing Packets in a Database
      4. Server-to-Server WDDX
        1. Syndicating ColdFusion Tips and Tutorials
          1. Retrieving and displaying tips and tutorials
          2. Automating tip retrieval
      5. Server-to-Browser WDDX Using JavaScript
        1. Passing Data to JavaScript on the Browser
          1. Simplifying the process
        2. Passing Data from JavaScript to ColdFusion
    22. 21. Working with the System Registry
      1. Getting Registry Keys and Values
      2. Setting Registry Keys and Values
      3. Deleting Registry Keys and Values
    23. 22. Using the ColdFusion Scheduler
      1. Scheduling Tasks with the ColdFusion Administrator
        1. Scheduler Settings
        2. Adding a Task
        3. Manually Executing a Task
        4. Updating and Deleting Tasks
          1. Updating a task
          2. Deleting a task
        5. Logging Scheduled Tasks
      2. Scheduling Tasks with CFSCHEDULE
        1. Adding Tasks
        2. Updating Tasks
        3. Deleting a Task
        4. Running Tasks
      3. Additional Considerations
    24. 23. Calling External Objects
      1. Connecting to External Objects
        1. Calling COM Objects
        2. Calling CORBA Objects
        3. Calling Java Objects
      2. Executing Programs
      3. Invoking Java Servlets
    25. 24. Graphing and Charting
      1. Creating a Simple Graph
      2. Graphing Query Results
      3. Drilling Down on Graph Data
    26. A. Tag Reference
      1. Tags by Type
        1. Custom Tag Tags
        2. Database Tags
        3. Error and Exception-Handling Tags
        4. Extensibility Tags
        5. Filesystem Tags
        6. Flow Control Tags
        7. Form Tags
        8. Miscellaneous Tags
        9. Output Tags
        10. Protocol Tags
        11. Security Tags
        12. System Tags
        13. Undocumented Tags
        14. Variable Manipulation Tags
        15. Verity Search Engine Tags
      2. Alphabetical List of Tags
      3. CFABORT
        1. CFABORT
      4. CFADMINSECURITY
        1. CFADMINSECURITY
      5. CFAPPLET
        1. CFAPPLET
      6. CFAPPLICATION
        1. CFAPPLICATION
      7. CFASSOCIATE
        1. CFASSOCIATE
      8. CFAUTHENTICATE
        1. CFAUTHENTICATE
      9. CFBREAK
        1. CFBREAK
      10. CFCACHE
        1. CFCACHE
      11. CFCASE
        1. CFCASE
      12. CFCATCH
        1. CFCATCH
      13. CFCOL
        1. CFCOL
      14. CFCOLLECTION
        1. CFCOLLECTION
      15. CFCONTENT
        1. CFCONTENT
      16. CFCOOKIE
        1. CFCOOKIE
      17. CFDEFAULTCASE
        1. CFDEFAULTCASE
      18. CFDIRECTORY
        1. CFDIRECTORY
      19. CFDUMP
        1. CFDUMP
      20. CFELSE
        1. CFELSE
      21. CFELSEIF
        1. CFELSEIF
      22. CFERROR
        1. CFERROR
      23. CFEXECUTE
        1. CFEXECUTE
      24. CFEXIT
        1. CFEXIT
      25. CFFILE
        1. CFFILE
      26. CFFLUSH
        1. CFFLUSH
      27. CFFORM
        1. CFFORM
      28. CFFTP
        1. CFFTP
      29. CFGRAPH
        1. CFGRAPH
      30. CFGRAPHDATA
        1. CFGRAPHDATA
      31. CFGRID
        1. CFGRID
      32. CFGRIDCOLUMN
        1. CFGRIDCOLUMN
      33. CFGRIDROW
        1. CFGRIDROW
      34. CFGRIDUPDATE
        1. CFGRIDUPDATE
      35. CFHEADER
        1. CFHEADER
      36. CFHTMLHEAD
        1. CFHTMLHEAD
      37. CFHTTP
        1. CFHTTP
      38. CFHTTPPARAM
        1. CFHTTPPARAM
      39. CFIF
        1. CFIF
      40. CFIMPERSONATE
        1. CFIMPERSONATE
      41. CFINCLUDE
        1. CFINCLUDE
      42. CFINDEX
        1. CFINDEX
      43. CFINPUT
        1. CFINPUT
      44. CFINSERT
        1. CFINSERT
      45. CFINTERNALDEBUG
        1. CFINTERNALDEBUG
      46. CFLDAP
        1. CFLDAP
      47. CFLOCATION
        1. CFLOCATION
      48. CFLOCK
        1. CFLOCK
      49. CFLOG
        1. CFLOG
      50. CFLOOP
        1. CFLOOP
      51. CFMAIL
        1. CFMAIL
      52. CFMAILPARAM
        1. CFMAILPARAM
      53. CFMODULE
        1. CFMODULE
      54. CFNEWINTERNALADMINSECURITY
        1. CFNEWINTERNALADMINSECURITY
      55. CFNEWINTERNALREGISTRY
        1. CFNEWINTERNALREGISTRY
      56. CFOBJECT
        1. CFOBJECT
      57. CFOBJECTCACHE
        1. CFOBJECTCACHE
      58. CFOUTPUT
        1. CFOUTPUT
      59. CFPARAM
        1. CFPARAM
      60. CFPOP
        1. CFPOP
      61. CFPROCESSINGDIRECTIVE
        1. CFPROCESSINGDIRECTIVE
      62. CFPROCPARAM
        1. CFPROCPARAM
      63. CFPROCRESULT
        1. CFPROCRESULT
      64. CFQUERY
        1. CFQUERY
      65. CFQUERYPARAM
        1. CFQUERYPARAM
      66. CFREGISTRY
        1. CFREGISTRY
      67. CFREPORT
        1. CFREPORT
      68. CFRETHROW
        1. CFRETHROW
      69. CFSAVECONTENT
        1. CFSAVECONTENT
      70. CFSCHEDULE
        1. CFSCHEDULE
      71. CFSCRIPT
        1. CFSCRIPT
      72. CFSEARCH
        1. CFSEARCH
      73. CFSELECT
        1. CFSELECT
      74. CFSERVLET
        1. CFSERVLET
      75. CFSERVLETPARAM
        1. CFSERVLETPARAM
      76. CFSET
        1. CFSET
      77. CFSETTING
        1. CFSETTING
      78. CFSILENT
        1. CFSILENT
      79. CFSLIDER
        1. CFSLIDER
      80. CFSTOREDPROC
        1. CFSTOREDPROC
      81. CFSWITCH
        1. CFSWITCH
      82. CFTABLE
        1. CFTABLE
      83. CFTEXTINPUT
        1. CFTEXTINPUT
      84. CFTHROW
        1. CFTHROW
      85. CFTRANSACTION
        1. CFTRANSACTION
      86. CFTREE
        1. CFTREE
      87. CFTREEITEM
        1. CFTREEITEM
      88. CFTRY
        1. CFTRY
      89. CFUPDATE
        1. CFUPDATE
      90. CFWDDX
        1. CFWDDX
    27. B. Function Reference
      1. Array Functions
        1. Date/Time Functions
        2. Decision/Evaluation Functions
        3. Encoding/Encryption Functions
        4. File/Directory Functions
        5. Formatting Functions
        6. International Functions
        7. List Functions
        8. Mathematical Functions
        9. Miscellaneous Functions
        10. Query Functions
        11. Security Functions
        12. String Functions
        13. Structure Functions
        14. Undocumented Functions
      2. Alphabetical List of Functions
      3. Abs
        1. Abs
      4. ACos
        1. ACos
      5. ArrayAppend
        1. ArrayAppend
      6. ArrayAvg
        1. ArrayAvg
      7. ArrayClear
        1. ArrayClear
      8. ArrayDeleteAt
        1. ArrayDeleteAt
      9. ArrayInsertAt
        1. ArrayInsertAt
      10. ArrayIsEmpty
        1. ArrayIsEmpty
      11. ArrayLen
        1. ArrayLen
      12. ArrayMax
        1. ArrayMax
      13. ArrayMin
        1. ArrayMin
      14. ArrayNew
        1. ArrayNew
      15. ArrayPrepend
        1. ArrayPrepend
      16. ArrayResize
        1. ArrayResize
      17. ArraySet
        1. ArraySet
      18. ArraySort
        1. ArraySort
      19. ArraySum
        1. ArraySum
      20. ArraySwap
        1. ArraySwap
      21. ArrayToList
        1. ArrayToList
      22. Asc
        1. Asc
      23. Asin
        1. Asin
      24. Atn
        1. Atn
      25. AuthenticatedContext
        1. AuthenticatedContext
      26. AuthenticatedUser
        1. AuthenticatedUser
      27. BitAnd
        1. BitAnd
      28. BitMaskClear
        1. BitMaskClear
      29. BitMaskRead
        1. BitMaskRead
      30. BitMaskSet
        1. BitMaskSet
      31. BitNot
        1. BitNot
      32. BitOr
        1. BitOr
      33. BitSHLN
        1. BitSHLN
      34. BitSHRN
        1. BitSHRN
      35. BitXor
        1. BitXor
      36. Ceiling
        1. Ceiling
      37. CFusion_DBConnections_Flush
        1. CFusion_DBConnections_Flush
      38. CFusion_Decrypt
        1. CFusion_Decrypt
      39. CFusion_Disable_DBConnections
        1. CFusion_Disable_DBConnections
      40. CFusion_Encrypt
        1. CFusion_Encrypt
      41. CFusion_GetODBCDSN
        1. CFusion_GetODBCDSN
      42. CFusion_GetODBCINI
        1. CFusion_GetODBCINI
      43. CFusion_SetODBCINI
        1. CFusion_SetODBCINI
      44. CFusion_Settings_Refresh
        1. CFusion_Settings_Refresh
      45. CFusion_VerifyMail
        1. CFusion_VerifyMail
      46. CF_GetDataSourceUserName
        1. CF_GetDataSourceUserName
      47. CF_IsColdFusionDataSource
        1. CF_IsColdFusionDataSource
      48. CF_SetDataSourcePassword
        1. CF_SetDataSourcePassword
      49. CF_SetDataSourceUserName
        1. CF_SetDataSourceUserName
      50. Chr
        1. Chr
      51. CJustify
        1. CJustify
      52. Compare
        1. Compare
      53. CompareNoCase
        1. CompareNoCase
      54. Cos
        1. Cos
      55. CreateDate
        1. CreateDate
      56. CreateDateTime
        1. CreateDateTime
      57. CreateObject
        1. CreateObject
      58. CreateODBCDate
        1. CreateODBCDate
      59. CreateODBCDateTime
        1. CreateODBCDateTime
      60. CreateODBCTime
        1. CreateODBCTime
      61. CreateTime
        1. CreateTime
      62. CreateTimeSpan
        1. CreateTimeSpan
      63. CreateUUID
        1. CreateUUID
      64. DateAdd
        1. DateAdd
      65. DateCompare
        1. DateCompare
      66. DateConvert
        1. DateConvert
      67. DateDiff
        1. DateDiff
      68. DateFormat
        1. DateFormat
      69. DatePart
        1. DatePart
      70. Day
        1. Day
      71. DayOfWeek
        1. DayOfWeek
      72. DayOfWeekAsString
        1. DayOfWeekAsString
      73. DayOfYear
        1. DayOfYear
      74. DaysInMonth
        1. DaysInMonth
      75. DaysInYear
        1. DaysInYear
      76. DE
        1. DE
      77. DecimalFormat
        1. DecimalFormat
      78. DecrementValue
        1. DecrementValue
      79. Decrypt
        1. Decrypt
      80. DeleteClientVariable
        1. DeleteClientVariable
      81. DirectoryExists
        1. DirectoryExists
      82. DollarFormat
        1. DollarFormat
      83. Duplicate
        1. Duplicate
      84. Encrypt
        1. Encrypt
      85. Evaluate
        1. Evaluate
      86. Exp
        1. Exp
      87. ExpandPath
        1. ExpandPath
      88. FileExists
        1. FileExists
      89. Find
        1. Find
      90. FindNoCase
        1. FindNoCase
      91. FindOneOf
        1. FindOneOf
      92. FirstDayOfMonth
        1. FirstDayOfMonth
      93. Fix
        1. Fix
      94. FormatBaseN
        1. FormatBaseN
      95. GetBaseTagData
        1. GetBaseTagData
      96. GetBaseTagList
        1. GetBaseTagList
      97. GetBaseTemplatePath
        1. GetBaseTemplatePath
      98. GetClientVariablesList
        1. GetClientVariablesList
      99. GetCurrentTemplatePath
        1. GetCurrentTemplatePath
      100. GetDirectoryFromPath
        1. GetDirectoryFromPath
      101. GetException
        1. GetException
      102. GetFileFromPath
        1. GetFileFromPath
      103. GetFunctionList
        1. GetFunctionList
      104. GetHTTPRequestData
        1. GetHTTPRequestData
      105. GetHTTPTimeString
        1. GetHTTPTimeString
      106. GetK2ServerCollections
        1. GetK2ServerCollections
      107. GetK2ServerDocCount
        1. GetK2ServerDocCount
      108. GetK2ServerDocCountLimit
        1. GetK2ServerDocCountLimit
      109. GetLocale
        1. GetLocale
      110. GetMetricData
        1. GetMetricData
      111. GetProfileString
        1. GetProfileString
      112. GetTempDirectory
        1. GetTempDirectory
      113. GetTempFile
        1. GetTempFile
      114. GetTemplatePath
        1. GetTemplatePath
      115. GetTickCount
        1. GetTickCount
      116. GetTimeZoneInfo
        1. GetTimeZoneInfo
      117. GetToken
        1. GetToken
      118. Hash
        1. Hash
      119. Hour
        1. Hour
      120. HTMLCodeFormat
        1. HTMLCodeFormat
      121. HTMLEditFormat
        1. HTMLEditFormat
      122. IIf
        1. IIf
      123. IncrementValue
        1. IncrementValue
      124. InputBaseN
        1. InputBaseN
      125. Insert
        1. Insert
      126. Int
        1. Int
      127. IsArray
        1. IsArray
      128. IsAuthenticated
        1. IsAuthenticated
      129. IsAuthorized
        1. IsAuthorized
      130. IsBinary
        1. IsBinary
      131. IsBoolean
        1. IsBoolean
      132. IsCustomFunction
        1. IsCustomFunction
      133. IsDate
        1. IsDate
      134. IsDebugMode
        1. IsDebugMode
      135. IsDefined
        1. IsDefined
      136. IsK2ServerDocCountExceeded
        1. IsK2ServerDocCountExceeded
      137. IsLeapYear
        1. IsLeapYear
      138. IsNumeric
        1. IsNumeric
      139. IsNumericDate
        1. IsNumericDate
      140. IsProtected
        1. IsProtected
      141. IsQuery
        1. IsQuery
      142. IsSimpleValue
        1. IsSimpleValue
      143. IsStruct
        1. IsStruct
      144. IsWDDX
        1. IsWDDX
      145. JavaCast
        1. JavaCast
      146. JSStringFormat
        1. JSStringFormat
      147. Lcase
        1. Lcase
      148. Left
        1. Left
      149. Len
        1. Len
      150. ListAppend
        1. ListAppend
      151. ListChangeDelims
        1. ListChangeDelims
      152. ListContains
        1. ListContains
      153. ListContainsNoCase
        1. ListContainsNoCase
      154. ListDeleteAt
        1. ListDeleteAt
      155. ListFind
        1. ListFind
      156. ListFindNoCase
        1. ListFindNoCase
      157. ListFirst
        1. ListFirst
      158. ListGetAt
        1. ListGetAt
      159. ListInsertAt
        1. ListInsertAt
      160. ListLast
        1. ListLast
      161. ListLen
        1. ListLen
      162. ListPrepend
        1. ListPrepend
      163. ListQualify
        1. ListQualify
      164. ListRest
        1. ListRest
      165. ListSetAt
        1. ListSetAt
      166. ListSort
        1. ListSort
      167. ListToArray
        1. ListToArray
      168. ListValueCount
        1. ListValueCount
      169. ListValueCountNoCase
        1. ListValueCountNoCase
      170. LJustify
        1. LJustify
      171. Log
        1. Log
      172. Log10
        1. Log10
      173. LSCurrencyFormat
        1. LSCurrencyFormat
      174. LSDateFormat
        1. LSDateFormat
      175. LSEuroCurrencyFormat
        1. LSEuroCurrencyFormat
      176. LSIsCurrency
        1. LSIsCurrency
      177. LSIsDate
        1. LSIsDate
      178. LSIsNumeric
        1. LSIsNumeric
      179. LSNumberFormat
        1. LSNumberFormat
      180. LSParseCurrency
        1. LSParseCurrency
      181. LSParseDateTime
        1. LSParseDateTime
      182. LSParseEuroCurrency
        1. LSParseEuroCurrency
      183. LSParseNumber
        1. LSParseNumber
      184. LSTimeFormat
        1. LSTimeFormat
      185. LTrim
        1. LTrim
      186. Max
        1. Max
      187. Mid
        1. Mid
      188. Min
        1. Min
      189. Minute
        1. Minute
      190. Month
        1. Month
      191. MonthAsString
        1. MonthAsString
      192. Now
        1. Now
      193. NumberFormat
        1. NumberFormat
      194. ParagraphFormat
        1. ParagraphFormat
      195. ParameterExists
        1. ParameterExists
      196. ParseDateTime
        1. ParseDateTime
      197. Pi
        1. Pi
      198. PreserveSingleQuotes
        1. PreserveSingleQuotes
      199. Quarter
        1. Quarter
      200. QueryAddColumn
        1. QueryAddColumn
      201. QueryAddRow
        1. QueryAddRow
      202. QueryNew
        1. QueryNew
      203. QuerySetCell
        1. QuerySetCell
      204. QuotedValueList
        1. QuotedValueList
      205. Rand
        1. Rand
      206. Randomize
        1. Randomize
      207. RandRange
        1. RandRange
      208. REFind
        1. REFind
      209. REFindNoCase
        1. REFindNoCase
      210. RemoveChars
        1. RemoveChars
      211. RepeatString
        1. RepeatString
      212. Replace
        1. Replace
      213. ReplaceList
        1. ReplaceList
      214. ReplaceNoCase
        1. ReplaceNoCase
      215. REReplace
        1. REReplace
      216. REReplaceNoCase
        1. REReplaceNoCase
      217. Reverse
        1. Reverse
      218. Right
        1. Right
      219. RJustify
        1. RJustify
      220. Round
        1. Round
      221. RTrim
        1. RTrim
      222. Second
        1. Second
      223. SetLocale
        1. SetLocale
      224. SetProfileString
        1. SetProfileString
      225. SetVariable
        1. SetVariable
      226. Sgn
        1. Sgn
      227. Sin
        1. Sin
      228. SpanExcluding
        1. SpanExcluding
      229. SpanIncluding
        1. SpanIncluding
      230. Sqr
        1. Sqr
      231. StripCR
        1. StripCR
      232. StructAppend
        1. StructAppend
      233. StructClear
        1. StructClear
      234. StructCopy
        1. StructCopy
      235. StructCount
        1. StructCount
      236. StructDelete
        1. StructDelete
      237. StructFind
        1. StructFind
      238. StructFindKey
        1. StructFindKey
      239. StructFindValue
        1. StructFindValue
      240. StructGet
        1. StructGet
      241. StructInsert
        1. StructInsert
      242. StructIsEmpty
        1. StructIsEmpty
      243. StructKeyArray
        1. StructKeyArray
      244. StructKeyExists
        1. StructKeyExists
      245. StructKeyList
        1. StructKeyList
      246. StructNew
        1. StructNew
      247. StructSort
        1. StructSort
      248. StructUpdate
        1. StructUpdate
      249. Tan
        1. Tan
      250. TimeFormat
        1. TimeFormat
      251. ToBase64
        1. ToBase64
      252. ToBinary
        1. ToBinary
      253. ToString
        1. ToString
      254. Trim
        1. Trim
      255. Ucase
        1. Ucase
      256. URLDecode
        1. URLDecode
      257. URLEncodedFormat
        1. URLEncodedFormat
      258. Val
        1. Val
      259. ValueList
        1. ValueList
      260. Week
        1. Week
      261. WriteOutput
        1. WriteOutput
      262. XMLFormat
        1. XMLFormat
      263. Year
        1. Year
      264. YesNoFormat
        1. YesNoFormat
    28. C. Example Database Tables
    29. D. ColdFusion Resources
      1. Official Allaire Resources
      2. Magazines
      3. Community Resources
      4. User Groups
    30. Index
    31. Colophon