ColdFusion

Creating a Bar Graph with HTML and CSS using ColdFusion - Part 2
Reader Level: Reader Level

Graphs in web pages and reporting applications can be put together with built-in ColdFusion functionality using the tag, or with JavaScript libraries that are widely available. However, sometimes you have a need for a simple bar graph that does not depend on this more advanced technology; working with ColdFusion servers that do not have functioning on the server, or targeting browsers that are not JavaScript enabled.

Bar graphs can be created quite easily using ancient HTML technology without the aid of more advanced techniques for simple bar graphs that display quickly and across all browsers. For this tutorial, I'll assume you know basic ColdFusion and SQL -- writing queries, views, and getting the results you want.

A bar graph can be built vertically or horizontally. The first part showed the horizontal graph. This part will show the vertical graphing process. The basic process is to create the SQL query that you want to view the result as a graph, use a slim image that can be stretched as a basis of the bar graph, and set the height of the image based on the value of your data. For example, a value of $50 might translate to 50 pixels high, and $500 might translate to 500 pixels high. Using simple formulas, we'll create the graphs.

The Creating a Bar Graph with HTML and CSS Series:
Creating a Bar Graph with HTML and CSS using PHP - Part 1
Creating a Bar Graph with HTML and CSS using ColdFusion - Part 1
Creating a Bar Graph with HTML and CSS using PHP - Part 2
Creating a Bar Graph with HTML and CSS using ColdFusion - Part 2

Creating a Bar Graph with HTML and CSS using ColdFusion Part 1
Reader Level: Reader Level

Graphs in web pages and reporting applications can be put together with built-in ColdFusion functionality using the tag, or with JavaScript libraries that are widely available. However, sometimes you have a need for a simple bar graph that does not depend on this more advanced technology; working with ColdFusion servers that do not have functioning on the server, or targeting browsers that are not JavaScript enabled. Bar graphs can be created quite easily using ancient HTML technology without the aid of more advanced techniques for simple bar graphs that display quickly and across all browsers. For this tutorial, I'll assume you know basic ColdFusion -- writing queries and getting the results you want.

A bar graph can be built vertically or horizontally. I'll show a simple horizontal graph. The basic process is to create the SQL query that you want to view the result as a graph, use a slim image that can be stretched as a basis of the bar graph, and set the width of the image based on the value of your data. For example, a value of $50 might translate to 50 pixels wide, and $500 might translate to 500 pixels wide. Using simple formulas, we'll create the graphs.

The Creating a Bar Graph with HTML and CSS Series:
Creating a Bar Graph with HTML and CSS using PHP - Part 1
Creating a Bar Graph with HTML and CSS using ColdFusion - Part 1
Creating a Bar Graph with HTML and CSS using PHP - Part 2
Creating a Bar Graph with HTML and CSS using ColdFusion - Part 2

Send Link to a Friend for ColdFusion - Part 2
Reader Level: Reader Level

This article will show how to create a simple "send link to a friend" form for a ColdFusion web site, which is a frequently requested topic. Part 1 will create the basic form and email functionality using the CFMAIL tag. Part 2 adds some validation to the fields using Spry and some server side form checking.

The Send Link to a Friend Series:
Send Link to a Friend for PHP - Part 1
Send Link to a Friend for PHP - Part 2
Send Link to a Friend for ColdFusion - Part 1
Send Link to a Friend for ColdFusion - Part 2

Send Link to a Friend for ColdFusion - Part 1
Reader Level: Reader Level

This article will show how to create a simple "send link to a friend" form for a ColdFusion web site, which is a frequently requested topic. Part 1 will create the basic form and email functionality using the CFMAIL tag. Part 2 will add some validation to the fields using Spry and some server side form scrubbing.

The Send Link to a Friend Series:
Send Link to a Friend for PHP - Part 1
Send Link to a Friend for PHP - Part 2
Send Link to a Friend for ColdFusion - Part 1
Send Link to a Friend for ColdFusion - Part 2

Cartweaver Admin Hints and Mods - Part 10: Creating a Taxes Collected Report Using ColdFusion
Reader Level: Reader Level

Cartweaver is an online shopping cart system available from www.cartweaver.com for PHP, ColdFusion, and ASP. It is intended as an easy-to-use solution for building an online store. It doesn't have all the bells and whistles of some of the more pricey carts available, but with a little coding, many new features can be added. This is part 10 in the series and will show how to set up a tax collected report in ColdFusion, using the existing orders report as a starting point.

The Cartweaver Admin Hints and Mods Series:
Cartweaver Admin Hints and Mods - Part 1: Creating a Low Stock Warning for PHP
Cartweaver Admin Hints and Mods - Part 2: Creating a Low Stock Warning for ColdFusion
Cartweaver Admin Hints and Mods - Part 3: Creating an Order Report Graph for ColdFusion
Cartweaver Admin Hints and Mods - Part 4: Creating an Order Report Graph for PHP
Cartweaver Admin Hints and Mods - Part 5: Adding Customer Search Parameters for ColdFusion
Cartweaver Admin Hints and Mods - Part 6 Adding Customer Search Parameters for PHP
Cartweaver Admin Hints and Mods - Part 7: Creating and Order Report for Products Using PHP
Cartweaver Admin Hints and Mods - Part 8: Creating an Order Report for Products Using ColdFusion
Cartweaver Admin Hints and Mods - Part 9: Creating a Taxes Collected Report Using PHP
Cartweaver Admin Hints and Mods - Part 10: Creating a Taxes Collected Report Using ColdFusion

Backing Up Databases For Offline Storage
Reader Level: Reader Level

If you are running your own server, then many hats are needed to ensure your clients data is correctly maintained. Everything from the web site and associated files, through to any database that might be used to support the web site needs to be backed up.

In this tutorial we will look at how to efficiently back up your SQL Server Databases and copy them down from the remote server for storing in a separate location. I use hardware within my office for this storage, the databases are copied down to my main machine and then copied across to an external hard drive. This process provides the latest backup in three different locations as well as providing a backup stack of the last thirty days for each database, that should cover all the bases nicely!

ColdFusion Worst Practices Part 2: Abusing Pound Signs (#)
Reader Level: Reader Level

The pound sign (#) has a special meaning in ColdFusion. It tells the application server to evaluate what is inside the matching pound signs as a variable or an expression. If the value is a variable, or can be treated as an expression or a function, ColdFusion replaces the whole thing with the result of the evaluation.

However, using # signs is not always the best choice. You should not get it the habit of using them where they are not required. Overuse of pound signs can cause the server to work too hard and eventually cause performance issues. In this article we will look at several examples of when not using the # sign is the better choice.

The ColdFusion Worst Practices Series:
ColdFusion Worst Practices - Part 1: Misuing CFOUTPUT
ColdFusion Worst Practices - Part 2: Abusing Pound Signs (#)

Cartweaver Admin Hints and Mods - Part 8: Creating an Order Report for Products Using ColdFusion
Reader Level: Reader Level

Cartweaver is an online shopping cart system available from www.cartweaver.com for PHP, ColdFusion, and ASP. It is intended as an easy-to-use solution for building an online store. It doesn't have all the bells and whistles of some of the more pricey carts available, but with a little coding, many new features can be added. This is part 8 in the series and will show how to set up a product sales report in ColdFusion, using the existing orders report as a starting point.

The Cartweaver Admin Hints and Mods Series:
Cartweaver Admin Hints and Mods - Part 1: Creating a Low Stock Warning for PHP
Cartweaver Admin Hints and Mods - Part 2: Creating a Low Stock Warning for ColdFusion
Cartweaver Admin Hints and Mods - Part 3: Creating an Order Report Graph for ColdFusion
Cartweaver Admin Hints and Mods - Part 4: Creating an Order Report Graph for PHP
Cartweaver Admin Hints and Mods - Part 5: Adding Customer Search Parameters for ColdFusion
Cartweaver Admin Hints and Mods - Part 6 Adding Customer Search Parameters for PHP
Cartweaver Admin Hints and Mods - Part 7: Creating and Order Report for Products Using PHP
Cartweaver Admin Hints and Mods - Part 8: Creating an Order Report for Products Using ColdFusion
Cartweaver Admin Hints and Mods - Part 9: Creating a Taxes Collected Report Using PHP
Cartweaver Admin Hints and Mods - Part 10: Creating a Taxes Collected Report Using ColdFusion

ColdFusion Worst Practices - Part 1: Misusing CFOUTPUT Free!
Reader Level: Reader Level

In this series, we will try to highlight some worst practices in the use of ColdFusion syntax, features and options. These are not necessarily the kinds of things that will stop your site from working, but they are things that create bottlenecks, expose security weaknesses, or make your code difficult to read and maintain. In today's installment, we will look at the misuse of the CFOUTPUT tag.

The ColdFusion Worst Practices Series:
ColdFusion Worst Practices - Part 1: Misuing CFOUTPUT
ColdFusion Worst Practices - Part 2: Abusing Pound Signs (#)

Creating a Form Confirmation Page in ColdFusion
Reader Level: Reader Level

A confirmation page is the last page you reach before submitting a form -- you fill in the fields, click submit, review your information, and then submit one final time. Confirmation pages can be built in different ways. I'll show one method using ColdFusion that utilizes hidden form fields to post to your final action page. I'll leave the bells and whistles to the reader (validation, css, etc) and show the meat of the technique that is being used.

Cartweaver Admin Hints and Mods - Part 5: Adding Customer Search Parameters for ColdFusion
Reader Level: Reader Level

Cartweaver is an online shopping cart system available from www.cartweaver.com for PHP, ColdFusion, and ASP. It is intended as an easy-to-use solution for building an online store. With a little coding, many new features can be added. This is the fifth part in the series and will show how to modify the Customer search form in the admin for additional search fields in the ColdFusion version. The next part will show the same for PHP.

The Cartweaver Admin Hints and Mods Series:
Cartweaver Admin Hints and Mods - Part 1: Creating a Low Stock Warning for PHP
Cartweaver Admin Hints and Mods - Part 2: Creating a Low Stock Warning for ColdFusion
Cartweaver Admin Hints and Mods - Part 3: Creating an Order Report Graph for ColdFusion
Cartweaver Admin Hints and Mods - Part 4: Creating an Order Report Graph for PHP
Cartweaver Admin Hints and Mods - Part 5: Adding Customer Search Parameters for ColdFusion
Cartweaver Admin Hints and Mods - Part 6 Adding Customer Search Parameters for PHP
Cartweaver Admin Hints and Mods - Part 7: Creating and Order Report for Products Using PHP
Cartweaver Admin Hints and Mods - Part 8: Creating an Order Report for Products Using ColdFusion
Cartweaver Admin Hints and Mods - Part 9: Creating a Taxes Collected Report Using PHP
Cartweaver Admin Hints and Mods - Part 10: Creating a Taxes Collected Report Using ColdFusion

Cartweaver Admin Hints and Mods - Part 3: Creating an Order Report Graph for ColdFusion
Reader Level: Reader Level

Cartweaver is an online shopping cart system available from www.cartweaver.com for PHP, ColdFusion, and ASP. It is intended as an easy-to-use solution for building an online store. It doesn't have all the bells and whistles of some of the more pricey carts available, but with a little coding, many new features can be added.

Part 2 showed how to add a low-stock warning to the Cartweaver admin for ColdFusion. This part will show a simple order graphical report. SQL will show how to write the query for SQL Server, the most popular ColdFusion database. Other databases will have similar syntax.

The Cartweaver Admin Hints and Mods Series:
Cartweaver Admin Hints and Mods - Part 1: Creating a Low Stock Warning for PHP
Cartweaver Admin Hints and Mods - Part 2: Creating a Low Stock Warning for ColdFusion
Cartweaver Admin Hints and Mods - Part 3: Creating an Order Report Graph for ColdFusion
Cartweaver Admin Hints and Mods - Part 4: Creating an Order Report Graph for PHP
Cartweaver Admin Hints and Mods - Part 5: Adding Customer Search Parameters for ColdFusion
Cartweaver Admin Hints and Mods - Part 6 Adding Customer Search Parameters for PHP
Cartweaver Admin Hints and Mods - Part 7: Creating and Order Report for Products Using PHP
Cartweaver Admin Hints and Mods - Part 8: Creating an Order Report for Products Using ColdFusion
Cartweaver Admin Hints and Mods - Part 9: Creating a Taxes Collected Report Using PHP
Cartweaver Admin Hints and Mods - Part 10: Creating a Taxes Collected Report Using ColdFusion

Cartweaver Admin Hints and Mods - Part 2: Creating a Low Stock Warning for ColdFusion
Reader Level: Reader Level

Cartweaver is an online shopping cart system available from www.cartweaver.com for PHP, ColdFusion, and ASP. It is intended as an easy-to-use solution for building an online store. It doesn't have all the bells and whistles of some of the more pricey carts available, but with a little coding, many new features can be added.

Part 1 showed how to add a low-stock warning to the Cartweaver admin for PHP. Part 2 will show how to add a low-stock warning to the Cartweaver admin for ColdFusion.

The Cartweaver Admin Hints and Mods Series:
Cartweaver Admin Hints and Mods - Part 1: Creating a Low Stock Warning for PHP
Cartweaver Admin Hints and Mods - Part 2: Creating a Low Stock Warning for ColdFusion
Cartweaver Admin Hints and Mods - Part 3: Creating an Order Report Graph for ColdFusion
Cartweaver Admin Hints and Mods - Part 4: Creating an Order Report Graph for PHP
Cartweaver Admin Hints and Mods - Part 5: Adding Customer Search Parameters for ColdFusion
Cartweaver Admin Hints and Mods - Part 6 Adding Customer Search Parameters for PHP
Cartweaver Admin Hints and Mods - Part 7: Creating and Order Report for Products Using PHP
Cartweaver Admin Hints and Mods - Part 8: Creating an Order Report for Products Using ColdFusion
Cartweaver Admin Hints and Mods - Part 9: Creating a Taxes Collected Report Using PHP
Cartweaver Admin Hints and Mods - Part 10: Creating a Taxes Collected Report Using ColdFusion

Cartweaver Admin Hints and Mods Part 1: Creating a Low Stock Warning for PHP Free!
Reader Level: Reader Level

Cartweaver is an online shopping cart system available from www.cartweaver.com for PHP, ColdFusion, and ASP. It is intended as an easy-to-use solution for building an online store. It doesn't have all the bells and whistles of some of the more pricey carts available, but with a little coding, many new features can be added.

In Part 1 of this series, we will show how to add a low-stock warning to the Cartweaver admin.

The Cartweaver Admin Hints and Mods Series:
Cartweaver Admin Hints and Mods - Part 1: Creating a Low Stock Warning for PHP
Cartweaver Admin Hints and Mods - Part 2: Creating a Low Stock Warning for ColdFusion
Cartweaver Admin Hints and Mods - Part 3: Creating an Order Report Graph for ColdFusion
Cartweaver Admin Hints and Mods - Part 4: Creating an Order Report Graph for PHP
Cartweaver Admin Hints and Mods - Part 5: Adding Customer Search Parameters for ColdFusion
Cartweaver Admin Hints and Mods - Part 6 Adding Customer Search Parameters for PHP
Cartweaver Admin Hints and Mods - Part 7: Creating and Order Report for Products Using PHP
Cartweaver Admin Hints and Mods - Part 8: Creating an Order Report for Products Using ColdFusion
Cartweaver Admin Hints and Mods - Part 9: Creating a Taxes Collected Report Using PHP
Cartweaver Admin Hints and Mods - Part 10: Creating a Taxes Collected Report Using ColdFusion

Conditional ColdFusion: Using the IIF Function
Reader Level: Reader Level

There are many uses for conditional statements in programming. The basic principle of conditional programming is that you want to execute code based on a certain condition. The essence of conditional programming is executing code based on the condition being true, with an alternate piece of code being executed if the condition is not true. The IIF() function in ColdFusion provides a shortcut to using an If/else functionality. This article describes the IIF() function.

Useful 404 Pages in ColdFusion
Reader Level: Reader Level

In ColdFusion it is possible to create 404 error pages that can provide useful information t the user about the source of their error -- such as a bad link from another site, a bad internal link or simply a mis-typed URL. This article shows you how to add this type of intelligence to your 404 error pages in ColdFusion.

ColdFusion Application Logging with Twitter: Part 2
Reader Level: Reader Level

In Part 2 of this two-part series we look at how Twitter can be used to pass messages between two ColdFusion applications -- a poor-man's version of a message queue system.

The ColdFusion Application Logging with Twitter Series:
ColdFusion Application Logging with Twitter: Part 1
ColdFusion Logging with Twitter: Part 2

ColdFusion Application Logging with Twitter: Part 1
Reader Level: Reader Level

Twitter may been seen simply as a way to blog from a mobile phone. But -- in reality it is so much more. The very simplicity of the Twitter platform makes it an elegant way to log and monitor application activity in your ColdFusion applications. This article, the first of a two-part series, shows you how to generate application logs using Twitter which can then be easily monitored by support or development staff.

The ColdFusion Application Logging with Twitter Series:
ColdFusion Application Logging with Twitter: Part 1
ColdFusion Logging with Twitter: Part 2

ColdFusion Contact Form in One Easy File - Part 3
Reader Level: Reader Level

Michael Evangelista is a freelance web developer, ColdFusion programmer, and owner of a successful web and print design company based in southern Utah. Michael's company, Evangelista Design, has grown from a locally-oriented small business web design company to an international team of designers and ColdFusion developers offering a wide range of online business solutions, including full-service web hosting, custom content management applications, corporate data systems, and more.

In Part 2 of this tutorial, we added several effective spam-prevention methods to our simple contact form, including a simple hidden honeypot field, comparison of submitted values against an easy-to-manage list of banned words and phrases, and a quick check to prevent submission of any html content (containing < and >).

Wired into a single ColdFusion file, we left off with a nifty little spam-blocking, self-submitting, auto-responding, error-handling dynamic gizmo, ready to be battle-tested in the war against spam. You should be able to drop the sample file from Part 2 into any .cfm page, adjust the cfmail settings and other options in the code, and go... it's really that easy!

So... if it works, what's left?

As with any creative or code-related project, there are always aspects that can be cleaned up, simplified and polished. In Part 3, the final part of this series, we'll do some of each:

  • Streamline our error handling and error message display
  • Simplify installation and customization options with easy-to-configure scoped variables
  • Add custom client-side validation using the jQuery JavaScript library
  • ...all in one simple bundle of files that you can insert into any page!

The ColdFusion Contact Forms in One Easy File Series:
ColdFusion Contact Forms in One Easy File - Part 1
ColdFusion Contact Forms in One Easy File - Part 2
ColdFusion Contact Forms in One Easy File - Part 3



Integrating PayPal Payments Into Your Site with ColdFusion: Part 4
Reader Level: Reader Level

PayPal Website Payments are fairly easy to use once you understand them. This series covers integrating PayPal payments into your ColdFusion Web site. The fourth, and final, article in the series looks at using PayPal's shopping cart as well as dynamically creating encrypted payment buttons in your application.

The Integrating PayPal Payments Into Your Site with ColdFusion Series:
Integrating PayPal Payments Into Your Site with ColdFusion: Part 1
Integrating PayPal Payments Into Your Site with ColdFusion: Part 2
Integrating PayPal Payments Into Your Site with ColdFusion: Part 3
Integrating PayPal Payments Into Your Site with ColdFusion: Part 4

Integrating PayPal Payments into your site with ColdFusion: Part 3
Reader Level: Reader Level

This is the third article in a series about integrating PayPal payments into your ColdFusion Web sites and applications. In the first article we learned about the different PayPal payment services and set up our PayPal account and developer sandbox accounts. The second article introduced the payments workflow, the creation of simple pre-configured buttons and the use of the testing sandbox to test your site or application.

This article is where things get really interesting. So far, everything we've looked at is useful but only to a point. You can create lots of different buttons to sell different products, but everything is static. You can't dynamically build buttons, accumulate products in a PayPal shopping cart or confirm -- and react to -- payments within your site.

This article is where we get into some of this:

  • Building dynamic buttons
  • Processing payment success information in your application

The Integrating PayPal Payments Into Your Site with ColdFusion Series:
Integrating PayPal Payments Into Your Site with ColdFusion: Part 1
Integrating PayPal Payments Into Your Site with ColdFusion: Part 2
Integrating PayPal Payments Into Your Site with ColdFusion: Part 3
Integrating PayPal Payments Into Your Site with ColdFusion: Part 4



Integrating PayPal Payments Into Your Site with ColdFusion: Part 2
Reader Level: Reader Level

This is the second article in a series about integrating PayPal payments into your ColdFusion Web sites and applications. In the first article we learned about the different PayPal payment services and set up our PayPal account and developer sandbox accounts.

This article looks at the details of the PayPal payments workflow, provides a simple example of using a PayPal pre-configured payments button and then moves on to explain how to work with the sandbox to experiment with payments in your application.

The Integrating PayPal Payments Into Your Site with ColdFusion Series:
Integrating PayPal Payments Into Your Site with ColdFusion: Part 1
Integrating PayPal Payments Into Your Site with ColdFusion: Part 2
Integrating PayPal Payments Into Your Site with ColdFusion: Part 3
Integrating PayPal Payments Into Your Site with ColdFusion: Part 4

Integrating PayPal Payments Into Your Site with ColdFusion: Part 1 Free!
Reader Level: Reader Level

PayPal Website Payments are fairly easy to use once you understand them. This series covers integrating PayPal payments into your ColdFusion web site. The first article in the series provides an overview of PayPal's offerings and then walks you through some basic tasks needed to get ready to implement your own PayPal solution with ColdFusion.

The Integrating PayPal Payments Into Your Site with ColdFusion Series:
Integrating PayPal Payments Into Your Site with ColdFusion: Part 1
Integrating PayPal Payments Into Your Site with ColdFusion: Part 2
Integrating PayPal Payments Into Your Site with ColdFusion: Part 3
Integrating PayPal Payments Into Your Site with ColdFusion: Part 4

ColdFusion Contact Forms in One Easy File - Part 2
Reader Level: Reader Level

In Part 1 of this tutorial, we created a simple ColdFusion contact form, and set up some basic checking for a few required values, using validation and a very simple server-side check for an email address.

To process the form contents, we set up two dynamic messages - one to send the email to the site owner, and a custom auto-response 'thank you' message back to the person submitting the form.

Simple, easy, and it works... but we didn't do much to restrict the flow of content, including unwanted junk mail, into our contact form and our customers' inboxes.

In this section of the tutorial (Part 2 of 3), we will add several methods of spam prevention to our simple contact form, including:

  • Trapping automatic form submission (junk mail bots) with a "Honeypot" field
  • Preventing html characters '<' & '>'
  • Blocking a defined list of words and phrases, including common spam terminology and nasty words we don't want in our email
  • Advanced validation of the email address format

...all in one simple file that you can insert into any page!

Michael Evangelista is a freelance web developer, ColdFusion programmer, and owner of a successful web and print design company based in southern Utah. Michael's company, Evangelista Design, has grown from a locally-oriented small business web design company to an international team of designers and ColdFusion developers offering a wide range of online business solutions, including full-service web hosting, custom content management applications, corporate data systems, and more.

The ColdFusion Contact Forms in One Easy File Series:
ColdFusion Contact Forms in One Easy File - Part 1
ColdFusion Contact Forms in One Easy File - Part 2
ColdFusion Contact Forms in One Easy File - Part 3



ColdFusion and Spry: Part 4
Reader Level: Reader Level

SPRY is a JavaScript-based framework that provides AJAX-powered dynamic web content. There are other JavaScript libraries available to accomplish similar results (such a JSON, jQuery, etc.) The SPRY library is produced by Adobe Labs, and, as of this writing, is in 1.6.1 release. (SPRY at Adobe Labs.) Although SPRY can be used with other server technologies, such as PHP, ASP.net, etc., SPRY seems to employ techniques that are especially intuitive to the ColdFusion developer.

In Parts I & II, we constructed a simple Picture Gallery with clickable thumbnails that then revealed full-size pics, some with further detail. The SPRY techniques used XML and its source was a static, hand-coded XML file. In Part III, we used one ColdFusion technique to create our XML source (using the tag). In this final part, we will look at another dynamic method of creating XML, as well as suggest other resources to quickly produce XML from data types, such as queries, arrays, etc. Unless your data rarely changes, creating XML dynamically is a more practical approach than hard coding. These latter techniques are not special for SPRY, but can be used anytime you want ColdFusion to produce XML, whether for something like SPRY, direct output to a web page, or Flash/Flex applications.

The CF techniques demonstrated can be used to output XML directly on the fly or provide XML files saved on the hard drive for direct access. For the latter purpose, ColdFusion might be used to update a certain XML file each time the data changes.

Keith Dodd got into web development as a second career following 30 years in public education, with 19 as a middle school principal. With help from friends and a lot of reading, he got into ColdFusion (version 3) and in 2003 was certificated as an Advanced ColdFusion MX Developer. In recent years, he has worked with Flash and the integration of Flash with ColdFusion (with a lot of help from CMX resources). He is just starting to delve into Flex.

The ColdFusion and Spry Series:
ColdFusion and Spry: Part 1
ColdFusion and Spry: Part 2
ColdFusion and Spry: Part 3
ColdFusion and Spry: Part 4

Preventing SQL Injection Attacks in ColdFusion
Reader Level: Reader Level

SQL injection is a technique used by hackers to break into your database. SQL Server has been a target because of the vast number of users who do not use it properly. The sad fact is, web developers are assuming all roles in the development of their web sites, and many of them do not have some simple understandings of how security works in a database. A compromised database can destroy your business, or at the very least, give you a few headaches and wasted time restoring from backups. This article will show a few things that will help your web page against attacks.

ColdFusion Contact Forms in One Easy File - Part 1 Free!
Reader Level: Reader Level

One of the most common and obvious needs of any professional web developer is the ability to collect information from an HTML form and submit it via email. There are many reasons why this is superior to a simple 'mailto' link, the most important being the ability to hide your actual email address from the ever-more-voracious spambots that plague our online universe (they love to find links like <a href="mailto:me@lotsofspamplease.com"> ... your address becomes a free lunch for the harvester spiders).

In this easy-to-follow tutorial you will learn how to :
  • Submit a simple html form with any fields you like via email from any ColdFusion page
  • Double-validate submitted info with <cfform> and server-side checking
  • Create an automatic custom-formatted mail message
  • Send the user a custom-formatted auto-responder 'thanks' message
  • Hide your email address from spambots
  • Send email so that replying goes to the sender, not back to the web site

...all in one simple <cfinclude> file that you can insert into any page!

This tutorial assumes you have some experience with html form elements, and very basic ColdFusion tags such as <:cfif>, <cfinclude>, <cfparam> and <cfoutput>. A general concept of <cfform> and the 'required' attribute for <cfinput> might also be helpful, but is not required.

Michael Evangelista is a freelance web developer, ColdFusion programmer, and owner of a successful web and print design company based in southern Utah. Michael's company, Evangelista Design, has grown from a locally-oriented small business web design company to an international team of designers and ColdFusion developers offering a wide range of online business solutions, including full-service web hosting, custom content management applications, corporate data systems, and more.

The ColdFusion Contact Forms in One Easy File Series:
ColdFusion Contact Forms in One Easy File - Part 1
ColdFusion Contact Forms in One Easy File - Part 2
ColdFusion Contact Forms in One Easy File - Part 3



ColdFusion and Spry: Part 3
Reader Level: Reader Level

Spry is a JavaScript-based framework that provides AJAX-powered dynamic web content. There are other Javascript libraries available to accomplish similar results (such a JSON, jQuery, etc.). The Spry library is produced by Adobe Labs, and, as of this writing, is in 1.6.1 release. (SPRY at Adobe Labs.) Although SPRY can be used with other server technologies, such as PHP, ASP.net, etc., Spry seems to employ techniques that are especially intuitive to the ColdFusion developer.

The Spry parts of this tutorial series (Parts I & II) just scratched the surface of working with Spry. However, they should have given you the basic concepts in a simplified manner, allowing you to go much deeper on your own. When you download Spry you get not only the necessary library, but many examples, as well as Spry widgets to accomplish many interesting effects. These can be invaluable in learning to use Spry.

In Parts I & II, we constructed a simple Picture Gallery with clickable thumbnails that then revealed full-size pics (and some with further detail). The Spry techniques used XML and its source was a static, hand-coded XML file.

In Parts III & IV, we will use ColdFusion techniques to create our XML source. Unless your data rarely changes, creating XML dynamically is a more practical approach than hard coding. (These latter techniques are not special for Spry, but can be used any time you want ColdFusion to produce XML, whether for something like Spry, direct output to a web page, or Flash/Flex applications.)

Keith Dodd got into web development as a second career following 30 years in public education, with 19 as a middle school principal. With help from friends and a lot of reading, he got into ColdFusion (version 3) and in 2003 was certificated as an Advanced ColdFusion MX Developer. In recent years, he has worked with Flash and the integration of Flash with ColdFusion (with a lot of help from CMX resources). He is just starting to delve into Flex.

The ColdFusion and Spry Series:
ColdFusion and Spry: Part 1
ColdFusion and Spry: Part 2
ColdFusion and Spry: Part 3
ColdFusion and Spry: Part 4

ColdFusion and Spry: Part 2
Reader Level: Reader Level

Spry is a JavaScript-based framework that provides AJAX-powered dynamic web content. There are other JavaScript libraries available to accomplish similar results (such a JSON, jQuery, etc.). The Spry library is produced by Adobe Labs, and, as of this writing, is in 1.6.1 release. (SPRY at Adobe Labs.) Although SPRY can be used with other server technologies, such as PHP, ASP.net, etc., Spry seems to employ techniques that are especially intuitive to the ColdFusion developer.

This series of tutorials just scratches the surface of working with Spry. However, it should give you the basic concepts in a simplified manner, allowing you to go much deeper after you have the basic concepts. A major plus for learning to use Spry is the set of many demos, articles, and samples. When you download Spry you get not only the necessary library, but these many examples, as well as Spry widgets to accomplish many interesting effects.

In Part I, we began construction of a simple Picture Gallery that would include an overview, a strip of thumbnails, and a detail area to display a full picture, along with caption and other possible information. We created two Spry datasets, dsOver and dsPics, and used these to accomplish the plan for the Overview and Thumbnail sections illustrated above.

In Part II, we will turn our attention to the Detail area.

Keith Dodd got into web development as a second career following 30 years in public education, with 19 as a middle school principal. With help from friends and a lot of reading, he got into ColdFusion (version 3) and in 2003 was certificated as an Advanced ColdFusion MX Developer. In recent years, he has worked with Flash and the integration of Flash with ColdFusion (with a lot of help from CMX resources). He is just starting to delve into Flex.

The ColdFusion and Spry Series:
ColdFusion and Spry: Part 1
ColdFusion and Spry: Part 2
ColdFusion and Spry: Part 3
ColdFusion and Spry: Part 4

ColdFusion and Spry: Part 1 Free!
Reader Level: Reader Level

Spry is a JavaScript-based framework that provides AJAX-powered dynamic web content. There are other JavaScript libraries available to accomplish similar results. such a JSON, jQuery, etc. (On this CMX site, Rob Williams has a couple of series on jQuery and jQuery UI Components.)The Spry library is produced by Adobe Labs, and, as of this writing, is in 1.6.1 release. (SPRY at Adobe Labs.) Although SPRY can be used with other server technologies, such as PHP, ASP.net, etc., Spry seems to employ techniques that are especially intuitive to the ColdFusion developer.

Keith Dodd got into web development as a second career following 30 years in public education, with 19 as a middle school principal. With help from friends and a lot of reading, he got into ColdFusion (version 3) and in 2003 was certificated as an Advanced ColdFusion MX Developer. In recent years, he has worked with Flash and the integration of Flash with ColdFusion (with a lot of help from CMX resources). He is just starting to delve into Flex.

The ColdFusion and Spry Series:
ColdFusion and Spry: Part 1
ColdFusion and Spry: Part 2
ColdFusion and Spry: Part 3
ColdFusion and Spry: Part 4

Inserting Excel File Values Into The Database
Reader Level: Reader Level

In earlier articles, we read an Excel file using ColdFusion and validated the values in the fields of the spreadsheet. In this article, we will insert the values into a database table.

The Excel and ColdFusion Series:
Reading Excel Files in ColdFusion
Validating an Imported Excel File
Inserting Excel File Values Into the Database

Quickshot - Missing Images in CFDocument Free!
Reader Level: Reader Level

ColdFusion's tag makes creating dynamic PDF images on the fly a breeze. There have been problems, though, including images in those documents. Many times, for various reasons, you can end up with a perfectly valid image reference in the HTML portion of your document that becomes a red X when the HTML is PDF'd.

Validating an Imported Excel File
Reader Level: Reader Level

In a previous article, we covered using the POI library in ColdFusion to import native Excel files and process their worksheets and columns. This becomes very handy when you need to import data into an application that is provided via Excel. But before you go dumping data into a database and potentially messing something up, it is always wise to validate that the spreadsheet contains the columns and datatypes that you expect.

The Excel and ColdFusion Series:
Reading Excel Files in ColdFusion
Validating an Imported Excel File
Inserting Excel File Values Into the Database

Formatting Dates in CFGrid
Reader Level: Reader Level

You surely know by now that ColdFusion 8 includes built-in Ajax functionality wrapped up in easy to use tags. Part of this functionality comes in an update to the CFGrid tag. In prior versions, CFGrid allowed you to create a sortable and updatable grid in the form of a Java applet or a Flash component. CF8 adds the HTML format to CFGrid which renders an ajaxified HTML grid that is sortable and editable.

ColdFusion 8 and AJAX Series - Part 4: CFWindow
Reader Level: Reader Level

Continuing on our ColdFusion 8 and AJAX series we will take a look at CFWindow. So what are windows and why would I use them? Unlike pop-up windows you would create with the target attribute or javascript that can be blocked or not function at all depending on the user or there browser settings. CFWindow is a simple DHTML window for displaying information. Follow along as we explore the tag.

The ColdFusion 8 and AJAX Series:
ColdFusion 8 and AJAX Series - Part 1a: Layouts
ColdFusion 8 and AJAX Series - Part 1b: Layouts
ColdFusion 8 and AJAX Series - Part 2: Tabbed Layouts
ColdFusion 8 and AJAX Series - Part 3: Pods
ColdFusion 8 and AJAX Series - Part 4: CFWindow

Setting Up a Scheduled Task in ColdFusion
Reader Level: Reader Level

ColdFusion has a mechanism in the ColdFusion admin to set up a scheduled task. These scheduled tasks are ColdFusion pages that you want to run on a schedule -- daily, weekly, hourly, every Monday at 1pm, or on any other schedule of your choosing. The task can be any ColdFusion page. This article will show how to set up a scheduled task through the ColdFusion administrator.

Quick Shot - Validating Imported Dates in ColdFusion Free!
Reader Level: Reader Level

In previous articles, we have discussed the way that Microsoft stores dates in SQL Server and Excel and how that can be an advantage and a hindrance as you deal with your data. There is a method to the way that MS products store dates. It allows you to deal with time against an absolute reference rather than being concerned with its formatting (whether US, Euro, or other). But the way ColdFusion's validation functions treat dates can be tricky if you are trying to get some concrete assurance that you are processing valid information.

Adding a JDBC Driver to ColdFusion
Reader Level: Reader Level

ColdFusion ships with JDBC drivers for most of the major databases, however, all JDBC drivers are not created equal. There are good ones and bad ones, and some of the newer drivers will improve performance and stability. In addition, some of the drivers that ship with various versions of ColdFusion have known problems (MySQL comes to mind). Also, there are databases that are not listed in the standard ColdFusion install that you may want to connect to. This article will show the simple process for adding a new driver to the ColdFusion server.

Reading Excel Files in ColdFusion
Reader Level: Reader Level

ColdFusion has built in list functions that make it easy to handle comma separated lists that you can export from Excel. But sometimes you need to read an actual Excel binary file, which allows you to access additional information within the spreadsheet. Luckily ColdFusion has built in functionality that allows you to do that as well.

The Excel and ColdFusion Series:
Reading Excel Files in ColdFusion
Validating an Imported Excel File
Inserting Excel File Values Into the Database

Using CF Tags from CFScript Free!
Reader Level: Reader Level

When working in ColdFusion, you have two basic ways of coding: ColdFusion tags and CFScript. Both are legitimate and both provide certain advantages. With ColdFusion tags, you have a full arsenal of functionality available. With CFScript, you have more basic script operations available, such as looping, setting variables, conditions, and other more mundane tasks. Frequently when writing scripts, however, you need some functionality that is only available to a ColdFusion tag. The more obvious solution is to close the tag, execute your tag, then re-open the tag to resume your coding. We'll talk about another way to approach this situation -- create functions that mimic CF tags.

Using Cookies to Log In A User
Reader Level: Reader Level

In a previous article, we looked at setting and deleting cookies in ColdFusion. In this installment, we will use those cookies to remember a user and automatically log them into a site.

Using Multiple Application.cfc Files - Part 2
Reader Level: Reader Level

In ColdFusion 7, the Application.cfc file became the application base structure of choice over the Application.cfm file. As you know, the Application.cfm file is the central file in a ColdFusion application that is run before every page in your site. Global functions and variables that are used by the application can be located in this file, or inside files that are included in Application.cfm. Now, with Application.cfc, we can fine-tune the application with application events: onRequestStart, onRequestEnd, onSessionStart, and others. This makes it extremely desirable to use the Application.cfc file over the older Application.cfm file.

Unfortunately, ColdFusion doesn't have the mechanism built into it to run multiple Application.cfc files, as was done with Application.cfm For example, in an administrative section you might have a separate Application.cfm file that includes the main application version of the Application.cfm file but also has additional functionality to protect the administrative directory. Fortunately, there is a way to do the same thing with Application.cfc using inheritance.

Part 1 of this series showed a basic format for extending the Application.cfc in one level of subdirectories. This article, Part 2, will show how to extend even further using cascading Application.cfcs the way that Application.cfm allows cascading, and show one way to convert these old Application.cfm files to Application.cfc

The Using Multiple Application.cfc Files Series:
Using Multiple Application.cfc Files - Part 1
Using Multiple Application.cfc Files - Part 2

Comparing Timestamps in ColdFusion Free!
Reader Level: Reader Level

In a couple of previous articles, we looked at comparing timestamps in SQL Server and MYSQL, with an eye for capturing data that matches a supplied date even if the times are different. Lest we think there is only one way to do things, we got some comments regarding the ability to do this in the server side language (such as ColdFusion) as well.

Setting and Deleting Cookies in ColdFusion Free!
Reader Level: Reader Level

Cookies are little bits of text information that you can store on your visitor’s computer to keep track of all kinds of things related to your site. Common uses are to track the last time a person was at the site or to store login information, at the user’s request, to allow them to be automatically logged in the next time the visit. In this article we will look at setting and deleting cookies in ColdFusion. In the next article we will use those cookies to automatically login a user when they ask the site to remember them.

Client-Side Interactivity... Without AJAX! Free!
Reader Level: Reader Level

Keeping response times down and interactivity high has, and always will be, two important priorities with web interfaces of any kind. For standard HTML interfaces, AJAX is all the buzz and is great when it's necessary to maintain interaction with live data. But when a static version of the data will do just fine, there's at least one other alternative that you may want to consider….

Having spent four years disarming bombs for the Air Force, Doug Boude is now a Senior Web Application Architect for Fiserv Health in San Antonio, TX. He has been developing with ColdFusion since version 4.0. Doug has written several ColdFusion articles for Fusion Authority.

Modifying Classic ColdFusion Debugging: Part 2
Reader Level: Reader Level

If you have your own ColdFusion development box, you probably have ColdFusion debugging turned on. I have always used the Classic debugging mode as opposed to Dockable, because I find the popup window takes too long and is too cumbersome to use. However, classic debugging has a few shortfalls. I addressed some with my article on Better Debugging Info for ColdFusion, however that article discussed a completely custom debugging file. Part 1 of this article discussed how to tweak the file used internally by ColdFusion to display debugging results. In that article we expanded arrays and structures for a better debug output. In this article, we'll add some useful query debugging information.

The Modifying Classic ColdFusion Debugging Series:
Modifying Classic ColdFusion Debugging: Part 1
Modifying Classic ColdFusion Debugging: Part 2

The Mystery of CFC Variables and Properties - Part 4
Reader Level: Reader Level

If you use ColdFusion you should be using ColdFusion Components (CFCs). One of the more perplexing parts of developing CFCs for the beginning ColdFusion developer is how to define variables and properties. The proper use of variables is important for memory consumption and data integrity. You don't want variables hanging around that aren't needed or accessed from areas that they should not be accessed from.

The first part of this series explained some of the differences between local and global variables as they apply to CFCs. The second part of the series showed a simple CFC framework component. Part 3 showed a CFC that extends our base component. The first three parts are usable in any ColdFusion site with any database. Part 4 will focus on SQL Server and show how the tags can be turned into tags, and how the NULL values of the local properties can be used.

The Mystery of CFC Variables and Properties Series:
The Mystery of CFC Variables and Properties - Part 1
The Mystery of CFC Variables and Properties - Part 2
The Mystery of CFC Variables and Properties - Part 3
The Mystery of CFC Variables and Properties - Part 4

Quickshot - Detecting a Mobile Device in ColdFusion Free!
Reader Level: Reader Level

With the increase of smart phones, PDAs and other handheld devices that can display web content, more and more sites are looking to include Wireless Application Protocol (WAP) and Wireless Markup Language (WML) content on their websites. Even if you do not try to replicate your content, often important pieces of your site can be delivered in a format that is easily readable and usable by the smaller screen of a mobile phone or other device.

The Mystery of CFC Variables and Properties - Part 3
Reader Level: Reader Level

If you use ColdFusion you should be using ColdFusion Components (CFCs). One of the more perplexing parts of developing CFCs for the beginning ColdFusion developer is how to define variables and properties. The proper use of variables is important for memory consumption and data integrity. You don't want variables hanging around that aren't needed, or accessed from areas that they should not be accessed from.

The first part of this series explained some of the differences between local and global variables as they apply to CFCs. This second part of the series showed a simple CFC framework component. Part 3 shows a CFC that extends our base component. These first three parts are usable in any ColdFusion site wtih any database. Part 4 will focus on SQL Server.

The Mystery of CFC Variables and Properties Series:
The Mystery of CFC Variables and Properties - Part 1
The Mystery of CFC Variables and Properties - Part 2
The Mystery of CFC Variables and Properties - Part 3
The Mystery of CFC Variables and Properties - Part 4

The Mystery of CFC Variables and Properties - Part 2
Reader Level: Reader Level

If you use ColdFusion you should be using ColdFusion Components (CFCs). One of the more perplexing parts of developing CFCs for the beginning ColdFusion developer is how to define variables and properties. The proper use of variables is important for memory consumption and data integrity. You don't want variables hanging around that aren't needed or accessed from areas that they should not be accessed from.

The first part of this series explained some of the differences between local and global variables as they apply to CFCs. This second part of the series will continue the discusion and show a simple CFC framework component. Part 3 will show a CFC that extends our base component.

The Mystery of CFC Variables and Properties Series:
The Mystery of CFC Variables and Properties - Part 1
The Mystery of CFC Variables and Properties - Part 2
The Mystery of CFC Variables and Properties - Part 3
The Mystery of CFC Variables and Properties - Part 4

Quick Shot - Securing Your ColdFusion Session Information
Reader Level: Reader Level

As we have discussed in other articles, ColdFusion compensates for the stateless nature of web applications by using session variables to track information across the entire time of a user's visit to your site. This allows you to store a user's ID after sign on, for instance, and use it to retrieve information about them from a database or to keep track of information that the user enters while completing a multi page form.

In this article, we are going to go over two simple steps that should lessen the risk of anyone inadvertently providing access to their personal information on your site.

The Mystery of CFC Variables and Properties - Part 1 Free!
Reader Level: Reader Level

If you use ColdFusion you should be using ColdFusion Components (CFCs). One of the more perplexing parts of developing CFCs for the beginning ColdFusion developer is how to define variables and properties. This article will attempt to explain some of the differences between local and global variables as they apply to CFCs. The proper use of variables is important for memory consumption and data integrity. You don't want variables hanging around that aren't needed, or accessed from areas that they should not be accessed from.

The second part of the series will continue the discusion and show a simple CFC framework.

The Mystery of CFC Variables and Properties Series:
The Mystery of CFC Variables and Properties - Part 1
The Mystery of CFC Variables and Properties - Part 2
The Mystery of CFC Variables and Properties - Part 3
The Mystery of CFC Variables and Properties - Part 4

ColdFusion and Exchange Server - Part 3: Updating and Deleting Calendar Events
Reader Level: Reader Level

Once you have learned to create an appointment in Exchange Server, deleting it is a relatively simple operation. The key to deleting a calendar event is knowing the unique ID that Exchange assigned when you created the event. If you stored the ID returned by the Exchange connection in your database, you just need to retrieve it and use it to send a delete command to the server.

The ColdFusion and Exchange Server Series:
ColdFusion and Exchange Server - Part 1
ColdFusion and Exchange Server - Part 2: Creating Calendar Events
ColdFusion and Exchange Server - Part 3: Updating and Deleting Calendar Events

ColdFusion and Exchange Server - Part 2: Creating Calendar Events
Reader Level: Reader Level

In a previous article, we covered making a connection to Exchange Server from ColdFusion 8 and retrieving some email information. In this installment, we will use a form to collect information about an appointment, send it to Exchange as a calendar item and stick it in a database for use within an application. Later we will retrieve appointment information, edit it and delete it.

The ColdFusion and Exchange Server Series:
ColdFusion and Exchange Server - Part 1
ColdFusion and Exchange Server - Part 2: Creating Calendar Events
ColdFusion and Exchange Server - Part 3: Updating and Deleting Calendar Events

Convert a Querystring into a Struct Using ColdFusion
Reader Level: Reader Level

ColdFusion makes it easy to work with structures like URL variables, form variables, and other types of structures. Why would you want to convert a query string into a struct when the URL struct already contains the URL variable in struct form? Frequently you are presented with a URL string as opposed to a struct containing the URL or form variables. This is where ColdFusion's built-in list functions come to the rescue. With the list function and a loop, it's easy to convert a string into a structure containing members, and even convert the string back into a URL or form struct.

Saving Structures to Client Variables with ColdFusion Free!
Reader Level: Reader Level

I've always liked using Client variables in ColdFusion. In fact, I probably use them more then I should. The fact that I can set a client variable and not have to worry about passing it around my application in order to use its value is, well, lazily handy for me. However, serious programming involves Queries, Arrays and Structures. Client variables are not typically used to store these types of objects. This article talks about, and shows you how to, set Queries, Arrays and Structures to a Client variable.

Bill Betournay has been specializing in web development and database design since 1999. He is currently employed at Algoma Steel (A Subsidiary of Essar Global) in Northern Ontario as a programmer analyst and at Jordan Media Ltd., a Marketing and Application Development firm in the UK. For the past several years Bill has maintained a high profile within the Cartweaver (Coldfusion) community as a developer providing additional custom functionality via his web site DataPacks.com. Bill is often spotted lurking in the Cartweaver CF newsgroup.

Quickshot - Make Sure They Belong on Your Site Free!
Reader Level: Reader Level

URL Tampering is one of the most common ways that people will try to mess with your site. They may try to change a URL String parameter to try and see or change or delete a record that they should not be able to access (which is something you should be trapping for anyway) or they may try to post a form into your site from an external server, allowing them to set whatever they want for hidden form fields.

In this Quickshot tutorial I will show you a quick and simple way to prevent people from accessing content on your site that they shouldn't see.

Ending a Session When the Browser Closes
Reader Level: Reader Level

Most applications on the web are written as stateless applications, meaning that each page request is basically unaware of anything else that is happening around it. That means that you need to manage the information your pages need to interoperate with each other, like the current account number or what is in a shopping cart. You can do that using the URL string, or cookies or something called session variables.

Creating Custom Toolbars for the ColdFusion 8 Rich Text Editor
Reader Level: Reader Level

Among the great new Ajax features of ColdFusion 8 is a rich text editor that you can easily add to your site, making the collection and display of text much more flexible and attractive. Based on the FCKEditor, the ColdFusion editor is quite full featured for a lightweight object and it allows the formatting of text collected in a form including many HTML features like tables and hyperlinks as well as fonts, styles, emoticons, special characters, text alignment and other things to allow more that just raw text entry into your application.

Quickshot: How to Parse Submitted Form Fields in ColdFusion Free!
Reader Level: Reader Level

Most of the time, when your site submits a form to the server, you constructed that form so you know what fields to expect on the back side. On occasion, though, you may not know exactly what fields to expect when a form is dynamically created or may only contain data for certain fields. In ColdFusion, you can use a couple of methods to determine what fields exist in a form that has been received and what the data is for those fields.

Using Multiple Application.cfc Files - Part 1
Reader Level: Reader Level

In ColdFusion 7, the Application.cfc file became the application base structure of choice over the Application.cfm file. As you know, the Application.cfm file is the central file in a ColdFusion application that is run before every page in your site. Global functions and variables that are used by the application can be located in this file, or inside files that are included in Application.cfm. Now, with Application.cfc, we can fine-tune the application with application events: onRequestStart, onRequestEnd, onSessionStart, and others. This makes it extremely desirable to use the Application.cfc file over the older Application.cfm file.

Unfortunately, ColdFusion doesn't have the mechanism built into it to run multiple Application.cfc files, as was done with Application.cfm For example, in an administrative section you might have a separate Application.cfm file that includes the main application version of the Application.cfm file but also has additional functionality to protect the administrative directory. Fortunately, there is a way to do the same thing with Application.cfc using inheritance.

The Using Multiple Application.cfc Files Series:
Using Multiple Application.cfc Files - Part 1
Using Multiple Application.cfc Files - Part 2

Making Stored Procedures Efficient Free!
Reader Level: Reader Level

As a web application gets larger and needs to handle more traffic, special attention is needed to make sure it is running as efficiently as possible. More often than not, that means taking a look at the way that your data is marshaled from the database. I am constantly amazed at how much effort can be placed in making sure that pages are only so heavy and take X seconds to load on the HTML side, when very little consideration is given to how the database is being accessed.

The two things to remember when dealing with the optimization of your database are minimizing network traffic, and the reuse of execution plans. Both of these are accomplished by the proper use of stored procedures. In this article, we will cover a few tips to help you get the most out of your stored procedures.

Quick Shot - Using ColdFusion List Functions to Manipulate Text Free!
Reader Level: Reader Level

ColdFusion's List functions are some of the most useful things in the language. They allow you to do all kinds of neat things with strings of text that can be divided by some character, like a comma delimited string or flat file layout.

Quickshot: Logging Out an Inactive User Free!
Reader Level: Reader Level

As worried as people seem to be about their online information being compromised, they don't usually seem to take even the simplest precautions to keep wandering eyes off of their monitors and the information they display. If your application contains sensitive information, you may need to help your users protect it.

Building a CRM/Invoicing System
Reader Level: Reader Level

Customer Relationship Management has become quite the buzzword lately, and for good reason. No business can succeed without customers, and it has become increasingly necessary for companies to keep a close eye on how they are servicing their existing customers and how they can obtain new ones. Services like Salesforce.com specialize in managing contact with leads, prospects and clients throughout their lifecycle. But they also come at a hefty price.

Many smaller companies could get by with a simpler CRM system, and there are some available in the open source market that might suffice. But there is nothing much available in ColdFusion, so I want to cover over a few articles the basics of creating a CRM and invoicing module that you can use standalone, or add to your existing application. In this first article, we will begin to look at a database structure.

ColdFusion and Exchange Server - Part 1
Reader Level: Reader Level

I have used Thunderbird forever, it seems. We tried Microsoft Exchange Server and Outlook several years ago, But we could never get it to configure quite right with our firewall, and it was a pain to manage, and Outlook and Outlook Express were unreliable, to say the least. I was pretty happy with a simpler mail server and Thunderbird, until two things happened at just about the same time.

My company was expanding, and with that came a larger sales team. There had been requests for Outlook before, but the sales force presented the best argument for needing the features of Exchange server (which most people never realize is a requirement to get all of the fancier features of Outlook). They needed shared calendars and the ability to management meeting invitations, plus better access from multiple locations. Sure there are other products that will allow this, but it seemed like a good time to try Exchange again.

The ColdFusion and Exchange Server Series:
ColdFusion and Exchange Server - Part 1
ColdFusion and Exchange Server - Part 2: Creating Calendar Events
ColdFusion and Exchange Server - Part 3: Updating and Deleting Calendar Events

Using CFQUERY with Directories
Reader Level: Reader Level

The CFQUERY tag is a versitile tag that is not only for database queries. You can run a CFQUERY query of queries on any valid query result. Results from CFFTP, CFPOP, and CFDIRECTORY, among other tags, are returned as query results. This makes it very easy to do filtering and searching on query results from these different tags. This article will show one use of of the query of queries on a local server directory.

Modifying Classic ColdFusion Debugging: Part 1
Reader Level: Reader Level

If you have your own ColdFusion development box, you probably have ColdFusion debugging turned on. I have always used the Classic debugging mode because I find the popup window debugging mode takes too long and is too cumbersome to use. However, classic debugging has a few shortfalls. I addressed some with my article on Better Debugging for ColdFusion, however that article discussed a completely custom debugging file. The method discussed in this article will show you how to tweak the file used internally by ColdFusion to display debugging results.

The Modifying Classic ColdFusion Debugging Series:
Modifying Classic ColdFusion Debugging: Part 1
Modifying Classic ColdFusion Debugging: Part 2

Simple Server-Side Form Validation
Reader Level: Reader Level

Setting up a simple custom server-side form validation is a straightforward process and has the advantage over JavaScript in that it cannot be turned off by the user in order to override your validation.

In this tutorial, we will look at how we can use a combination of ColdFusion, JavaScript and CSS to provide an interactive form validating process. Although we do use a little JavaScript in this process it does not have a bearing on the validation process and is used only to enhance the messaging that is passed to the user.

SQL Group vs. CFOUTPUT GROUP
Reader Level: Reader Level

There is a lot of confusion among some ColdFusion developers about the use of GROUP in a SQL statement and the use of the group attribute in a tag. This article will try to explain the differences and where you would use one or the other.

Creating a Redirected Login in ColdFusion
Reader Level: Reader Level

Creating a transparent login system is one of the easiest things a developer can do to enhance an end user's experience on an access controlled site. In this article we're going to take the concepts that were introduced previously in the PHP version of Creating a redirected login and apply them to ColdFusion.

Blocking Bad Words in ColdFusion
Reader Level: Reader Level

One of the biggest problems on the Internet these days is spam in the form of comment spam and contact form spam. Blogs are big these days, and many have implemented spam trapping features, however spammers are not all automated robots -- some of the most insidious are real people sitting behind their computer attacking you with their Viagra ads and other assorted garbage. Guestbooks attract spammers like flies. And even contact forms, meant only to go to the site owner, are under attack as well.

This article will show a simple administrative interface to maintain a "bad word" list, and a simple way to prevent the spam from reaching the intended recipient.

ColdFusion 8 and AJAX Series - Part 3: Pods
Reader Level: Reader Level

Continuing on our ColdFusion 8 and AJAX series we will take a look at Pods. So what are Pods and why would I use them? Similar to layout areas within a tag, Pods provide us a standalone area of the browser window where we can display static and dynamic content. Follow along as we explore the tag.

The ColdFusion 8 and AJAX Series:
ColdFusion 8 and AJAX Series - Part 1a: Layouts
ColdFusion 8 and AJAX Series - Part 1b: Layouts
ColdFusion 8 and AJAX Series - Part 2: Tabbed Layouts
ColdFusion 8 and AJAX Series - Part 3: Pods
ColdFusion 8 and AJAX Series - Part 4: CFWindow

ColdFusion 8 and AJAX Series - Part 2: Tabbed Layouts
Reader Level: Reader Level

Tabbed layouts seem to be a common occurrence around the web these days. Your choices for designing and developing tabbed layouts vary from CSS to Javascript to Ajax. Adobe first threw its hat into the tabular layout ring with the introduction of the Spry framework. Well they are back at it again, this time with ColdFusion 8 and the new tag.

The ColdFusion 8 and AJAX Series:
ColdFusion 8 and AJAX Series - Part 1a: Layouts
ColdFusion 8 and AJAX Series - Part 1b: Layouts
ColdFusion 8 and AJAX Series - Part 2: Tabbed Layouts
ColdFusion 8 and AJAX Series - Part 3: Pods
ColdFusion 8 and AJAX Series - Part 4: CFWindow

Tracking Most Recently Read Content
Reader Level: Reader Level

Community MX has a feature that shows the most recent items you viewed. This is quite easy to do, but requires a few things to be in place. This article will show how we do this. The article will use ColdFusion, but the technique can be applied across the board to any server language, like PHP or ASP.NET. We'll assume for this article that you have a user login system and content management system already in place. We'll focus on the functionality to store the content id of the user reading the content.

Using Text Masks in ColdFusion
Reader Level: Reader Level

Text masks can be used in web applications as placeholders for dynamic content. A mask is essentially a string of characters that can be later replaced, and not likely to be confused. Usually, you will use consecutive characters around a variable string, or simply consecutive characters. This article will show a few techniques using masks in ColdFusion.

ColdFusion 8 and AJAX Series - Part 1b: Layouts
Reader Level: Reader Level

AJAX being all the buzz, Adobe introduced ColdFusion 8 with integration for a bunch of new rich interface features that make your introduction to AJAX a whole lot easier. Of these new features we began to take a look at the cflayout tag. Whether you're wanting to create a one, two or three-column layout or simply create an intranet portal, you will want to take a look at the cflayout tag.

We will continue our series by looking at a couple more attributes of the cflayout tag including the "source" attribute which allows you to populate a region from an external file, "closable" which allows the user to close a region of your layout, how to reference the ColdFusion JavaScript API to allow a user to re-open a region that was closed and some gotchas to look out for when using the cflayout tag.

The ColdFusion 8 and AJAX Series:
ColdFusion 8 and AJAX Series - Part 1a: Layouts
ColdFusion 8 and AJAX Series - Part 1b: Layouts
ColdFusion 8 and AJAX Series - Part 2: Tabbed Layouts
ColdFusion 8 and AJAX Series - Part 3: Pods
ColdFusion 8 and AJAX Series - Part 4: CFWindow

Creating a Master/Detail Pageset on One Page Using AJAX
Reader Level: Reader Level

Dreamweaver's Master/Detail page set is a handy set of behaviors to use for a drill-down functionality -- display a list of records, and click on a link in the list to view the full record. Using the behaviors, however, you typically create two pages. If you create one page with both, the page will refresh each time you click on a link.

In this tutorial, I'll show how to create one master/detail page that uses some very simple JavaScript to load the details section of the page dynamically using AJAX. This tutorial will apply to PHP, ColdFusion, and ASP, with the concepts applicable to the other available server models that Dreamweaver now supports.

ColdFusion 8 and Ajax Series - Part 1a: Layouts
Reader Level: Reader Level

When Adobe released ColdFusion 8 they introduced some new tags and functions related to Ajax development. Imagine being able to create Ajaxified web applications with little or no knowledge of how to build it from scratch. In this series we will be looking at all the wonderful Ajax functionality that you can start adding to your next web page with just a few tags.

Let's start off with some of the UI (user interface) Controls. especially that of layouts and layout areas using the new cflayout and cflayoutarea tags.

The ColdFusion 8 and AJAX Series:
ColdFusion 8 and AJAX Series - Part 1a: Layouts
ColdFusion 8 and AJAX Series - Part 1b: Layouts
ColdFusion 8 and AJAX Series - Part 2: Tabbed Layouts
ColdFusion 8 and AJAX Series - Part 3: Pods
ColdFusion 8 and AJAX Series - Part 4: CFWindow

CFPresentation - Adding Audio & Video
Reader Level: Reader Level

Adobe ColdFusion 8 provides us with a laundry list of new tags, including the new tags that allow us to create dynamic presentations using existing HTML or CFM templates. Previously we took a look at creating our first presentation utilizing some of the basic features. This time we will look at how to spruce up our presentations by adding audio and video and some of the gotchas to look out for.

Download size: 1.8MB

Creating a Simple Database Web Search - Part 2: ColdFusion
Reader Level: Reader Level

In the first part of this series, I showed how to create a Master/Detail page set using built in Dreamweaver tools, and then add a basic search form querying against one field in the database. What if you want more than that though? The Dreamweaver recordset dialog box allows one filter against one field. This is sometimes useful, but usually not. Typically you might also want to allow other HTML fields into the search. You will want to search allowing multiple search words. Finally, you might want to search multiple database fields. I will address all three situations in this article, which will be targeted to ColdFusion users only.

The Creating A Simple Database Web Search Series:
Creating a Simple Database Web Search - Part 1
Creating a Simple Database Web Search - Part 2: PHP
Creating a Simple Database Web Search - Part 2: ColdFusion

Installing ColdFusion 8 on Mac OS X
Reader Level: Reader Level

ColdFusion 8, the latest and greatest, is the first version to be released under Adobe's auspices, and that makes a difference -- installing CF on OS X is easier than ever.

Approximate download size: 952k

CFPresentation
Reader Level: Reader Level

Creating slide presentations is a common task we have all found ourselves having to do at one time or another. However, the application you have used has probably either been Micorosft's Powerpoint or Apple's Keynote. With the introduction of ColdFusion 8 and the new tag, ColdFusion lets you create dynamic slide presentations from existing source files such as HTML or CFM templates or a mashup of the two. In fact you can even create a slide from an external web page just by specifying the absolute url. Regardless of how you decide to create your slides, the process is simple and we will walk you through creating your first presentation.

Database-Oriented Document Management
Reader Level: Reader Level

Nearly every time the question of storing documents or images in a database comes up, the answer is almost always "don't do it", and for very good reasons. There are those times, however, when it's very much the appropriate thing to do. A clustered server environment can be one such scenario, where deployment of documents and/or images needs to be immediate and not subject to the cluster resynchronization schedule. In order to make an image or document immediately available, we need to utilize a central repository that can be updated in real time: the database.

This article was written by guest author Doug Boude. Having spent four years disarming bombs for the Air Force, Doug Boude is now a Senior Web Application Architect for Fiserv Health in San Antonio, TX. He has been developing with ColdFusion since version 4.0. Doug has written several ColdFusion articles for Fusion Authority.

ColdFusion and WMI Free!
Reader Level: Reader Level

Microsoft calls their implementation of the Web-Based Enterprise Management (WBEM) industry initiative Windows Management Instrumentation (WMI). We call it the richest source of information containing everything you'd want to know about your Windows systems.

This article introduces the idea of connecting to WMI using ColdFusion, providing the developer endless opportunity to produce administrative and reporting applications guaranteed to take you out of the world of maintenance and in to the world of innovation.

Brice Mason is a husband and father from Albany, New York. He is also an independent software developer and freelance writer who regularly lets his curiousity get the best of him. As a developer working for diverse industry sectors such as healthcare, technology, and non-profit, Brice has consistently turned to ColdFusion to quickly solve his greatest challenges. He values the incredible flexibility it offers to produce highly creative and innovative solutions. Brice maintains a personal web site at http://www.skipslate.com.



Installing ColdFusion 8 Report Builder Free!
Reader Level: Reader Level

With the release of ColdFusion 8 comes a new version of the ColdFusion Report Builder which was introduced back with version 7. There have been some great enhancements to the free reporting tool by Adobe. In future articles we will look at some examples, but for now lets take a look at how easy it is to install on Microsoft Windows Vista.

Installing ColdFusion 8 on Vista with Apache Free!
Reader Level: Reader Level

ColdFusion 8 is the latest and greatest version of ColdFusion and as soon as it hit the Adobe Labs I hurried out to download it and install it. I noticed that there are a few new items that get installed with ColdFusion 8, like .NET integration and LiveCycle Data Services Express edition. So those familiar with installing ColdFusion 7, there are some new settings.

If you have had the pleasure, or pain, of running Windows Vista then you may know that simply installing applications is not really that simple. I will be taking you through installing ColdFusion 8 on Vista with Apache 2 as my web server.

Creating a Table-less Horizontal Looper in ColdFusion
Reader Level: Reader Level

Dreamweaver has a Repeat Region server behavior that loops through your data and allows you to display it in a vertical or horizontal manner. If you want to display the data in a grid pattern, however, it requires a little more effort. Typically, a Horizontal Looper extension or code is used to create a table and put your individual data sections in a table cell. In this tutorial I'll show how to do that using <div> tags and CSS without tables.

This is a version of an article I did for PHP—but for ColdFusion instead. For this tutorial I'll assume you know how to use your database tools to create and manage databases, and how to create connections for ColdFusion.

Dynamic Navigation Page Marking
Reader Level: Reader Level

In this article we look at how we can deploy page marking in a dynamic navigation menu by using values returned from a query and matching them to a url variable in order to change the state of a tab with CSS.

FusionDebug 2.0 - Variables
Reader Level: Reader Level

This is the final article in our series on FusionDebug 2.0, an interactive ColdFusion debugger. While we have looked at configuration, setting breakpoints within a template and stepping thru a CFC to examine the results of a query within the Variables panel, we have not looked at one of the most important functions of FusionDebug.

Variable Introspection is very powerful in that we don't have to use <cfdump> to see what various scoped variables contain. As well as with FusionDebug 2.0 we can also change the values contained within those variables which makes it a great way to test a ColdFusion application and change values during run-time to see how certain sections of code will work.

In this article we will look at a couple of examples on changing a variables value during run-time.

The FusionDebug Series
FusionDebug 2.0 - Configurations
FusionDebug 2.0 - Setting Breakpoints
FusionDebug 2.0 - Stepping Through a CFC
FusionDebug 2.0 - Variables

FusionDebug 2.0 - Stepping Through a CFC
Reader Level: Reader Level

In our last article we took a look at setting breakpoints within ColdFusion templates using FusionDebug 2.0 an interactive debugger for ColdFusion. While we paused code execution on a single page to view the variables contained within the page, I would bet that we have all built more complex applications that involve the use of ColdFusion Components (CFCs). FusionDebug 2.0 is a great tool in that we can set a breakpoint on any page, including CFCs, UDFs (User Defined Functions) and even custom tags. Knowing this we will take a look at what happens when we set a breakpoint on a query contained with a CFC and how we can view the contents of the query prior to actually outputting the results to browser.

The FusionDebug Series
FusionDebug 2.0 - Configurations
FusionDebug 2.0 - Setting Breakpoints
FusionDebug 2.0 - Stepping Through a CFC
FusionDebug 2.0 - Variables

Using the Bell Character—Parsing Lists in ColdFusion
Reader Level: Reader Level

What is the bell character, you might ask? In the old days of computing, before there was surround sound, you could "print" a character to the screen that made a "beep" sound. If you put a bell character (ASCII 7) in a string, it would beep to the screen. These days, the bell character is not used for much...if anything. As a ColdFusion programmer, you can make use of this not-often-used character for different situations. Some lists seem like they are unparseable using regular ColdFusion functions, and some strings might not even seem like lists. This article will show a couple ways to parse otherwise difficult lists.

FusionDebug 2.0 - Setting Breakpoints
Reader Level: Reader Level

In this article we will take a look at how to set a breakpoint within FusionDebug 2.0, an interactive ColdFusion debugger by Fusion-Reactor. Breakpoints allow us to stop code execution at a predetermined location within our ColdFusion template, CFC (ColdFusion Component) or custom tag. This is a big plus over having to use to output variables to our page, in that we don't have to allow code execution to complete or unnecessarily abort our template. Once we have our code paused, so to speak, we can inspect all variables of various scope at that particular moment and then let our code finish processing.

The FusionDebug Series
FusionDebug 2.0 - Configurations
FusionDebug 2.0 - Setting Breakpoints
FusionDebug 2.0 - Stepping Through a CFC
FusionDebug 2.0 - Variables

Anti-Spam Measures for PHP and ColdFusion - Part 2
Reader Level: Reader Level

Spam, spam, spam, spam. Spammers have taken over the Internet and made it a horrible place to maintain a web site. Spammers have gone beyond simply spamming your email account -- now they are spamming blogs and guestbooks, spamming trackbacks, and spamming signup forms. Even a child's home page with a guestbook for friends is not safe from links for cialis, porn, or web hosting. Obviously these spammers are getting some return from their criminal activity, because they keep doing it. Unfortunately, you can't reach through the computer screen and grab them by the throat to strangle the life out of them. All you can do is put in place some safeguards and try to minimize the attack. Part 2 in this series shows how you can record the IP address of the spammer and block access to your site to that computer in the future. Once again, I'll assume you have familiarity with PHP or ColdFusion basics (databases, inserting and displaying data) and HTML forms.

The Anti-Spam Measures for PHP and ColdFusion Series:
Anti-Spam Measures for PHP and ColdFusion - Part 1
Anti-Spam Measures for PHP and ColdFusion - Part 2

Getting ColdFusion MX 7.0.2 Running on Vista and IIS7 Free!
Reader Level: Reader Level

This article takes you step-by-step through the process of installing ColdFusion MX 7.0.2 on a PC running the new Vista operating system and using Internet Information Services (IIS) 7.

There are points during the installation process that can and will give you trouble if you follow directions published prior to Vista's release. Therefore, special emphasis has been given to the information you'll need to get working with ColdFusion on Vista.

Who will benefit by reading this article?

ColdFusion programmers who develop and/or run CFM pages locally (including developing CFCs) on a Vista box and who use IIS7.

FusionDebug 2.0 - Configurations Free!
Reader Level: Reader Level

Since our last look at installing and configuring FusionDebug, Fusion-Reactor has come out with version 2.0. So your asking "what's new in this version and why should I upgrade?" Well, how about a new standalone installer that gives you Eclipse 3.2, CFEclipse 1.3 and FusionDebug 2.0, all in one fail swoop. They have also included a Server Configuration Wizard that easily modifies the JVM.config (Java Virtual Machine) settings that we looked at in the previous article. Besides a performance improvement of about 10 times faster than before, the most noticable improvement is it's own debug perspective.

So before we go off learning how to set breakpoints and view and modify variables in our code let's take a look at how to quickly set up the new FusionDebug perspective. This is similar to setting up the Eclipse Debug environment that we looked at in our previous article with a lot less choices.

The FusionDebug Series
FusionDebug 2.0 - Configurations
FusionDebug 2.0 - Setting Breakpoints
FusionDebug 2.0 - Stepping Through a CFC
FusionDebug 2.0 - Variables

Anti-Spam Measures for PHP and ColdFusion - Part 1
Reader Level: Reader Level

Spam, spam, spam, spam. Spammers have taken over the Internet and made it a horrible place to maintain a web site. Spammers have gone beyond simply spamming your email account -- now they are spamming blogs and guestbooks, spamming trackbacks, and spamming signup forms. Even a child's home page with a guestbook for friends is not safe from links for cialis, porn, or web hosting. Obviously these spammers are getting some return from their criminal activity, because they keep doing it. Unfortunately, you can't reach through the computer screen and grab them by the throat to strangle the life out of them. All you can do is put in place some safeguards and try to minimize the attack.

The Anti-Spam Measures for PHP and ColdFusion Series:
Anti-Spam Measures for PHP and ColdFusion - Part 1
Anti-Spam Measures for PHP and ColdFusion - Part 2

FusionDebug 1.0 - Configurations Free!
Reader Level: Reader Level

If you have been doing ColdFusion development for awhile you have no doubt wished you had an easier way to debug your code instead of using the usual to spit out variables, structs, queries, etc. to a web page. Wouldn't it be nice to set a breakpoint on a line of code and then step thru the web page as it was being rendered? Well now you have just that option. FusionDebug is an interactive ColdFusion MX debugger that plugs into the Eclipse IDE which lets you do just that.

In this series of tutorials we will be looking at how you install the product and create a FusionDebug configuration, set breakpoints in your code that allow for stepping over and into templates, tags and components, change variable values, and watch expressions in the debugger, all in real time.

ColdFusion Report Builder - Part 3c: Input Parameters
Reader Level: Reader Level

This is the last article in our three part series on using input parameters with ColdFusion Report Builder. If you have been following along we have created a simple report that took an input parameter to change the title of the report and to modify or filter the data being retrieved from our query. Finally we will be discussing showing or hiding a region of a report based on an input parameter.

The ColdFusion Report Builder Series:
ColdFusion Report Builder - Part 1: Exploring the IDE
ColdFusion Report Builder - Part 2: Building a Simple Report
ColdFusion Report Builder - Part 3a: Input Parameters
ColdFusion Report Builder - Part 3b: Input Parameters
ColdFusion Report Builder - Part 3c: Input Parameters

Shut Off Your Site -- ColdFusion Maintenance
Reader Level: Reader Level

There is frequently a need for page maintenance or database maintenance, without turning off a server. If you are at a remote location, wouldn't it be nice to be able to shut down access to your pages without having to call someone or pull up a remote desktop? With a couple simple variables and the Application.cfc file (or Application.cfm), you can create the functionality to shut off access to your site and return a simple message to any user that happens across your site while the maintenance is underway.

ColdFusion Report Builder - Part 3b: Input Parameters
Reader Level: Reader Level

If you have been following the series on ColdFusion Report Builder, we have previewed the IDE, built a simple report and utilized input parameters to dynamically change a report label at runtime. However input parameters are even more powerful and as promised from the last article, we will explore using input parameters inside a query to filter the data being returned.

The ColdFusion Report Builder Series:
ColdFusion Report Builder - Part 1: Exploring the IDE
ColdFusion Report Builder - Part 2: Building a Simple Report
ColdFusion Report Builder - Part 3a: Input Parameters
ColdFusion Report Builder - Part 3b: Input Parameters
ColdFusion Report Builder - Part 3c: Input Parameters

Implementing a Record Locking System in ColdFusion 7 - Part 2
Reader Level: Reader Level

Most databases have some sort of row-level locking of database records, however when building a web application you need more than that. Picture a scenario where a database will have multiple users and each user could potentially be working on the same record. This can happen in an e-commerce site, where different departments have access to a given order for fulfillment, or in an Intranet site where various employees have access to a given record.

In this article I will show you how to implement a record locking system that relies on the Application.cfc file that was introduced in CF 7. This second part builds upon the files set up in part 1 and creates the record locking system.

The Implementing a Record Locking System in ColdFusion 7 Series:
Implementing a Record Locking System in ColdFusion 7 - Part 1
Implementing a Record Locking System in ColdFusion 7 - Part 2

ColdFusion Report Builder - Part 3a: Input Parameters
Reader Level: Reader Level

In our last article we took a look at building a simple report using the ColdFusion Report Builder. In most cases you may only need a simple report but when it comes to customizing the report fields on the fly we need to consider using input parameters. We will be addressing input parameters in three parts. Our first article will look at adding an input parameter to our existing report's title and then passing that report title from a form. The Second article will look at using input parameters inside a query to filter the data being returned. The third will be using input parameters for conditional formatting, such as hiding or showing parts of a report.

The ColdFusion Report Builder Series:
ColdFusion Report Builder - Part 1: Exploring the IDE
ColdFusion Report Builder - Part 2: Building a Simple Report
ColdFusion Report Builder - Part 3a: Input Parameters
ColdFusion Report Builder - Part 3b: Input Parameters
ColdFusion Report Builder - Part 3c: Input Parameters

Implementing a Record Locking System in ColdFusion 7
Reader Level: Reader Level

Most databases have some sort of row-level locking of database records, however when building a web application you need more than that. Picture a scenario where a database will have multiple users and each user could potentially be working on the same record. This can happen in an e-commerce site, where different departments have access to a given order for fulfillment, or in an Intranet site where various employees have access to a given record.

In this article I will show you how to implement a record locking system that relies on the Application.cfc file that was introduced in CF 7. Because of the extended setup to get to the locking portion, we'll run this tutorial in two parts. In this first part, we will set up the Application.cfc with a simple login system, and build the results, login, and update pages.

ColdFusion Report Builder - Part 2: Building a Simple Report
Reader Level: Reader Level

In our last article we took a look at the ColdFusion Report Builder interface which hopefully got you familiar with the different sections of the editor. This time around we will look at using the ColdFusion Report Builder Setup Wizard to assist us with setting up the environment by configuring the RDS server and specifying the location of our web site that the reports will be built for, defining the query fields for our report, grouping, layout, style and theme.

The ColdFusion Report Builder Series:
ColdFusion Report Builder - Part 1: Exploring the IDE
ColdFusion Report Builder - Part 2: Building a Simple Report
ColdFusion Report Builder - Part 3a: Input Parameters
ColdFusion Report Builder - Part 3b: Input Parameters
ColdFusion Report Builder - Part 3c: Input Parameters

Using a CF Custom Tag for Multiple Tabs
Reader Level: Reader Level

Tabs in a web page are an intuitive way for a user to navigate elements on a page. Using tabs, you can create pages of an article, multi-tab forms, multi-tab pages of links, or other types of pages where there is too much content to fit on one page. Using two ColdFusion custom tags -- one for the tab functionality and one for each individual tab -- you can create a simple way to add tabs to a ColdFusion page. The tab code shown in the article is simple, but can be used to expand on, or you can simply use the techniques shown with your own tab code.

Switching CSS with ColdFusion
Reader Level: Reader Level

If you are concerned about giving your end user the ultimate control over changing the way your web site looks and feels—well not ultimate control, but the ability to change the CSS document attached to your site, then look no further. We will be taking a look at Gordon Mackay's tutorial "Switching CSS Based on Time of Day with PHP" and converting it to ColdFusion as well as a little added bonus of allowing the user to select from a link which CSS best suits them.

Favourite Extensions - Part 2: Massimo's CF Insert Bar Plus Free!
Reader Level: Reader Level

In this, the second look at extensions that can enhance your production time, we are going to look at Massimo Foti's CF Insert Bar Plus.

The extension enhances functionality that already exists within Dreamweaver by reducing cftry, cfoutput and cfdump to a single click.

The Favourite Extensions Series:
Favourite Extensions - Part 1: Tom Muck's Sniplets
Favourite Extensions - Part 2: Massimo's CF Insert Bar Plus
Favourite Extensions - Part 3: The TFM Progress Bar

Announcing My CF Photo Gallery Free!
Reader Level: Reader Level

It is the holiday season, and you will problaby be taking a lot of pictures. Need a way to easily manage and display your photo galleries online? Read all about the new CMX application: My CF Photo Gallery. With the CF Photo Gallery and a ColdFusion server, you or a client can upload and manage image galleries right from a browser window.

My CF Photo Gallery
Reader Level: Reader Level

My CF Photo Gallery is a ColdFusion image gallery application. It provides a logical step by step interface within a secure administration area enabling you to create new galleries and edit the content of existing galleries.

A Simple Multi-language ColdFusion Content Management System - Part 3
Reader Level: Reader Level

There are various ways to create a data-driven multi-language site, but the method I have shown in this article series uses an underused technique involving ColdFusion custom tags. Basically, the technique will turn any simple, well-formed HTML or XHTML page into a content management system with only one tag required on the page.

The first part of this series showed the principles behind the custom tag technique. The second part implemented the database tables and custom ColdFusion functionality to turn HTML tags into database-driven dynamic tags. This third part will create a simple administrative interface to administer the system.

The Multi-Language ColdFusion Content Management System Series:
A Simple Multi-language ColdFusion Content Management System - Part 1
A Simple Multi-language ColdFusion Content Management System - Part 2
A Simple Multi-Language ColdFusion Content Management System - Part 3

Easy Nav for ColdFusion
Reader Level: Reader Level

In this tutorial I will show you how to develop a navigation handler in ColdFusion that will do the following:
  • The navigation would be made up of a CSS styled unordered list, <ul>
  • Each list item, <li>, within the <ul> would be a link to a page within the site
  • Each <li> would contain an anchor (a) with an href to the target page.
  • Whichever page the visitor was on at the moment should not show up as a link in the nav, rather it should just show <strong> so as to indicate the current location and avoid self-referencing links
  • It should be self updating as the navigation changes so that no manual changes are necessary to the code to 'code-around' the links on each target page


ColdFusion Report Builder - Part 1: Exploring the IDE Free!
Reader Level: Reader Level

With the introduction of ColdFusion MX 7, Adobe gave developers the ability to create simple to advanced reports using a new tool called ColdFusion Report Builder. While you can still utilize tags such as to generate PDF and FlashPaper reports from existing XHTML content, there are times when your client needs something a little more.

In this series of articles we will be walking you through the interface, simple report layouts, and even advanced topics such as sub reports, parameterization and tips and tricks that every ColdFusion Report writer needs to know.

If you are not familiar with ColdFusion Report Builder then you are in the right place. A quick overview of the product, it is a tool for allowing the user to create banded reports similar to Microsoft Access reports but for ColdFusion. These reports contain definitions with built-in SQL queries, grouping and placement and custom functions and styling that result in a very professional looking report. These ColdFusion Reports are saved with .CFR extension and are then displayed by using the tag.

In Part 1 we will introduce the ColdFusion Report Builder interface to get you familiar where things are laid out.

The ColdFusion Report Builder Series:
ColdFusion Report Builder - Part 1: Exploring the IDE
ColdFusion Report Builder - Part 2: Building a Simple Report
ColdFusion Report Builder - Part 3a: Input Parameters
ColdFusion Report Builder - Part 3b: Input Parameters
ColdFusion Report Builder - Part 3c: Input Parameters

Let's Learn ColdFusion: Building a Simple Admin - Part 3
Reader Level: Reader Level

In this tutorial we will build on the administration area that we created earlier in the series, you will begin to build the functionality required for page creation and the construction of a central control area.

The Let's Learn ColdFusion: Building a Simple Admin Series:
Let's Learn ColdFusion: Building a Simple Admin - Part 1
Let's Learn ColdFusion: Building a Simple Admin - Part 2
Let's Learn ColdFusion: Building a Simple Admin - Part 3
Let's Learn ColdFusion: Building a Simple Admin - Part 4 Coming Soon

A Simple Multi-language ColdFusion Content Management System - Part 2
Reader Level: Reader Level

There are various ways to create a data-driven multi-language site, but the method I will show in this article series uses an underused technique involving ColdFusion custom tags.

Basically, the technique shown will turn any simple, well-formed HTML or XHTML page into a content management system with only one tag required on the page. This first part of this series showed the principles behind the custom tag technique.

This part will implement the database tables and custom ColdFusion functionality to turn HTML tags into database-driven dynamic tags to implement the multi-language aspect.

The Multi-Language ColdFusion Content Management System Series:
A Simple Multi-language ColdFusion Content Management System - Part 1
A Simple Multi-language ColdFusion Content Management System - Part 2
A Simple Multi-Language ColdFusion Content Management System - Part 3

ColdFusion Code-Behind: Mimicking .NET's Page Directive
Reader Level: Reader Level

Microsoft's ASP.NET has given the development community a nice object oriented programming model with its introduction of Code-Behind files. Simply spoken, these are C# or VB.NET files that contain the physical code for wiring up events or actions such as Page Load, button clicks, etc. that the ASP.NET template calls from the very first line of code called a Page Directive.

The power of separating the presentational layout from the actual framework allows developers and designers to work separately from one another. This is very useful in large development teams. Taking a page from this concept we can achieve the same flexibility in ColdFusion by using CFCs and invoking them from the ColdFusion template on every page request.

Join me as I take you through an explanation of how this concept works and hopefully bridge the gap between any Microsoft .NET developers wanting to learn ColdFusion in creating a ColdFusion Code-Behind.

A Simple Multi-language ColdFusion Content Management System - Part 1 Free!
Reader Level: Reader Level

There are various ways to create a data-driven multi-language site, but the method I will show in this article series uses an underused technique involving ColdFusion custom tags. Basically, the technique shown will turn any simple, well-formed HTML or XHTML page into a content management system with only one tag required on the page.

This first part will show the principles behind the custom tag technique. The next part will show how to implement the multi-language aspect. The third part will create an administrative interface to administer the system.

The Multi-Language ColdFusion Content Management System Series:
A Simple Multi-language ColdFusion Content Management System - Part 1
A Simple Multi-language ColdFusion Content Management System - Part 2
A Simple Multi-Language ColdFusion Content Management System - Part 3

Combine Gets and Posts into the Request Scope
Reader Level: Reader Level

Have you ever worked on a large ColdFusion application and had to review previous templates to see whether or not the variables you were trying to process or validate were coming from a FORM submission or from a Query string? We'll don't feel alone, this is a common challenge when developing larger applications. Fortunately we can take advantage of the onRequestStart method within the Application.cfc to eliminate the need to check templates as we explore using the REQUEST scope to process all variables from now on by combining Gets and Posts into the Request scope..

CFDirectory How To: Inserting Results into Database for Future Searches
Reader Level: Reader Level

Using CFDirectory allows us to return directory contents, but what if you have a larger directory that doesn't change much or takes a long time to return results? Why not take the results and insert them into a database for optimized searching for a later time.

Creating Daily Stats Pages
Reader Level: Reader Level

A stat page can be used for an e-store, blog, ad rotater, or any other type of application where you want to track a specific series of "things" that happen each day. For example, on a blog you might track blog hits. In an e-store, you might track daily sales. For an ad rotator you might track click-throughs.

This article will show how to write a query to group the daily activity in the first section, and how to display that as a graph using ColdFusion in the second section. The article will use SQL Server syntax, but could be adapted to any database. Also, the SQL code is applicable to any server model—not only ColdFusion. This is part 1 of 2.

Let's Learn ColdFusion: Building a Simple Admin - Part 2
Reader Level: Reader Level

In Part 1 of this series we looked at how to lay out the basic appearance of our administration area and set up some simple but effective security to allow our clients to easily access what will become our administration area's control panel.

To hold the information our clients create we will need to make use of a database. That is where we will begin Part 2. The database will be simple, though it will provide all the functionality we need in our first venture into developing a dynamic website.

The Let's Learn ColdFusion: Building a Simple Admin Series:
Let's Learn ColdFusion: Building a Simple Admin - Part 1
Let's Learn ColdFusion: Building a Simple Admin - Part 2
Let's Learn ColdFusion: Building a Simple Admin - Part 3
Let's Learn ColdFusion: Building a Simple Admin - Part 4 Coming Soon

CFEclipse How To: Creating Your First CFC
Reader Level: Reader Level

We explored the CFEclipse interface earlier in our previous How To article on creating a simple ColdFusion page. This time around, we will expand on that project and convert our ColdFusion page to utilize a CFC (ColdFusion Component). This will open up some new CFEclipse panels and wizards for us to take a look at, all of which are very helpful in speeding up our development time. Particularly the CF Component Wizard, Methods View panel, Tasks or TODO Panel and the ability to add Snippets.

The CFEclipse How To Series
CFEclipse How To: Creating a Simple CFML Page
CFEclipse How To: Creating your first CFC

Let's Learn ColdFusion: Building a Simple Admin - Part 1 Free!
Reader Level: Reader Level

In this series you will build a simple administration area complete with a control panel that will allow you to manage the content of your website.

The system you will build is aimed at the small business website where one or two users will have total control of the website's content.

The Let's Learn ColdFusion: Building a Simple Admin Series:
Let's Learn ColdFusion: Building a Simple Admin - Part 1
Let's Learn ColdFusion: Building a Simple Admin - Part 2
Let's Learn ColdFusion: Building a Simple Admin - Part 3
Let's Learn ColdFusion: Building a Simple Admin - Part 4 Coming Soon

Fundamental Fusebox: Part 2 - A Fusebox 5 Follow-up
Reader Level: Reader Level

This follow-up to my introductory article on Fusebox 5 shows how to adapt a Fusebox 4 application to the Fusebox 5 architecture, and explores Fusebox 5's model-view-controller design pattern in more detail. See how easy it is to use the most popular ColdFusion web application framework!

The Fundamental Fusebox Series:
Fundamental fusebox: Part 1 - An Overview
Fundamental Fusebox: Part 2 - A Fusebox 5 Follow-up

Using the <cfsavecontent> Tag
Reader Level: Reader Level

There are many ways to build a string in ColdFusion, but one often overlooked method involves using the <cfsavecontent> tag. This article will take a look at the standard ways that a ColdFusion developer might build a string, and compare it to using <cfsavecontent>.

CFEclipse How To: Creating a Simple CFML Page Free!
Reader Level: Reader Level

This past year at Todcon, I happened to start a discussion with some of the Adobe team about the future of Dreamweaver and how it relates to ColdFusion development. To my surprise, there has been quite a bit of interest surrounding the open source Eclipse IDE and the ColdFusion plugin known as CFEclipse. Not to say that there are plans to discontinue ColdFusion support in future versions of Dreamweaver, but for the experienced developer there is a growing effort to put some research dollars into the CFEclipse product.

CFEclipse is easy to use and has some great features. We'll examine some of them in this first article in the How To series on CFEclipse.

The CFEclipse How To Series
CFEclipse How To: Creating a Simple CFML Page
CFEclipse How To: Creating your first CFC

Fundamental Fusebox: Part 1 - An Overview
Reader Level: Reader Level

Fusebox has long been the leading ColdFusion web application framework, noted for its use of the model-view-controller (MVC) architecture. Now Fusebox 5 has been released, and this introductory article provides an overview, including a review of changes from the previous version. The article also takes a look at the new "skeleton" application provided for Fusebox 5.

The Fundamental Fusebox Series:
Fundamental fusebox: Part 1 - An Overview
Fundamental Fusebox: Part 2 - A Fusebox 5 Follow-up

Creating Simple Printed Reports in ColdFusion: Part 5
Reader Level: Reader Level

In this installment of the series, we will look at ways that you can incorporate dynamic elements into your documents. While there is certainly a wide range of things that might fall into the category of "dynamic elements", for this article I mean one of two things:

Top Ten Mistakes in ColdFusion
Reader Level: Reader Level

Many ColdFusion developers use common coding practices that are not optimal and don't follow "best practices". The following article shows 10 different mistakes and coding problems that you may find in your applications that can be easily corrected.

Multiple Insert/Update in ColdFusion
Reader Level: Reader Level

Dreamweaver has some built-in tools for doing database inserts and updates, but they only handle basic inserts/updates of one record. What if you want to insert multiple records at a time, or update multiple records? Dreamweaver is no help in this case, but using ColdFusion the process is simple. This tutorial will show two often-used methods for doing a multiple insert and multiple update, and the reasons not to use the first method.

Creating Simple Printed Reports in ColdFusion: Part 4
Reader Level: Reader Level

In Part 2 of this series, we looked at the filename attribute of the cfdocument tag and discussed how it will allow you to save a generated document rather than streaming it directly to the browser. It this installment, we will look at how you can take advantage of that functionality to save and email a document to your user.

The Creating Simple Printed Reports in ColdFusion Series:
Creating Simple Printed Reports in ColdFusion: Part 1
Creating Simple Printed Reports in ColdFusion: Part 2
Creating Simple Printed Reports in ColdFusion: Part 3
Creating Simple Printed Reports in ColdFusion: Part 4
Creating Simple Printed Reports in ColdFusion: Part 5 Coming Soon

Let's Learn ColdFusion: Part 5 - Working with cfincludes
Reader Level: Reader Level

In this lesson we will look at code reuse within your web site design. Specifically you will learn about the cfinclude tag and how you can put this tag to good use with what you have learned in the previous lessons. To work through this lesson we will be using the North Pole JumpStart.

The Let's Learn ColdFusion Series:
Let's Learn ColdFusion: Part 1 - Installation and the Testing Server
Let's Learn ColdFusion: Part 2 - The URL Scope, Variable Names and Values
Let's Learn ColdFusion: Part 3 - Adding Simple Logic and Error Checking
Let's Learn ColdFusion: Part 4a - Creating a Datasource
Let's Learn ColdFusion: Part 4b - Building a Dynamic List Menu
Let's Learn ColdFusion: Part 4c - Filtering Your Queries and the cfqueryparam Tag
Let's Learn ColdFusion: Part 4d - Error Checking Your ColdFusion Queries
Let's Learn ColdFusion: Part 5 - Working with cfincludes

Creating Simple Printed Reports in ColdFusion: Part 3
Reader Level: Reader Level

In this installment of this series, we are going to look at some of the additional ColdFusion tags that can be used within the tag to give you more control over the layout and appearance of your PDF of Flashpaper document.

The Creating Simple Printed Reports in ColdFusion Series:
Creating Simple Printed Reports in ColdFusion: Part 1
Creating Simple Printed Reports in ColdFusion: Part 2
Creating Simple Printed Reports in ColdFusion: Part 3
Creating Simple Printed Reports in ColdFusion: Part 4
Creating Simple Printed Reports in ColdFusion: Part 5 Coming Soon

Using the cfstoredproc Tag
Reader Level: Reader Level

If you have been using ColdFusion for a while you have undoubtedly needed to interact with a database in one way or another. Whether it is Microsoft Access, MySql or Microsoft SQL Server, a client has asked you to develop an application to create, retrieve, update or delete data. Until now you have probably been using the cfquery tag to accomplish this.

Let’s kick it up a notch and discuss the advantages of using stored procedures and in general how to utilize the cfstoredproc tag in this edition of our HOW TO series.

Let's Learn ColdFusion: Part 4d - Error Checking Your ColdFusion Queries
Reader Level: Reader Level

In this the final lesson in Part 4 you will learn how to negate errors that may occur when you are running queries. You will learn about the cftry, cfcatch and cfcatch variables that can indicate the problem to aid in debugging.

The Let's Learn ColdFusion Series:
Let's Learn ColdFusion: Part 1 - Installation and the Testing Server
Let's Learn ColdFusion: Part 2 - The URL Scope, Variable Names and Values
Let's Learn ColdFusion: Part 3 - Adding Simple Logic and Error Checking
Let's Learn ColdFusion: Part 4a - Creating a Datasource
Let's Learn ColdFusion: Part 4b - Building a Dynamic List Menu
Let's Learn ColdFusion: Part 4c - Filtering Your Queries and the cfqueryparam Tag
Let's Learn ColdFusion: Part 4d - Error Checking Your ColdFusion Queries

Sending an Email Blast with ColdFusion: Part 3
Reader Level: Reader Level

ColdFusion makes it very easy to send emails to mulitple recipients from a database using very little code. Part 1 of this series went over some basics, and Part 2 showed a very basic newsletter delivery system, similar to the system we use at Community MX to send our weekly newsletters. Part 3 will show two different scenarios to include line items within the email body—generic line items and recipient-specific line items.

Let's Learn ColdFusion: Part 4c - Filtering Your Queries and the cfqueryparam Tag
Reader Level: Reader Level

In this tutorial you will learned how to filter a database table by using the WHERE clause. We will also look at using the cfqueryparam tag and its attributes to speed up execution times and provide enhanced security for your database. You will also look at preventing errors in your ColdFusion pages by making good use of the cfparam tag.

The Let's Learn ColdFusion Series:
Let's Learn ColdFusion: Part 1 - Installation and the Testing Server
Let's Learn ColdFusion: Part 2 - The URL Scope, Variable Names and Values
Let's Learn ColdFusion: Part 3 - Adding Simple Logic and Error Checking
Let's Learn ColdFusion: Part 4a - Creating a Datasource
Let's Learn ColdFusion: Part 4b - Building a Dynamic List Menu
Let's Learn ColdFusion: Part 4c - Filtering Your Queries and the cfqueryparam Tag
Let's Learn ColdFusion: Part 4d - Error Checking Your ColdFusion Queries Coming Soon

Creating Simple Printed Reports in ColdFusion: Part 2
Reader Level: Reader Level

For those of us building what are known as Web Applications (web sites that are intended to provide advanced application functionality that often replace desktop programs) there have always been a number of limitation in the web server and browser platform that affect the user experience compared to traditional applications. Modern platforms like Flash (and even DHTML) are answering some of those issues on the client side. On the server side, one of the problems has been generating true banded reporting and creating printable reports from what is displayed on screen.

In the last article, we looked at the most basic use of the cfdocument tag to create PDF and FlashPaper documents out of rendered HTML. Without rehashing the product documentation, let’s look at some of the other attributes of the cfdocument tag that affect how your document is presented.

The Creating Simple Printed Reports in ColdFusion Series:
Creating Simple Printed Reports in ColdFusion: Part 1
Creating Simple Printed Reports in ColdFusion: Part 2
Creating Simple Printed Reports in ColdFusion: Part 3
Creating Simple Printed Reports in ColdFusion: Part 4
Creating Simple Printed Reports in ColdFusion: Part 5 Coming Soon

Let's Learn ColdFusion: Part 4b - Building a Dynamic List Menu
Reader Level: Reader Level

In Part 4 you created a dsn - Data Source Name - and we discussed how a dsn allowed you to connect to a database. The second key in this process is passing information to the database in order to get the information you want back from the database.

It is this concept that we will learn in this lesson and to complete the lesson you will build a dynamic list menu as a proof of concept.

The Let's Learn ColdFusion Series:
Let's Learn ColdFusion: Part 1 - Installation and the Testing Server
Let's Learn ColdFusion: Part 2 - The URL Scope, Variable Names and Values
Let's Learn ColdFusion: Part 3 - Adding Simple Logic and Error Checking
Let's Learn ColdFusion: Part 4a - Creating a Datasource
Let's Learn ColdFusion: Part 4b - Building a Dynamic List Menu
Let's Learn ColdFusion: Part 4c - Filtering Your Queries and the cfqueryparam Tag
Let's Learn ColdFusion: Part 4d - Error Checking Your ColdFusion Queries Coming Soon

ColdFusion Mapping
Reader Level: Reader Level

If you've been developing for awhile you may have created some code that you've wanted to reuse and, if you're like me, you've created a folder for CFCs (ColdFusion Components), UDFs (user defined functions) or even a generalized site header and footer. This is great and easily accessible using a cfinclude, cfmodule or invoking a component using cfinvoke or cfobject, until you need to move your folders outside of your web root for whatever reason. This is when everything breaks. Until now...

The ColdFusion "How To" Series:
ColdFusion Mapping
cfstoredproc Tag Coming Soon

Extract Links from a Web Page Using ColdFusion
Reader Level: Reader Level

ColdFusion provides a lot of functionality in the form of tags, but some of the more powerful features require a bit of programming knowledge, like the use of regular expressions, XML functions, and the recursive function construct.

This tutorial will show how to use a regular expression to find all given elements in a string, then use an XML function to extract HTML attributes, and use a recursive function (calling a function from within the function until finished) to streamline the coding. In this case, we'll be searching for all links within a page, but the technique could be used to find email addresses, HTML tags, phone numbers, or other formatted pieces of text.



Creating Simple Printed Reports in ColdFusion - Part 1
Reader Level: Reader Level

For those of us building what are known as Web Applications (web sites that are intended to provide advanced application functionality that often replace desktop programs) there have always been a number of limitation in the web server and browser platform that affect the user experience compared to traditional applications. Modern platforms like Flash (and even DHTML) are answering some of those issues on the client side. On the server side, one of the problems has been generating true banded reporting and creating printable reports from what is displayed on screen.

Sure, there was always Crystal Reports or some third-party program that could help out. But they were always problematic, in my experience. I wanted something built into my language that allowed those very important features to be executed natively. ColdFusion now allows exactly that with a number of new capabilities to provide instant PDF and FlashPaper documents and intricate banded business reporting. In this article, we will look at creating simple printed reports from generated HTML using the cfdocument tag.

The Creating Simple Printed Reports in ColdFusion Series:
Creating Simple Printed Reports in ColdFusion: Part 1
Creating Simple Printed Reports in ColdFusion: Part 2
Creating Simple Printed Reports in ColdFusion: Part 3
Creating Simple Printed Reports in ColdFusion: Part 4
Creating Simple Printed Reports in ColdFusion: Part 5 Coming Soon

Let's Learn ColdFusion: Part 2 - The URL Scope, Variable Names and Values
Reader Level: Reader Level

Start to learn and understand the ColdFusion language, step by step. In this tutorial you will begin to work with URL variables and understand how the receiving page interacts with this information.

The Let's Learn ColdFusion Series:
Let's Learn ColdFusion: Part 1 - Installation and the Testing Server
Let's Learn ColdFusion: Part 2 - The URL Scope, Variable Names and Values
Let's Learn ColdFusion: Part 3 - Adding Simple Logic and Error Checking
Let's Learn ColdFusion: Part 4a - Creating a Datasource
Let's Learn ColdFusion: Part 4b - Building a Dynamic List Menu
Let's Learn ColdFusion: Part 4c - Filtering Your Queries and the cfqueryparam Tag
Let's Learn ColdFusion: Part 4d - Error Checking Your ColdFusion Queries Coming Soon

Using GUIDs to Verify Registration in ColdFusion: Part 2
Reader Level: Reader Level

This is Part Two of this article and it explains the use of the verification page to accept a GUID and verify a users account. In the previous article, we created a registration page that accepted a registrants name and email address, generated a strong password, and created and emailed a GUID used to verify that the email address is valid and the person intended to register at your site.

Using GUIDs to Verify Registration in ColdFusion: Part 1
Reader Level: Reader Level

In a previous article, we talked about Globally Unique IDs (GUIDS) and their use in uniquely identifying records across disconnected databases. Another useful aspect of GUIDs is that they are sufficiently complex enough that they are not easily guessable and care be used for processes like verifying that the information (especially the email address) you received in a user registration is valid. In this article, we will take a look at some code that done just that... plus a little more.

Let's Learn ColdFusion: Part 1 - Installation and the Testing Server Free!
Reader Level: Reader Level

Welcome to the first in a series of articles aimed at providing an extensive overview of the ColdFusion language to newcomers to server-side development.

The series will start at the beginnning with a look at the make-up of the language and progress to basic server-side development allowing you to build on your knowledge with each new addition to the series.

The Let's Learn ColdFusion Series:
Let's Learn ColdFusion: Part 1 - Installation and the Testing Server
Let's Learn ColdFusion: Part 2 - The URL Scope, Variable Names and Values
Let's Learn ColdFusion: Part 3 - Adding Simple Logic and Error Checking
Let's Learn ColdFusion: Part 4a - Creating a Datasource
Let's Learn ColdFusion: Part 4b - Building a Dynamic List Menu
Let's Learn ColdFusion: Part 4c - Filtering Your Queries and the cfqueryparam Tag
Let's Learn ColdFusion: Part 4d - Error Checking Your ColdFusion Queries Coming Soon

Creating a Registration Page: Part 2
Reader Level: Reader Level

Dreamweaver contains many built-in tools to aid in quickly building dynamic sites. Part 1 of this series showed how to use the Record Insertion Form Wizard to set up a simple user registration form on a web site. The registration form allows a user to register for a site.

Part 2 will show validation and the user agreement, using more built-in tools of Dreamweaver and a little rudimentary JavaScript. The tutorial will apply equally to PHP, ASP, ColdFusion, and JSP using built in tools.

Part 3 will show how to pass registration details to PayPal or other payment processor for a paid membership-type of site.

The Creating a Registration Page Series:
Creating a Registration Page: Part 1
Creating a Registration Page: Part 2
Creating a Registration Page: Part 3

Creating a Registration Page: Part 1
Reader Level: Reader Level

Dreamweaver contains many built-in tools to aid in quickly building dynamic sites. One such tool is the Record Insertion Form Wizard. Using this tool, I'll show how to set up a simple user registration form on a web site. The registration form will allow a user to register for a site (free site or membership site), and include a way for the user to agree to a user agreement and also opt-in/opt-out of a newsletter. The tutorial will apply equally to PHP, ASP, ColdFusion, and JSP using built in tools. This is the first part in a series.

Part 2 will show validation and the user agreement, and Part 3 will show how to pass registration details to Paypal or other payment processor for a paid membership-type of site.

The Creating a Registration Page Series:
Creating a Registration Page: Part 1
Creating a Registration Page: Part 2
Creating a Registration Page: Part 3

Beating Spam On Your Contact Forms
Reader Level: Reader Level

In this article we will look at how we can use a very simple method to beat the spam form scripts that populate and submit our forms.

Checking and Optimising Your ColdFusion Template Execution Times
Reader Level: Reader Level

It is surprising how much poorly written queries can slow down your application, and yet page execution times are something we can easily test and optimise during the development process.

In this article we will look at how we can set the information we need displayed by changing a setting in the CF Administrator. We will then look at the information that is passed out into the template for our perusal.

Manipulating ID3 Tags - The Updated Version: Part 2
Reader Level: Reader Level

In this second article on working with ID3 tags in MP3 files from within ColdFusion, you will learn how to set and update the values stored in ID3 tags.

This article is an update of an earlier article which used the jd3lib library which has changed considerably and no longer retains its original functionality. This article replaces the jd3lib with jid3lib.

The Updated Manipulating ID3 Tags Series:
Manipulating ID3 Tags - The Updated Version: Part 1
Manipulating ID3 Tags - The Updated Version: Part 2

Protecting Sections of a Control Panel by Using Access Levels
Reader Level: Reader Level

When building administration areas it is often necessary to create multi-level access to the control panel. Often users are re-directed to a page that matches their particular administration rights.

In this tutorial we will look at how we can streamline this process by setting the administration level and implementing the required logic directly in the Application.cfm template. Once this is in place you can then show and hide sections of the control panel to specific users.

Manipulating ID3 Tags - The Updated Version: Part 1
Reader Level: Reader Level

This is the first of two articles on manipulating ID3 tags from within ColdFusion. ID3 tags provide meta information about MP3 and other music files. This article outlines how to install the necessary Java classes and then outlines the basics of reading ID3 tags.

This article is a revision of an earlier Community MX article. That article used an older version of jd3lib, a Java library for manipulating MP3 files. However, that original version has been discontinued and cannot be downloaded and the new Alpha version has seriously limited functionality which makes it hard to use for the purposes of this article. This update is rewritten to use a newer, more robust Java library.

The Updated Manipulating ID3 Tags Series:
Manipulating ID3 Tags - The Updated Version: Part 1
Manipulating ID3 Tags - The Updated Version: Part 2

Making Full Use of Bindings
Reader Level: Reader Level

The Dreamweaver bindings panel has a lot of uses beyond a place to build recordsets and stored procedures. Many people don't realize that when you add session, request, and application variables to the panel manually, you get some visual advantages — the ability to drag items to the page into design view, the ability to use variables as filters, and the ability to add formatting functions to design view.

This article will explore the bindings panel and its advantages. Because we are discussing core Dreamweaver functionality, the article will apply equally to all server models in Dreamweaver, although some server models have better bindings panel support than others.

Preventing Accidental Data Loss - Or Giving Your Clients a Second Chance
Reader Level: Reader Level

In this article we will look at providing ways of preventing accidental data loss when providing Content Management Systems to your clients. We will specificlly look at providing an archive mechanism and interfacing delete requests with a confirmation page.

Using a ColdFusion Custom Tag as a Site Template: Part 4 - JumpStarts
Reader Level: Reader Level

I wrote a series of three articles on how you can use a ColdFusion custom tag to supply the design of every page in your site. Since that time, Community MX has released several JumpStarts — page designs using the latest HTML and CSS techniques to create starting points for your own designs. A JumpStart is also a perfect fit for the use of a ColdFusion custom tag. Heidi Bautista wrote an article about using JumpStarts with ASP.NET master pages — Convert an Existing Site to Use ASP.NET Master Pages and Themes. The ASP.NET master page is very similar in concept to the technique I presented in my series on CF, so this tutorial will cover the same ground for ColdFusion users, using the free North Pole JumpStart.

Creating a ColdFusion Custom Tag for US States
Reader Level: Reader Level

ColdFusion custom tags are exceptionally useful, as they allow you to put presentation functionality into a file, similar to an include, only more powerful. This article shows how a simple custom tag listing US states and Canadian provinces can be built and used.

Dynamic & Accessible Navigation with ColdFusion
Reader Level: Reader Level

In this tutorial we are going to be looking at creating a dynamic and accessible navigation system. To do this we will be using cfoutput queries and the group attribute to gather in the information for both our top level and our sub level navigation options.

Getting Started with Eclipse - Part 2 Free!
Reader Level: Reader Level

In the second article of this series, you'll learn how to install Eclipse plug-ins for ColdFusion, PHP, and ActionScript.

The Getting Started with Eclipse Series:
Getting Started with Eclipse - Part 1
Getting Started with Eclipse - Part 2
Getting Started with Eclipse - Part 3

Re-running a Google Search on Your Web Site
Reader Level: Reader Level

In this tutorial we will learn how we can access the search data a user entered on Google. We will then use that information to re-run a search on our web site to provide the user with more specific information about the item(s) they originally searched for on Google.

All About GUIDs
Reader Level: Reader Level

If you are familiar with databases you have probably used an autonumber field in Access or an Identity column in SQL Server to have the database assign a unique numerical ID to each record that gets inserted into a table. That works great when there is one table in one database responsible for keeping track of those records. But what if you are eBay or Amazon with database servers strewn across the world to increase reliability and availability? What if you need to take records collected by several databases and merge them back into one dataset and still maintain a unique identifier for each record?

Calculating Age In ColdFusion
Reader Level: Reader Level

Calculating a person’s age from their date of birth seems like a fairly straightforward proposition; subtract the date of birth year from the current year and bam, there is the age. But it is can be trickier than that, especially if your application requires accuracy in the person’s age. Which month they were born in becomes important, as does those pesky little leap years.

Lots of Sites, Lots of URLS: One Configuration
Reader Level: Reader Level

Do you need to be able to deploy lots of sites with different URLs in the same domain, all running the same application but without any unique Apache or DNS configuration? Learn how.

404: Not Just an Error Anymore
Reader Level: Reader Level

Using a unique combination of Apache's configuration directives and the way in which 404 errors are handled, this article presents a creative way to provide for caching of dynamically generated content which can still serve up entirely in static form when it is cached.

Creating a Simple Blog: Part 6
Reader Level: Reader Level

There have been five parts in the series on creating a simple blog. The first five parts focused on creating basic functionality to get a basic blog up and running using simple Dreamweaver design tools. This part will show how to incorporate the functionality into a more complex design — specifically, the latest CMX Jumpstart — Inverness. This tutorial will be equally applicable to ColdFusion, ASP, PHP, ASP.NET, or JSP because we will be using standard Dreamweaver server behaviors to create the blog. In the course of merging the dynamic blog into the design, you'll learn the following about merging content with design in general — how to find repeating items and make them dynamic, how to separate parts of an existing design into a module.

Checking For Strong Passwords in ColdFusion
Reader Level: Reader Level

Most applications allow users to change their password. It does not do much good to assign a strong password if your user can just change it to ‘fluffy’ at their first opportunity. The function in this article will allow you to check a submitted password to see if it qualifies as strong before allowing it to be saved in the user’s profile.

Generating Strong Passwords in ColdFusion
Reader Level: Reader Level

If users of your site get their information stolen because they used weak passwords and left themselves open to attack, they will still blame you for the breach. Because of this, you need to seriously consider requiring the use of strong passwords if your site deals with any kind of sensitive information.

This article will show you how to generate strong passwords for your users to protect them and you.

Code is shown in ColdFusion.

Redirecting Users When Logging In
Reader Level: Reader Level

While the article Show and Hide Content Based on User Access Level discusses allowing content for multiple access levels (or user groups) to be held on the same page and showing portions of content based upon the user's group, sometimes you need each user group to get sent to different pages (perhaps within different folders). This article discusses how to enhance the existing Log In User Dreamweaver Server Behavior to allow redirecting users to specific pages based upon their access level when they log in.

ColdFusion Tag Clouds
Reader Level: Reader Level

Wikipedia says about Tag Clouds:

A tag cloud (more traditionally known as a weighted list in the field of visual design) is a visual depiction of content tags used on a website. Often, more frequently used tags are depicted in a larger font or otherwise emphasized, while the displayed order is generally alphabetical. Thus both finding a tag by alphabet and by popularity is possible. Selecting a single tag within a tag cloud will generally lead to a collection of items that are associated with that tag.

The first tag cloud appeared on Flickr, the photo sharing site. That implementation was based on Jim Flanagan's Search Referral Zeitgeist, a visualization of web site referrers. Tag clouds have also been popularised by Technorati, among others.


Jeffrey Zeldman has some thoughts on the subject. Although he's not exactly the biggest proponent of the technique, my purpose here is to simply show you how to create your own. After all, if your client wants a tag cloud, who are you to deny them of it?

Sample code is provided using ColdFusion.

Maintaining Multi-page Forms in the Session Scope
Reader Level: Reader Level

In this tutorial we will look at how we can maintain our form data over multiple pages using the session scope. Using the session scope is a more secure way of passing data from page to page and it is very simple to do, as we will see.

More Site Monitoring with CFHTTP
Reader Level: Reader Level

Have you ever used a site monitoring service? Well now you can monitor your own sites remotely by building a simple ColdFusion script. This article tells you how to extend our earlier monitoring script to validate the HTML retrieved from the server.

ColdFusion 7 on OS X: Finally, It's Official
Reader Level: Reader Level

With the 7.01 release of ColdFusion, Macromedia (or perhaps Adobe) has seen the light and officially designated OS X Tiger as a supported platform. There is a slick new Mac installer to go with the new designation, and this tutorial will walk you through the process of installing the latest, greatest, officially supported version of ColdFusion on your Mac.

Using CFCs as Sources of Data for Queries in Dreamweaver 8
Reader Level: Reader Level

ColdFusion MX added the possibility to create objects through ColdFusion Components ( CFCs ) that could be easily reused throughout your site. Reuse of is good, as it allows you make changes in one place and have the update available everywhere it is used. Dreamweaver 8 (and Dreamweaver MX 2004 with the ColdFusion MX 7 Extensions installed) allows you to create queries within components (CFCs) that can be used as data suppliers to queries visually within the editing environment.

Quick Site Monitoring with CFHTTP
Reader Level: Reader Level

Have you ever used a site monitoring service? You can monitor your own sites remotely by building a simple ColdFusion script. This article tells you how.

Loading Database Tables Into a Query Dynamically
Reader Level: Reader Level

In this tutorial we will look at how we can query a database to discover the names of the tables it contains. Once we have gleaned that information we'll loop through the tables and extract the ones that we need to include in our search facility.

Random Queries (recordsets) For ASP, ColdFusion and PHP
Reader Level: Reader Level

While most data displays on web sites are in some predetermined, or even user specified order, such as search results of a products table in product name order, it can be quite beneficial to display data randomly, such as random banners, or even random on sale products on the home page. This article will discuss how you can use ASP VBScript with Access and MS SQL Server; PHP with MySQL; and ColdFusion with Access, MS SQL Server and MySQL to generate random results, be it a single random banner from your advertisers, or five random products that are currently on sale.

Building Application.cfc
Reader Level: Reader Level

In this tutorial we will build an Application component for use with ColdFusionMX 7 and later.

Within the component we will look at error handling and implementing a debugging session that you can easily switch on and off on a live site without showing the information to your users. We'll also implement a user count function so you can see how many active users you have on your site at any time.

Building a Receipt on World Pay's Secure Server
Reader Level: Reader Level

In this tutorial we will look at how we can present our shopping cart customers with a nicely formatted receipt after they have paid. In this instance we will be doing it the World Pay way. Once you have created an account with World Pay you are presented with your own CMS on the World Pay site. From here you can set many parameters, not the least of which allows you to customise the paid and error pages that you will present to your customers once they have completed their transactions.

What's with the Question Marks? Or: Where are my Curly Quotes? Free!
Reader Level: Reader Level

If you work with ColdFusion and popular databases such as MySQL you my find yourself geting strange results. Even if you don't use non-Roman scripts such as Chinese or Arabic you may find curly quotes or other extended characters magically becoming question marks. This article discusses techniques you can use to resolve this common problem.

Using CFFLUSH
Reader Level: Reader Level

Why, and when, would you want to use the CFFLUSH tag? This tag is not used by many developers and most ColdFusion developer's don't understand how, when or why to use it. This article provides an overview of the tag and how to use it.

Base64 Encoding
Reader Level: Reader Level

Your boss comes up to you, says that the requirements on the latest project have changed. You are now required to include an employee badge photo along with your company's replication feed. "But sir, the replication feed is an XML file ... how are we going to get an image into that?".

Enter Base64 Encoding. Though it doesn't come up every day, it's usefulness is undeniable, and your toolbox will be all the better for containing it. Code presented in this article will be in ASP.NET, Coldfusion, and PHP. We will discuss some situations where Base64 encoding will come in handy.

Persistent Scoped CFCs
Reader Level: Reader Level

What are the advantages and disadvantages of putting CFC instances into Session or Application variables? There have been a lot of discussions about this, but my own personal view is that you can reduce the strain on system resources and memory, and build faster applications by storing CFC instances in persistent variables. This article talks about the concept.

Using DTS Packages with ColdFusion: Part 2
Reader Level: Reader Level

Many people use SQL Server to store their data, however SQL Server is much more involved than simply a server that allows storage for data. Data Transformation Services (DTS) is part of SQL Server and allows you to import and export data, manipulate files on the system, use FTP, among other things. Using some of SQL Server's built-in DTS functionality along with ColdFusion gives your web application access to some of this functionality.

Part 1 of this series showed how to export data from SQL Server to a CSV file triggered by a ColdFusion page. This part will show how to upload a CSV file to the server and import it into a new table. It will show how to pass information (a filename) to a DTS package from a ColdFusion page and use it in the package.

Using DTS Packages with ColdFusion
Reader Level: Reader Level

Many people use SQL Server to store their data, however SQL Server is much more involved than simply a server that allows storage for data. Data Transformation Services (DTS) is part of SQL Server and allows you to import and export data, manipulate files on the system, use FTP, among other things. Using some of SQL Server's built-in DTS functionality along with ColdFusion gives your web application access to some of this functionality.

Laszlo: Part 3 - Hello World
Reader Level: Reader Level

In the third article in our series we learn about the basic component of a Laszlo application, the canvas, and then display the ever-popular "Hello World" text on the canvas.

The Laszlo Series:
Laszlo: Part 1 - Overview
Laszlo: Part 2 - Installation
Laszlo: Part 3 - Hello World
Laszlo: Part 4 - Laszlo Widgets and Elements
Laszlo: Part 5 - Managing Layouts
Laszlo: Part 6 - Working With Data Coming Soon

Testing ColdFusion Forms
Reader Level: Reader Level

One of the most frequent problems that arises when developing ColdFusion applications is form processing. Often, forms don't work because they don't return the expected results. In this article, you'll learn how to create a form tester page that you can use to view the results of forms submitted via GET and POST. These can be regular HTML forms, or forms created using the cfform tag. You can even test Flash forms in ColdFusion MX 7.

Creating a Simple Blog - Part 5
Reader Level: Reader Level

One of the frequent questions in the forums is "How do I create a blog?". There are many commercial blog systems out there, and many full-featured blog providers, like Blogger, but you can also create a simple blog using the standard tools of Dreamweaver. This tutorial will be equally applicable to ColdFusion, ASP, PHP, ASP.NET, or JSP because we will be using standard Dreamweaver server behaviors to create the blog. This fifth part of the series will describe how to add a design to the blog, including a sidebar with category, blogroll, and RSS modules.

Simple Security with ColdFusion: No Database - No Problem
Reader Level: Reader Level

In this tutorial we will use ColdFusion to look at how we can implement a simple but secure method of authentication without the need for a database.

ColdFusion 7: Using ActionScript in Flash Forms
Reader Level: Reader Level

Recently, some of our subscribers have asked how they can manipulate Flash forms — a new feature of ColdFusion MX 7 — using ActionScript. At first glance, support for ActionScript in Flash forms seems limited. However, Flash forms are generated on ColdFusion 7 using a modified version of Flex Server, so if you know a little about Flex and ActionScript, you can get your Flash forms to perform some amazing tricks.

In this article, we're going to use ActionScript to resolve two issues posted on the Community MX Forums: how to create interdependent combo boxes using <cfselect>, and how to set focus to text fields (<cfinput>) in an accordion control.

Simple Search-Engine Friendly URLs
Reader Level: Reader Level

Often in your ColdFusion applications you are forced to use URL parameters to pass dynamic data between pages. These lead to cumbersome, non-intuitive URLs which are not search-engine-friendly (let alone human-friendly). This article shows how to create ColdFusion applications which use search-engine friendly URLs.

The technique described here has been tested with Apache 1.3 and 2.0 Web servers using the server installation of ColdFusion. Quick testing with the J2EE installation of ColdFusion suggests that this technique may not work as expected. In addition, things are not quite as simple in IIS and this technique won't work without adjustments; I'll probably cover those adjustments in another article in the future.

Building an XML Configuration File For Your ColdFusion 7 Application
Reader Level: Reader Level

Most ColdFusion applications put the configuration variables in the application.cfm page. The problem with this is that you need to be a ColdFusion developer in order to modify those settings.

This article will show how to put your application's configuration information into an XML file. This tutorial will also introduce a new ColdFusion 7 feature that allows us to validate an XML document against an XML Schema file to insure it is properly formated. I will also utilize the Application.cfc architecture as a replacement to the old Application.cfm technique. To read more about this new feature, read my article titled Using Application.cfc in ColdFusion MX 7.

ColdFusion MX 7 on Macintosh OS X: Part 2 Free!
Reader Level: Reader Level

Part 2 in our CF 7/Panther series shows you how to install the latest version of ColdFusion with JRun 4 in a number of different scenarios: as a new version, as an upgrade from an earlier version, or as a parallel installation with your existing version of ColdFusion.

Using Application.cfc in ColdFusion MX 7
Reader Level: Reader Level

Components (CFCs) were introduced in ColdFusion with the release of version 6. Components help developers to reuse code much like they would in an object-oriented environment.

With the release of ColdFusion 7, developers now have more opportunities to use components throughout their applications. This article will explore a new feature in ColdFusion 7 that allows developers to replace the Application.cfm file with an Application.cfc file.


Discovering ColdFusion MX 7: An Introduction To The SMS Gateway
Reader Level: Reader Level

One of the exciting new features in ColdFusion MX 7 is the introduction of SMS - Short Message Services. It is perhaps better known as text messaging, certainly in the UK; if not elsewhere. We will be looking at how you can enable and test ColdFusion MX 7 for SMS messaging.

While you can use your developer edition of CFMX 7 to work along with this tutorial, in a real world scenario you will need the enterprise edition.

Once we have the SMS application running we will see how we can test the system in two ways, by using the simulator that comes with CFMX 7.

1. Send and receive via the simulator
2. Send from a web form and receive via the simulator

ColdFusion MX 7 on Macintosh OS X: Part 1
Reader Level: Reader Level

Want to run the latest version of ColdFusion on OS X Panther? Part 1 of this tutorial will walk you through an installation of CF 7 that will work even if you're already running CF 6.1 on your Mac. Part 2 will show you how to upgrade an earlier ColdFusion installation to ColdFusion MX 7.


Discovering CFMX 7: Flash Forms - Part 2
Reader Level: Reader Level

In this tutorial, we will be looking at how we can create a more compact flash form by using the accordion interface. We will look at setting up required fields and how we can then validate them using ColdFusion.

We will also investigate the use of the datefield control. This control adds an icon to your form that when clicked allows a user to select a date from a scrollable flash calendar.

BlueDragon, an Alternative ColdFusion Platform: Part 2 - Installing the Standalone Server
Reader Level: Reader Level

The first article in our series on BlueDragon provided an overview of BlueDragon as it compares with ColdFusion MX. In this, the second article of our series, we look at installing the stand-alone version of BlueDragon 6.1 Server (the free version) on Linux with an Apache 2 Web server as well as installing on a Mac OS X workstation to serve as a development system.

The Blue Dragon Series:
BlueDragon, an Alternative ColdFusion Platform: Part 1 - Overview
BlueDragon, an Alternative ColdFusion Platform: Part 2 - Installing the Standalone Server
BlueDragon, an Alternative ColdFusion Platform: Part 3 - Installing the J2EE Server
BlueDragon, an Alternative ColdFusion Platform: Part 4 - Administering BlueDragon

Discovering CFMX 7: Flash Forms - Part 1 Free!
Reader Level: Reader Level

In this tutorial, we will be looking at how ColdFusion MX 7 makes it very easy for us to use and create flash forms in our work.

We will be looking at how to set up the forms and we'll investigate tabbed navigation and paging. Breaking our forms down into manageable chunks can be very helpful for our users, particularly on large forms. CFMX 7 makes it very easy for us to do this.

Finally we will look at skinning our flash forms and the skins that are natively available on the CFMX 7 server.

ColdFusion MX 7: Form Validation
Reader Level: Reader Level

With the new release of ColdFusion MX 7, code named Blackstone, the Macromedia engineering team has added more form validation features. These features offer additional options when performing server-side validation on forms. This article builds on my previous article titled ColdFusion Form Validation. I recommend you read that article or have a good understanding of form validation in ColdFusion MX 6. This article will examine the new form validation features in Blackstone using the hidden form field technique.

Discovering CFMX 7: Charting
Reader Level: Reader Level

In this tutorial, we will be taking a look at charting in ColdFusion MX 7. We will see how very easy it is to create and display dynamic data in the form of flash, JPG and PNG charts within our web pages.

Using Java and ColdFusion to Read the Metadata in JPEG Files
Reader Level: Reader Level

Most ColdFusion developers know that ColdFusion is built on Java and that there is a vast amount of Java classes available on the internet. However, not many ColdFusion developers know how to use those Java classes in their ColdFusion applications. In this article, we will use a set of Java classes written by Drew Noakes to examine the metadata in JPEG images.

ColdFusion MX 7: The Newest Version of ColdFusion Free!
Reader Level: Reader Level

Macromedia has released ColdFusion MX 7. This is a major upgrade to ColdFusion with lots of new features bound to enhance most developer's applications. This article provides an introduction to the new ColdFusion and its many exciting features.

Liverpool JumpStart with .NET
Reader Level: Reader Level

Ah yes, Liverpool, not only a great JumpStart, but now you can have it with ASP.NET support. In addition to a valid CSS2 and XHTML 1.0 Transitional, WAI and 508 Accessible CSS layout, you also get a dynamic ASP.NET login application. The original release of the Liverpool JumpStart comes bundled with ColdFusion, PHP, and ASP and uses Dreamweaver's built-in User Authentication Server Behaviors. Unfortunately, Dreamweaver doesn't boast similar server behaviors for ASP.NET. To help make up for that lack, here's a special tutorial just for you ASP.NET coders. I've taken the original Liverpool JumpStart pages and added the necessary ASP.NET code. The result: an out-of-the-box ASP.NET login solution combined with a versatile layout. What could be better? :-)

Included in the support files are the CF, ASP and PHP versions of the Liverpool JumpStart. There is a link at the end of the article that will allow you to download just the .NET version if you prefer, as well as a link to download the bundled tutorials that were included with the original Liverpool JumpStart.

The .NET version of Liverpool is available as a no charge upgrade to purchasers of the original Liverpool JumpStart. If you would like to receive the .NET version, please send us an email and we will send you the .NET files. Please be sure to include your name and the email address that is associated with the PayPal account used to make the purchase.

ColdFusion Form Validation
Reader Level: Reader Level

Form validation is critical to the stability of every web application. Allowing incomplete or invalid data input can cause unexpected errors. There are two methods to perform form validation. The first method is to validate the form's data before it is submitted. In a HTML based web application this would be done using JavaScript. The other method is to validate the form's data on the server. This article will examine a unique feature in ColdFusion that makes server-side form validation extremely easy.

BlueDragon, an Alternative ColdFusion Platform: Part 1 - Overview
Reader Level: Reader Level

This is the first article in a series that will look at BlueDragon, an alternative web application server which provides an implementation of CFML. Available in several versions including a free-to-use version, BlueDragon provides a viable, cross-platform alternative to Macromeida's ColdFusion MX for running applications developed in CFML.

The series will look at how to install BlueDragon, the basics of administering and configuring BlueDragon, as well as compatibility considerations with ColdFusion MX.

The Blue Dragon Series:
BlueDragon, an Alternative ColdFusion Platform: Part 1 - Overview
BlueDragon, an Alternative ColdFusion Platform: Part 2 - Installing the Standalone Server
BlueDragon, an Alternative ColdFusion Platform: Part 3 - Installing the J2EE Server
BlueDragon, an Alternative ColdFusion Platform: Part 4 - Administering BlueDragon

CMX JumpStart: Liverpool
Reader Level: Reader Level

The Liverpool JumpStart is a little different than what has gone before. It includes a dynamic ColdFusion login application built with Dreamweaver's User Authentication server behaviours. This allows you to quickly and easily edit the login if you need to do so. The login also supports dual access levels and provides default pages for each level to view, along with a logout page to kill the sessions when your users have completed whatever it was they logged in to do.

Also included are login application pages for .NET, PHP and ASP server models.

This JumpsStart contains 12 tutorials, including video lessons on creating a relational database in Access, using Dreamweaver's User Authentication server behavoiurs and setting a datasource via the ColdFusion administrator.

If you prefer not to use server side code, within the download files you will find a static version of the Liverpool JumpStart.

If you'd like a more detailed description of Liverpool, including screenshots, check out the free article Announcing a New CMX JumpStart: Liverpool.

Dreamweaver Piece by Piece Part 5: Creating and Processing Basic Forms Part 2
Reader Level: Reader Level

In the first part of our basic forms series, we learned how to configure Dreamweaver form preferences, set up the form with the proper actions and method, and use many of the different kinds of form objects such as text field, textarea, radio groups, and checkboxes.

In this second article in the series, we'll look at the menu/list form object, add our submit and reset buttons, use the validate form behavior, learn to set file permissions, and configure our PHP form processor. Also included in this article are both a ColdFusion and an ASP form processor for those who do not have PHP available on their servers.



Transforming XML With XSLT Using ColdFusion and ASP.NET
Reader Level: Reader Level

XML is a very powerful language that has many different uses. One of the most common uses of XML is for data storage. In this article I'll talk about how to transform data stored in XML format with the use of XSLT. Then I will demonstrate how to use ColdFusion and ASP.NET to perform the transformation.

Run Code at an Interval Using ColdFusion
Reader Level: Reader Level

Have you ever wanted to set up a section of code that will only execute once a day or once a week? You can use the <cfschedule> tag to run a ColdFusion template at scheduled intervals, but there is another method that in many ways is more flexible, because it works with a section of code on a page. The technique demonstrated in this article essentially runs a piece of code on your page at intervals.

ColdFusion on OS X
Reader Level: Reader Level

ColdFusion, Macromedia's powerful server-side scripting language, is not just for Windows developers. You can harness the power of ColdFusion and Java on your Mac by installing the free CF Developer Edition, which provides the same functionality as the top-of-the-line ColdFusion MX Enterprise. This tutorial will walk you through the installaton step-by-step, show you how to install the latest updaters for both JRun and ColdFusion, discuss your database options for ColdFusion on the Mac and show you how to write a shell script to start JRun and ColdFusion automatically upon login.

File Management with cfdirectory and cffile: Part One - Batch Delete
Reader Level: Reader Level

In this tutorial, we will use cfdirectory and cffile to delete files on the server based on the age of any given file. We will look at date masks and the use of variables to provide test parameters prior to carrying out the batch delete on the server.

Previous and Next Links for Details Page Stored Procedure
Reader Level: Reader Level

If you have used Dreamweaver to create dynamic pages, you are probably familiar with the Repeat Region and the concept of Next/Previous records. You are probably familiar with the Master/Detail pageset concept -- the Master page contains a table listing your records with links that allow you to drill down into a Details page. The Details page gives you the details about a particular record. Unfortunately, the Details page does not allow you to create the Previous/Next links easily. This is often desirable in a site, such as in a photo album, real estate listing, or other type of list where the user might want to remain on a Detail page and simply cycle through the records rather than go back to the Master page again. This tutorial will show how to create a SQL stored procedure that will supply Previous/Next links to any ColdFusion or ASP page.

Using Conditional Parameters in SQL Server
Reader Level: Reader Level

Most dynamic sites have a database search of some variety. Stored procedures are much more desirable in a web application for many reasons, yet when it comes to performing searches, the stored procedure is not as easily implemented. In a scripted web application, you can create dynamic SQL statements on the fly, putting conditional logic into your WHERE clauses and making the SQL statement fit the situtation. In a stored procedure, it's not so easy. This article will show one way to pass parameters conditionally to your SQL stored procedure. The technique applies to SQL Server, with code provided for ASP and ColdFusion.

This article assumes you know how to create stored procedures, work with the Query Analyzer, and set up your own DSNs.

File Downloads for an E-Store
Reader Level: Reader Level

Online stores can sell goods and services, but one of the frequent uses of an online store is to sell goods that are downloadable, such as software, music, videos, and pictures. There are many ways to dynamically supply the files to your customers, but this article will show one way that is secure and also saves on bandwidth because it will use Zip files for the delivery.

Calculating Shipping Costs with UPS Online Tools
Reader Level: Reader Level

Want to add accurate shipping cost selection features to an e-commerce application? Read this article to learn how you can use the free UPS online tools in conjunction with ColdFusion to do just that. You'll also get access to a ColdFusion Component to simplify working with the rates & service selection tool, and you'll be walked through the steps of a working example.

CMX Blog Scroller
Reader Level: Reader Level

This Flash component enables you to display one or more RSS feeds in Flash Player 7 with a number of customizable options. CMX Blog Scroller automatically parses the XML and displays the latest blog entries.

Includes: CMXBlogScroller.mxp, ColdFusion proxy script, sample FLA file, PDF

cmxBean.cfc: A Very Simple Bean Implementation in ColdFusion: Part 4
Reader Level: Reader Level

This is the final article in our series on building a simple bean-like framework called cmxBean.cfc. In this article we look at a sample application which shows how to actually apply cmxBean.cfc to a real application. We also look at the benefits and limitations of cmxBean.cfc.

Nested Repeat Regions in ColdFusion
Reader Level: Reader Level

If you've ever wanted to nest data -- such as titles under individual categories, or products under individual headings -- this article will show you how to do it with minimum fuss and muss using ColdFusion and the cfoutput tag.

cmxBean.cfc: A Very Simple Bean Implementation in ColdFusion, Part 3
Reader Level: Reader Level

In the third article in this series on creating a simple bean implementation using ColdFusion components we look at the getter and setter methods of cmxBean.cfc.

Using CSV Strings in SQL Server: Part 2
Reader Level: Reader Level

This article shows how to deal with a many-to-many relationship in SQL by using CSV strings to insert, update, and display data. This is useful for batch updates, multiple categories for products, and other situations where you have several items that need to be related to another item.

cmxBean.cfc: A Very Simple Bean Implementation in ColdFusion - Part 2
Reader Level: Reader Level

In Part 2 of this series on building a simple bean implementation in ColdFusion, we look at some of the theory and features of ColdFusion behind cmxBean.cfc, including introspection and extending components, and then look at the first four methods that make up cmxBean.cfc.

Using CSV Strings in SQL
Reader Level: Reader Level

Using SQL Server stored procedures, you can parse and insert individual items from a comma-separated list in the form of a string. This has great benefit in that you can avoid complex server-side scripting of batch inserts. This is useful for multiple categories for one product, or any other type of one-to-many relationship in a database table.

cmxBean.cfc: A Very Simple Bean Implementation in ColdFusion, Part I
Reader Level: Reader Level

This article is the first in a series of of articles detailing an extremely simple implementation of a Bean framework in ColdFusion. This framework will allow the simple creation of reusable data components which can be used to access and manipulate data in a database table without writing any new database code. This article provides a high-level overview of the framework which will be detailed in future articles.

Pseudo DSN-less Connections in ColdFusion MX
Reader Level: Reader Level

ColdFusion MX was a great leap forward in many respects, however, one thing that many feel is a step backwards, is that DSN-less connections are no longer allowed. If your client's process was to add their new products in bulk to the shopping cart system by uploading an Access database that contained a table with all the new products in it, or if they collected business cards at their industry convention and needed to upload their Excel spread sheet that stores all the email addresses to add to their eNewsletter, this change in the ColdFusion MX release probably upset your cart a little. The new functionality can basically stop you from connecting to an arbitrary databases, such as the uploaded files in the examples above. However, all is not lost if you are working with Access databases, or Excel files as a source for your data, then you may be able to use what is commonly called a pass through database to connect to your uploaded files. This tutorial will show you how to create pages that upload MDB and XLS files and then output data from those files, all without having a DSN created specifically for the files.

Sending WebPage Information Directly to a Pager or Cellular Phone
Reader Level: Reader Level

Sending information collected on your website directly to a clients pager or cell phone is easier than it sounds, and it just might be the extra wow factor you need to impress.

CMX Download Repeat Region Extension
Reader Level: Reader Level

This extension allows a user to create a downloadable CSV (comma-separated values) or other type of text file that contains the contents of a standard Dreamweaver Repeat Region server behavior (such as a server-side recordset). The extension can also be applied to any server-side content that you want to make downloadable in the browser. This is very useful for creating downloadable files of a results display, such as a product list, a sales report, or a search result.

Case Study: Using the New Flash Remoting Classes
Reader Level: Reader Level

Recently, one of our subscribers made me an offer I couldn't refuse. He created a ColdFusion component (CFC) that sends mail using CFMAIL, and queries an Access database. But he was having difficulty getting the data into Flash, and sending the results of a contact form to the CFC. He offered to send me the database, CFC, and FLA source file if I could use the new Flash Remoting classes to tie it all together.

In this article, you'll learn how to call methods on a Flash Remoting service and return the results to Flash MX 2004 components. Includes coverage of the following Flash Remoting classes: Service, PendingCall, RelayResponder, ResultEvent, FaultEvent, Log, RecordSet, DataGlue.

Support Files: ColdFusion component, Microsoft Access database, Flash document, ActionScript file.

Manipulating ID3 Tags: Part 2
Reader Level: Reader Level

In this second article on working with ID3 tags in MP3 files from within ColdFusion, you will learn how to set and update the values stored in ID3 tags.

Simple Dynamic Recordset Sorting Using Stored Procedures
Reader Level: Reader Level

A stored procedure gives you many benefits when building applications, including web applications using ColdFusion, ASP, and other technologies. They are fast because they are precompiled and they are secure because the database tables are not being accessed directly. One thing that is a little tricky in working with stored procedures is building dynamic queries. You can build a SQL statement as a string within a stored procedure and execute it using the EXEC statement (or xp_executeSQL), but this also defeats one of the purposes of building your functionality into a stored procedure: the statement is not compiled when it is built dynamically. This article shows one way of creating dynamic SQL on the fly while still allowing the stored procedure to be precompiled.

Manipulating ID3 Tags: Part 1
Reader Level: Reader Level

This is the first of two articles on manipulating ID3 tags from within ColdFusion; ID3 tags provide meta information about MP3 and other music files. This article outlines how to install the necessary Java classes and then outlines the basics of reading ID3 tags. **This article has been updated. The earlier article used the jd3lib library which has changed considerably and no longer retains its original functionality. The updated article replaces the jd3lib with jid3lib.

Creating a Login System
Reader Level: Reader Level

Learn how to use built-in ColdFusion MX security to require a login and password for your applications. You'll also get a chance to learn how to grant access to specific sections of the application based on the user's roles.

Better Error Messages for CF and Flash Remoting
Reader Level: Reader Level

There are many times while developing ColdFusion or (especially) Flash Remoting applications that the default log files and error messages supplied by ColdFusion and/or the NetConnection debugger don't give you enough information. For those situations, the technique shown in this article will show more than the typical amount of error info.

Beyond ColdFusion Query Basics
Reader Level: Reader Level

Queries are an important part of nearly every ColdFusion application. In this article, learn how to create more efficient queries by using built-in ColdFusion features, such as query caching and queries of queries.

Affiliate Tracking System For ColdFusion
Reader Level: Reader Level

ColdFusion users have an application.cfm file which makes building an application much easier in many respects. The reason is that this file can do a variety of different things because it is always the first file executed no matter what page was requested in your application. You can use this to your advantage in an affiliate tracking application, such as in an e-store. This article will show how to build it.

CMX CF Upload Size Server Behavior
Reader Level: Reader Level

CMX CF Upload Size allows you to set a maximum file size - in bytes - that a user may upload. If the file they attempt to upload exceeds your limit, they are given a message explaining that their file is too large. If the upload is successful, they will get a message saying the upload was successful. All the server behavior requires is that you have a file field and submit button inside of a form. This Server Behavior is for ColdFusion only.

CFC Log In System
Reader Level: Reader Level

Creating a CFC log in system incorporating structured role levels. We will look at instantiating a CFC and passing arguments into it from the form scope to trigger access to our application. The access is continually monitored, and will automatically present the log in form on any page where a user's session expires, or on any page that a user attempts to access the log in system from.

Creating a Simple Blog Part 4
Reader Level: Reader Level

One of the frequent questions in the forums is "How do I create a blog?". There are many commercial blog systems out there, and many full-featured blog providers, like Blogger, but you can also create a simple blog using the standard tools of Dreamweaver. This tutorial will be equally applicable to ColdFusion, ASP, PHP, ASP.NET, or JSP because we will be using standard Dreamweaver server behaviors to create the blog. This fourth part of the series will describe how to add categories to the blog by modifying the pages you've already created and also how to display the number of comments on each item.

Better Debug Info for ColdFusion Development
Reader Level: Reader Level

ColdFusion does not have a lot of functionality to aid in debugging your applications. The built-in debug information that you can access through the ColdFusion administrator gives you some basic information, but if you are using complex objects, structures, or CFCs, you are left without a way to examine these constructs. The technique shown in this article can also be used in a production environment because it can be turned on through a URL variable, and is tied to the user's session.

Limiting Upload File Size in CF
Reader Level: Reader Level

Even if you're standing right behind someone saying "OK, your upload size is limited to 10 kilobytes", chances are they'll try and upload something larger than that. This tutorial will outline how to prevent a user from uploading a file that exceeds your predetermined file size limitation. We'll also give the user a message explaining what the file size limit is - if they exceed it, and a "File Uploaded" message if they do not.

Consuming RSS Feeds in ColdFusion: Part 3
Reader Level: Reader Level

RSS Feeds provide an easy way for sites to syndicate news headlines and stories and are widely used by sites such as Yahoo! which want to make it easy for others to reuse their content. RSS is a simple XML language for defining the content of these feeds and using ColdFusion's XML object it is easy to consume and process these feeds in your ColdFusion Application. This final installment of our series on consuming RSS feeds in ColdFusion shows how to use the techniques from the previous article to build a complete page to consume and display an RSS feed.

A Simple Banner Application: Part 2
Reader Level: Reader Level

In Part 1, we covered the creation of the database, the application.cfm file, and a basic page to display our banners. This, the final installment, will take you through monitoring the number of times an ad is shown and counting each click-through a banner receives.

CF Fundamentals: Data Types
Reader Level: Reader Level

In this installment of the CF Fundamentals series, we look at data types. Data types are the types of information which ColdFusion can process and manipulate; these includes strings, numbers, dates and a variety of other data types. We also look at loosely and strictly-typed languages and how ColdFusion fits into this spectrum.

Creating a Guestbook - Part I
Reader Level: Reader Level

Guestbooks are a way for people to leave comments on your website for other folks to see. In this series, we'll build a guestbook from the ground up. Part I will cover the very basics and at the end we will have a functional guestbook. Part II will cover a couple of advanced concepts to add more functionality to the guestbook, like disallowing "bad" words and supplying "Next" and "Previous" navigation links.

A Simple Banner Application: Part 1
Reader Level: Reader Level

In this, the first of a two-part series, we will create a simple banner ad rotator that will randomly display an ad and monitor the number of times it is seen by our visitors, as well as, track our visitor's click-thrus. The application will ensure that every visitor will not see the same ad twice (unless, of course, they view enough pages to see every ad we have to display).

CF Fundamentals: Variable Basics
Reader Level: Reader Level

In this installment of the ColdFusion fundamentals series, the basic concept of variables is introduced including how to name variables and assign values to them.

Creating a Simple Blog Part 2
Reader Level: Reader Level

One of the frequent questions in the forums is "How do I create a blog?". There are many commercial blog systems out there, and many full-featured blog providers, like Blogger, but you can also create a simple blog using the standard tools of Dreamweaver. This tutorial will be equally applicable to ColdFusion, ASP, PHP, ASP.NET, or JSP because we will be using standard Dreamweaver server behaviors to create the blog. Part 1 of the tutorial can be found at http://www.communitymx.com/abstract.cfm?cid=7CC52. Part 2 will focus on adding more features to the blog, such as a system for adding and viewing comments, and more administration options.

ColdFusion Variables Part One: The form and variables Scopes Free!
Reader Level: Reader Level

In this series, we will look at the various scopes that exist within ColdFusion and how we can access them. We will look at how we can avoid name collisions and debug ColdFusion error messages. To begin the series, we will start with a look at the vaiables and form scopes. We will look at the problems that sloppy code can cause in our application and how we can ensure that our code produces the results we expect.

CMX CF Row Style
Reader Level: Reader Level

CMX CF Row Style is a Server Behavior for ColdFusion that takes your repeat region and changes the style of every other row to match a style from your Cascading Style Sheet, or the embedded styles on your page. This allows you to have not only a different color for every other row, but different colored text/font in every other row as well.

Note: This Server Behavior works with ColdFusion only.

CF Fundamentals: Overview
Reader Level: Reader Level

This is the first in a new series of articles on fundamental ColdFusion concepts for the new ColdFusion developer. This article provides an overview of the ColdFusion server and its place in your Web application framework and discusses the various versions of ColdFusion that are available.

Our First CFC: Part 3
Reader Level: Reader Level

In this, the final part of the series, we will look at building on our CFC to make it a complete resource for working with our database information. We will build upon the functionality we have already completed and create update and delete functions. We will also discover how we can populate a select list directly from our CFC and pass its values to a different template and invoke a second function from within our CFC.

Making The List: List Creation and Manipulation in ColdFusion
Reader Level: Reader Level

Lists can be a great friend, and ColdFusion provides several ways to create and interact with them. This article will show how easy it can be to create, manipulate, and use lists to your advantage.

Creating a Simple Blog Part 1
Reader Level: Reader Level

Many people ask "how can I build my own blog?" This tutorial will show how to create a simple blog using point-and-click features of Dreamweaver. For that reason, this tutorial can be followed for any server model that Dreamweaver supports.

Our First CFC: Part Two
Reader Level: Reader Level

In this, the second tutorial in the series, we will look at reducing the overhead created by cfinvoke and making our CFC available on an application wide basis. We will extend our CFC to incorporate a second function that handles a database insert, and ensure that our arguments are only passed into our CFC when we are ready for the component to be executed.

A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 3: In-Memory Caching
Reader Level: Reader Level

Caching is a technique which can dramatically improve the performance of some Web applications. This article extends the file-based caching technique outlined in the previous articles and offers an in-memory caching technique.

The Home-Brewed Content Caching Series:
A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 1: The Theory
A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 2: The CFC
A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 3: In-Memory Caching

Export Recordsets to Excel - Part 3
Reader Level: Reader Level

In Parts 1 and 2, Bill showed you how to create Excel files on the fly and email them to your clients, yourself, etc. Well, what if your client just wants to be able to click a link and download it directly from the server? That's exactly what I'll show you how to do in this installment. I do recommend you read at least the first installment as the topics covered there will not be rehashed in this one.

Resending Undeliverable Mail in ColdFusion
Reader Level: Reader Level

ColdFusion is capable of high-output mail delivery. One problem with the ColdFusion server that is not addressed by any built-in functionality is what happens when an email cannot be delivered. This article will address one possible way to handle undeliverable messages. This method only works in instances where you control your own server, however, as the central spool folders for emails in ColdFusion are server-wide rather than site-wide.

Our First CFC: Part One
Reader Level: Reader Level

In this tutorial, we will look at creating our first ColdFusion component and how we can interact with it. We will look at the cfargument, cffunction and cfreturn tags, and explore how we can interact with our component using cfinvoke and cfinvokeargument.

A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 2: The CFC
Reader Level: Reader Level

Caching is a technique which can dramatically improve the performance of some Web applications. This article presents a ColdFusion component which makes a home-brewed approach to caching Web application output reusable in any of your pages.

The Home-Brewed Content Caching Series:
A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 1: The Theory
A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 2: The CFC
A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 3: In-Memory Caching

A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 1: The Theory
Reader Level: Reader Level

Caching is a technique that can dramatically improve the performance of some web applications. This article presents a home-brewed approach to caching web application output at a fine-grained level, enabling you to cache sections of individual pages.

The Home-Brewed Content Caching Series:
A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 1: The Theory
A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 2: The CFC
A Quick Approach to Home-Brewed Content Caching in ColdFusion - Part 3: In-Memory Caching

Consuming RSS Feeds in ColdFusion: Part 2
Reader Level: Reader Level

RSS Feeds provide an easy way for sites to syndicate news headlines and stories and are widely used by sites such as Yahoo! which want to make it easy for others to reuse their content. RSS is a simple XML language for defining the content of these feeds and using ColdFusion's XML object it is easy to consume and process these feeds in your ColdFusion Application. This first installment of our series on consuming RSS feeds in ColdFusion shows how to extract information from a ColdFusion XML object so that we can process an RSS feed.

Searching xml Documents with ColdFusion
Reader Level: Reader Level

In this tutorial, we will investigate how we can search an xml document. We will be looking at creating a dynamic table and populating it from our xml data. We will then look at how we can search that data and return the information we need. Along the way we will also be looking at query of queries, and investigating the XmlParse function.

Consuming RSS Feeds in ColdFusion: Part 1
Reader Level: Reader Level

RSS feeds provide an easy way for sites to syndicate news headlines and stories, and are widely used by sites such as Yahoo! which want to make it easy for others to reuse their content. RSS is a simple XML language for defining the content of these feeds, and using ColdFusion's XML object it is easy to consume and process these feeds in your ColdFusion Application. This first installment of our series on consuming RSS feeds in ColdFusion introduces RSS and the basics of the XML object.

CMX User Password Component
Reader Level: Reader Level

This ready-to-use ColdFusion component (CFC) provides a simple mechanism to handle assigning passwords to user accounts, verifying passwords provided by users, and generating random passwords for accounts.

Using UUIDs for Database Record IDs
Reader Level: Reader Level

Auto-incrementing numeric fields are a useful way to create unique IDs for records in a database table, but they have their limits. UUIDs provide a powerful alternative that is scalable, transportable and easy-to-implement.

CMX CF MultiPart
Reader Level: Reader Level

CMX CF MultiPart is ideal to use for emailing your newsletters. This server behavior includes the following features:

1. Attaches both an html and plain text document to your email so that email clients that cannot read html will see a plain text version.
2. Sends to all of the email addresses you choose within a recordset.

Works with ColdFusion 6.1

Using the Hash Function
Reader Level: Reader Level

The Hash function is a handy tool for many purposes. You can use it to protect passwords in databases, or track changes to files. This article introduces how to use the function and shows some practical examples.

Dynamic Web Development - The Basics: Creating Dynamic List Menus
Reader Level: Reader Level

In this tutorial, we will look at how we can create an inline dynamic list menu, complete with a tabindex. We will also look at how we can filter page content based on a url variable. This tutorial contains video demos.

An Image Delivery System with JIMG: Extending the Application
Reader Level: Reader Level

This is the final article in a series detailing the design and implementation of a system for dynamic image delivery from ColdFusion using JIMG. This article provides suggestions for ways to extend the application, including implementing access control for images, and storing images in a database.

The Image Delivery System with JIMG Series:
An Image Delivery System with JIMG: Overview and Planning
An Image Delivery System with JIMG: The cmxImage.cfc
An Image Delivery System with JIMG: The image.cfm Template
An Image Delivery System with JIMG: Extending the Application

An Image Delivery System with JIMG: The image.cfm Template
Reader Level: Reader Level

This is the third article in a series detailing the design and implementation of a system for dynamic image delivery from ColdFusion using JIMG. This article details the design of the image.cfm which handles the actual delivery of images.

The Image Delivery System with JIMG Series:
An Image Delivery System with JIMG: Overview and Planning
An Image Delivery System with JIMG: The cmxImage.cfc
An Image Delivery System with JIMG: The image.cfm Template
An Image Delivery System with JIMG: Extending the Application

Dynamic Web Development - The Basics: Creating a ColdFusion Datasource
Reader Level: Reader Level

In this tutorial, we will look at how we can set up a datasource in the ColdFusion administrator and access it in Dreamweaver. This tutorial contains video demos.

An Image Delivery System with JIMG: The cmxImage.cfc
Reader Level: Reader Level

This is the second article in a series detailing the design and implementation of a system for dynamic image delivery from ColdFusion using JIMG. This article details the design of the cmxImage.cfc component which handles the actual image processing and manipulation.

The Image Delivery System with JIMG Series:
An Image Delivery System with JIMG: Overview and Planning
An Image Delivery System with JIMG: The cmxImage.cfc
An Image Delivery System with JIMG: The image.cfm Template
An Image Delivery System with JIMG: Extending the Application

Dynamic Web Development - The Basics: Creating a Join and Log In Application.
Reader Level: Reader Level

In this tutorial we will use the native Dreamweaver behaviours to create a join and log in application for our users. We will design the database tables, and the insert and log in pages. As this tutorial only uses the native Dreamweaver behaviours the server-side language you use is irrelevant. We will let Dreamweaver insert all the code that is required and of course that code will be defined by your site definition. This tutorial contains video demos.

Handling Email Blasts with ColdFusion: Part 2
Reader Level: Reader Level

In Part 1 of this series, we covered some general principles for handling an email blast from ColdFusion. In this part, I'll present some code that should make it very easy to set up a recurring mailing for a newsletter. Community MX uses a similar system for sending out the weekly newsletter.

An Image Delivery System with JIMG: Overview and Planning
Reader Level: Reader Level

This is the first article in a series detailing the design and implementation of a system for dynamic image delivery from ColdFusion using JIMG. This system resizes images on-the-fly and adds copyright notices to images if needed.

The Image Delivery System with JIMG Series:
An Image Delivery System with JIMG: Overview and Planning
An Image Delivery System with JIMG: The cmxImage.cfc
An Image Delivery System with JIMG: The image.cfm Template
An Image Delivery System with JIMG: Extending the Application

Nesting Query Driven cfoutput Tags
Reader Level: Reader Level

ColdFusion provides great functionality right out of the box, but what happens when it won't accommodate exactly what you need to do? Sometimes there is a simple, if not obvious, answer.

Dynamic Web Development - The Basics: The Application.cfm Template
Reader Level: Reader Level

In this tutorial, we will explore how to use the ColdFusion Application.cfm template to make our lives so much easier. We will also explore the tag and how to use and manage variables for our application from a single location.

Using the Log In Server Behavior
Reader Level: Reader Level

In this tutorial we will be learning about the standard Log In Server Behavior that ships with Dreamweaver. We will be looking at this Server Behavior in its basic form, in a language independent way. This tutorial is aimed at beginners who are new to Server side development and looking to to be able to show unique content on a user group by user group basis. Tutorial contains video demos.

Handling Email Blasts with ColdFusion: Part 1
Reader Level: Reader Level

ColdFusion has built-in functionality that makes it easy to create an email blast for a newsletter, order confirmation, or other type of dynamic email generation. The article describes the many aspects of dynamic emails, including admin mail settings, bounced emails, different types of data used in emails, looping within emails, and other things you'll need to know when sending a dynamic email.

Structures Part Two: Nesting Structures
Reader Level: Reader Level

In this, the second part of our series on structures, we will look at how we can create nested structures. We will look at how we can populate them, and we will also investigate the use of dot notation.

Part One: An Introduction to ColdFusion Structures Free!
Reader Level: Reader Level

In this tutorial we will have a gentle introduction to the ColdFusion structure. We will look at how structures are created and the basics of what they are. In the coming articles in this series we will look at the ways in which we can put structures to work in our applications.

Export Recordsets to Excel - Part 2
Reader Level: Reader Level

In Part 1 of this tutorial, we learned how to export the contents of a recordset to an Excel spreadsheet, and then email that report to a specific email address. In Part 2, we'll look at ways to adjust our query in ColdFusion so that we can build customized reports that can then be exported to Excel. We'll also go over how to email the report to any email address you like, rather than just the one email address we used in Part 1 of the tutorial.

Deconstructing the CMX Zip CFC
Reader Level: Reader Level

Learn the techniques used to create the CMX Zip CFC.

ColdFusion Arrays - Part Three: User Interaction
Reader Level: Reader Level

In this, the third tutorial in this series, we will look at how we can allow our users to create and interact with our arrays. We will do this by allowing our users to select 5 songs from a select list. We will perform error checking to ensure our users do not select more, or less, than that number. When we have the correct information we will insert the array that was populated by our user into a database table.

CMX Zip CFC
Reader Level: Reader Level

This is a ready-to-use ColdFusion Component you can use to easily create ZIP archives right from within your ColdFusion applications. No outside sofware (such as WinZip) is required and the component only uses Java classes available in any standard ColdFusion MX installation.

Making the Log In User Server Behavior Case-Sensitive
Reader Level: Reader Level

The Log In User Server Behavior is handy, for sure. But it does not deal with case-sensitivity with regard to passwords. This tutorial will will cover how to add three lines of simple code to the Server Behavior to achieve case-sensitive passwords. Find out how easy it can be to modify Macromedia's "stock" server behaviors and make them do what you want them to.

Arrays in ColdFusion - Part 2: 2-Dimensional Arrays
Reader Level: Reader Level

In this tutorial we will look at the two-dimensional ColdFusion array. We'll look at their structure, and how we can populate them from a query.

Part One: Creating and Manipulating Arrays
Reader Level: Reader Level

In this tutorial we will look at the basics of arrays in ColdFusion. We will explore how we can create an array, and how to populate it with data. Once we have created and populated the array, we will look at how we can manipulate the data within that array by using the ArrayAppend, ArrayPrepend and ArrayInsertAt functions.

Check New Username Server Behavior
Reader Level: Reader Level

A lot of people in the Dreamweaver forums ask "How can I make sure when someone registers on my website that their username is not the same as someone else's?" Server behaviors can save you time, sweat, energy and frustration. The Check New Username server behavior is one of those behaviors that has been a part of Dreamweaver since UltraDev, but folks glance by it somehow. In a few simple steps, you'll learn how to use this server behavior, and also how to modify it a bit to offer greater flexibility.

Using the cfsavecontent Tag with UDFs
Reader Level: Reader Level

In this tutorial we will build on the earlier UDF tutorials. We will look at using a query within the UDF and returning structured content from the UDF for display in the calling template.

Deconstructing the CMX Unzip CFC
Reader Level: Reader Level

Learn the techniques used to create the CMX Unzip CFC.

CMX Unzip CFC
Reader Level: Reader Level

Use this ColdFusion component to extract files from ZIP archives from within your ColdFusion applications.

Counting Users In Our Application
Reader Level: Reader Level

In this tutorial we will look at how we can count users that are accessing our application. As each new user visits the site we will create a new key for them and add them into the structure. By using the DateDiff function we will also see how we can remove users that have left our application. We will also discuss how we can use the cfdump tag to view the function in operation.

Part Four: Building a UDF Library
Reader Level: Reader Level

In this tutorial we will look at building on our discount UDF, and grouping it with similar UDFs, to create a library of user-defined functions. We will also look at adding a UDF to perform our vat calculations.

Part Three: Utilising UDFs in a Shopping Cart Scenario
Reader Level: Reader Level

In this tutorial we will explore how we can make UDFs work for us in a shopping cart scenario of buy one item, get a % reduction if you buy the second added extra item. We will explore how we can use required, and not required, arguments and look at supplying default variables for arguments that aren't required.

Part Two: Interacting With Our UDFs
Reader Level: Reader Level

In this tutorial we will pick up from where we left off in Part One. We'll explore how we can allow our users to interact with the UDF by using variables in the url scope to return specific data from a query. We will also explore using a dynamically populated unordered list to provide the necessary information to the UDF.

User Defined Functions: The basics Free!
Reader Level: Reader Level

This tutorial will examine how to extend ColdFusion with tag-based User Defined Functions (UDFs). We will start at the beginning and see how we can construct a simple UDF and what the basic requirements of the UDF are.

ColdFusion: Getting Into Good Coding Habits Free!
Reader Level: Reader Level

In this article we will look at good coding practices for evaluating form variables and guarding against url variable errors. We will also look at customising Dreamweaver's default ColdFusion template to prepare a standard set of comments to make revisiting our older files so much easier!

Export Recordsets to Excel - Part 1
Reader Level: Reader Level

I have a client that lives and dies by Excel data. He uses Excel as a database in his office, and wants his website stats, and online sales data, emailed to him in Excel format. ColdFusion makes this task very simple. In this tutorial, we'll learn how to create an Excel file on your server through ColdFusion, append data to it, and even email it automatically to your customer.

Masks in ColdFusion (Part 3): Formatting Numbers
Reader Level: Reader Level

The NumberFormat function in ColdFusion allows you to format numeric output almost any way you might want using masks. The third part in a series about masks for dates, times and numbers, this article teaches you to use these numeric masks.

Unicode and International Character Sets in ColdFusion MX: Part 3
Reader Level: Reader Level

This is the third and final article in a series about using Unicode and International Character sets in ColdFusion. This article provides a quick overview of how to ensure your Unicode text is handled properly by databases and, in particular, MySQL and Microsoft Access.

The Unicode & International Character Sets Series:
Unicode and International Character Sets in Coldfusion MX: Part 1
Unicode and International Character Sets in Coldfusion MX: Part 2
Unicode and International Character Sets in Coldfusion MX: Part 3

Dissecting the Login User Server Behavior
Reader Level: Reader Level

Dreamweaver MX makes it very easy to create a page where your users can log in to your website. In this tutorial, you'll find out how one simple server behavior can not only provide this functionality, but can also restrict access to certain pages based on the user's predefined access level.

Grouping with cfoutput
Reader Level: Reader Level

Have you ever needed to group the results of a database query into related chunks? For example, a listing of employees by department, where the department name is only shown once, then each employee is shown under the corresponding department. Well there is an attribute of the cfoutput tag that will allow you to do just that. And this tutorial shows you how.

Understanding CFCONTENT
Reader Level: Reader Level

You may have seen the CFCONTENT tag used to change the character set of a page by specifying the necessary HTTP header for your file. But, the CFCONTENT tag can be used for much more. For instance, you can use it to return non-HTML MIME types from ColdFusion to the browser. For instance, a ColdFusion file could just as easily return an image or a PDF file to the browser instead of an HTML page. This article tells you how.

Exploring the cflock Tag
Reader Level: Reader Level

In this article we will look at the cflock tag and its attributes. We will look at how we can deploy the cflock and how we can use its attributes to ensure we get the protection we want for our code.

Unicode and International Character Sets in ColdFusion MX: Part 2
Reader Level: Reader Level

In part 1 of this series we learned how to work with international character sets and encodings in ColdFusion MX and the role of Unicode. In this installement, learn to create forms which can accept non-ASCII text input and then correctly access the submitted data from your ColdFusion pages.

The Unicode & International Character Sets Series:
Unicode and International Character Sets in Coldfusion MX: Part 1
Unicode and International Character Sets in Coldfusion MX: Part 2
Unicode and International Character Sets in Coldfusion MX: Part 3

Flash Remoting in Flash MX 2004 Free!
Reader Level: Reader Level

Many people are wondering if Flash Remoting still supported in Flash MX 2004. The answer is “Yes”, however I think the next few months will be a transition period. The latest Flash Remoting components from Macromedia still utilize ActionScript 1.0 code, but the good news is that everything still seems to work. In this article I'll try to answer a few of those questions that have appeared since the release of Flash MX 2004 and Flash Professional.

Manipulating Images with Jimg (Part 2)
Reader Level: Reader Level

In Part 2 of this tutorial, we use Jimg, the ColdFusion component from DRK 4, to create a photo gallery application. You'll learn to employ CFFILE to upload the file, and Jimg to generate a thumbnail image with a border and caption. In addition, you'll learn to dynamically display the contents of image folders using ColdFusion's CFDIRECTORY tag.

Page Based Dynamic Images in an Included File: Method 2
Reader Level: Reader Level

In the first installment of this series we looked at a simple, but manual way to determine what image to display in an included file based on what master page was being called. In this installment we will look a completely dynamic approach to accomplish the same result.

CMX EZ Mail
Reader Level: Reader Level

CMX EZ Mail will email the contents of any form to any recipient you wish, and then redirect the user to any page you specify. You only have to fill out four simple fields in the server behavior. This behavior is great for creating a quick Contact Us page, or anything similar. This behavior is for CFMX and ASP/VB

Creating a custom CF log In application
Reader Level: Reader Level

In this tutorial we will look at creating a log in application that is a little leaner than the dreamweaver one and allows code reuse through the use of the Application.cfm template.

Manipulating Images with Jimg (Part 1)
Reader Level: Reader Level

One of the hidden gems in Macromedia's DevNet Resource Kit Volume 4 (DRK 4) is Jimg. At its core, Jimg is a series of Java classes that give ColdFusion developers access to the Java Advanced Imaging API (JAI). Practically speaking, this means that you can use Jimg to resize an image, obtain its size and dimensions, draw borders and text, rotate, crop, and much more. In Part 1 of this tutorial, we'll employ Jimg to generate thumbnail images.

Upload An Image and Insert Its Name Into The Database Free!
Reader Level: Reader Level

In this tutorial we will look at how we can transfer an image from the user's hard drive to the server and then insert the image's name into our database for use on any necessary pages.

Eliminating Extra White Space in Your HTML
Reader Level: Reader Level

Typically, ColdFusion-generated HTML code has plenty of extra white space. It's easy to get rid of this extra white space. Here's how.

Masks in ColdFusion (Part 2): Formatting Times
Reader Level: Reader Level

If you have ever struggled to format times properly for output, you can take advantage of the TimeFormat function and handy formatting masks. This article tells you how to structure masks for formatting times in ColdFusion.

CMX Email Any Form
Reader Level: Reader Level

CMX Email Any Form is a server behavior for ColdFusion MX or ASP/VB. You can use it one of two ways:

1. Use it on an asp or cfm page that has a form on it, and it will automatically gather all of your form fields and email the form to whoever you specify.
2. Apply it to a blank asp or cfm page and it can email all of the forms on your site.

Example for scenario 2: If you have a Contact Us form, a Survey form and a User Feedback form all on separate pages, you can submit any or all of those pages to the blank page you apply the server behavior to. Something like a 'Catch-All' for your forms. This extension will work with CFMAIL and CDONTS.

Using Authorize.net with ColdFusionMX
Reader Level: Reader Level

Do you need to accept credit card payments on your website? Although this can seem like a daunting task, it's not difficult using Coldfusion, and a handy custom tag made specifically for use with Authorize.net's payment gateway.

Porting Pollster to SQL Server Free!
Reader Level: Reader Level

One of the most popular widgets in Macromedia's DevNet Resource Kit Volume 4 (DRK 4) is Pollster. This tutorial includes everything you need to migrate Pollster to SQL Server, including a SQL script and instructions on revising the application's ColdFusion components.

Masks in ColdFusion (Part 1): Dates and Times
Reader Level: Reader Level

If you have ever struggled to format dates properly for output, you can take advantage of the DateFormat function and handy formatting masks. This article tells you how to structure masks for formatting dates in ColdFusion.

Using ColdFusion Locales
Reader Level: Reader Level

ColdFusion MX has done a lot to make internationalized applications easier to build. Aside from it's built-in Unicode support, ColdFusion MX supports the use of Locales to make it easy to generate the output of dates, times and other data in a language and culturally-appropriate fashion. This quick tutorial shows you how to use these locales in your applications.

Unicode and International Character Sets in Coldfusion MX: Part 1
Reader Level: Reader Level

ColdFusion MX is fully Unicode compliant but making everything work properly for international character sets from the browser through to the back end database requires a firm understanding of Unicode and how to use it in ColdFusion MX. This article is the first in a series of three articles that show you how to work with Unicode and international characters sets in ColdFusion.

The Unicode & International Character Sets Series:
Unicode and International Character Sets in Coldfusion MX: Part 1
Unicode and International Character Sets in Coldfusion MX: Part 2
Unicode and International Character Sets in Coldfusion MX: Part 3

Email a Forgotten Password in ColdFusion Free!
Reader Level: Reader Level

You've done it... I've done it. We've all signed up at a website and had to create a username and a password for ourselves, only to forget them months or perhaps even minutes later. Most sites allow you to have your password emailed to you automatically. That's what this tutorial will go over: emailing a user their password using some very simple ColdFusion code. All of the action will take place on the log-in page, so your user never has to leave the log-in page.

Page Based Dynamic Images in an Included File: Method 1
Reader Level: Reader Level

So you want to leverage the ability to use include files to ease site maintenance, but need to be able to show a different image based on the page being viewed. Not to worry, there are a couple of methods you can use with ColdFusion to achieve that goal. We will look at both methods in this two part series.

High Volume Mail without CFMAIL, Part 3: Handling Bad Addresses and Bounced Messages
Reader Level: Reader Level

This is the third and final part of a series of articles on using outside Perl scripts to manage the delivery of mail to large lists from ColdFusion. This article addresses how to handle incorrectly formed addresses, banned users and bounced messages.

ColdFusion MX: The Red Sky Upgrade Free!
Reader Level: Reader Level

ColdFusion MX has been out for over a year now, and has been becoming more and more reliable and stable with each updater. Updaters 1, 2, and 3 each addressed bugs and problems with CFMX. The latest update, the ColdFusion MX 6.1 updater (code named Red Sky) was released today and offers much more than simple bug fixes. The release can be considered a true upgrade. The best part of the upgrade is that it's free.

CMX CF Image Popup
Reader Level: Reader Level

The CMXCF Image Popup serve behavior works with your database to open a popup window containing an image from your database. The window will size itself to the dimensions of the image, and will close if the user clicks on it. If no reference to the image exists in your database, the behavior will allow you to display an alternative thumbnail image that will not open a popup window. It has the following features Popup window will size itself to the dimensions of the image, as called out in the height/width fields of your database. Allows you to display an alternate thumbnail on your page if there is no image for a particular record. The alternate image will not open up a popup window.

Xsl transformation: Weaving magic on the server.
Reader Level: Reader Level

In this tutorial we take our xml file and transform it with xsl on the server using ColdFusion, the resulting transformation is held in a variable and then streamed into the browser as xhtml.

High Volume Mail without CFMAIL, Part 2: Sending Personalized Messages to a Mailing List
Reader Level: Reader Level

This is the second in a three-part series showing how you can use Perl to bypass limitations in CFMAIL for sending mailings to big lists. This installment shows how to personalize messages sent to the list.

CF Administrator: Debugging Settings
Reader Level: Reader Level

There is nothing worse than spinning wheels trying to debug an application in the dark. This artice will show you how to limit the debugging information display for just yourself and describe all of the possibilities contained in the CF Administrator's debugging settings.

High Volume Mail without CFMAIL, Part 1: Sending a Message to a Big List
Reader Level: Reader Level

This is the first in a series of articles on how to get around the limitations of CFMAIL for sending mailings to large lists by using Perl to handle the mailing. This article covers the basics of generating mailings to large lists in this way.

Using a ColdFusion Custom Tag as a Site Template Part 3
Reader Level: Reader Level

ColdFusion custom tags allow you to build a flexible template for your site that will feed every page on the site. Part 1 of this series showed the basic concepts of the custom tag and how to use one as a site template. The tutorial addressed the setup and implementation of a custom tag, and showed how to supply a title to the document dynamically. Part 2 showed you how to add other features to this template, such as JavaScript, CSS, and meta tags. Part 3 will show how to incorporate a table layout or a div layout in setting up your template.

CMX CF Random Image
Reader Level: Reader Level

CMX CF Random Image is a Server Behavior that will display a random image on your page every time the user revisits or refreshes the page you apply the behavior to. It's a very simple behavior that only asks for the name of the folder that contains the images you want to randomly display on the page.

CF_CMXIMAGE: A Custom tag for image manipulation on the server
Reader Level: Reader Level

Have you ever needed to manipulate images on the server from ColdFusion. This tag lets you easily use the open-source ImageMagick image manipulation package to resize and change the format of images from your ColdFusion applications.

Creating XML Documents with ColdFusion
Reader Level: Reader Level

Learn how to create an xml file by passing a cfquery over your data, see how it can be easily exported and written to your machine and then reimported back into access to create a database table.

Using a ColdFusion Custom Tag as a Site Template Part 2
Reader Level: Reader Level

ColdFusion custom tags allow you to build a flexible template for your site that will feed every page on the site. Part 1 of this series showed the basic concepts of the custom tag and how to use one as a site template. The tutorial addressed the setup and implementation of a custom tag, and showed how to supply a title to the document dynamically. Part 2 will show you how to add other features to this template, such as JavaScript, CSS, and meta tags.

On-the-Fly Image Manipulation with ColdFusion and ImageMagick
Reader Level: Reader Level

Have you ever wanted to be able to resize or convert images directly from within ColdFusion. By combining ColdFusion with a powerful open-source image manipulation package called ImageMagick, this is possible.

Using a ColdFusion Custom Tag as a Site Template Part 1
Reader Level: Reader Level

ColdFusion developers have had Custom Tags in their arsenal of tricks since the early days of ColdFusion. With CFMX, the tag has made it even easier to use custom tags on your pages. With the introduction of ColdFusion Components (CFC) in CFMX, the custom tag has taken a back seat to the versitility of CFCs, but some things are ideally suited to the ColdFusion Custom Tag API. This article will address one use of a ColdFusion custom tag: building a flexible template for your site that will feed every page on the site.

Check for duplicate database entries
Reader Level: Reader Level

You may have a database in which you have duplicate entries in a particular column. This may be by design, or possibly by accident. If you've inherited the site from someone else, you may not be aware of this duplicate data. Or perhaps you are aware, but you'd like to see what or where this data is. This tutorial will allow you to build a page that lists only duplicate entries from a column in your database.

Enabling Session Variables in ColdFusion Free!
Reader Level: Reader Level

Enabling session management in ColdFusion is not automatic. So if you're having trouble getting your user log in form to work in Dreamweaver, take at look at this article where we walk you through the process of enabling sessions.

Preventing duplicate database entries in ColdFusion
Reader Level: Reader Level

If you need a Username to be unique when a user registers on your website, this article shows two simple ways to insure that they cannot select a name that is already being used. These techniques can be used to prevent the creation of duplicate database entries in any database.

ColdFusion Row Colors Free!
Reader Level: Reader Level

The CF Row Colors server behavior will allow you to easily add alternating row colors to your repeat region.

Populating a select list using cfdirectory
Reader Level: Reader Level

Have you ever need to pull the contents of a directory within your site and make it available to you visitor via a select list? Well, ColdFusion provides an easy way to do it using the <cfdirectory> tag.

Using CFDirectory to Get Multiple File Types
Reader Level: Reader Level

While the cfdirectory is a very powerful and helpful tag, it does have one flaw. You can only filter the files gathered with the tag by a single file type. So if you have a folder containing both .jpg and .gif files there is no way to get them all at once. Well, with a little help from ColdFusion's query of queries feature we can overcome this problem.

Emailing file attachments with ColdFusions cfmail and cfmailparam tags
Reader Level: Reader Level

Learn how to allow your viewers to send you file attachments through your web site forms. Shows you how to upload the file and create a variable for storing the file until it's called for forwarding it on to its destination.

cf_label custom tag
Reader Level: Reader Level

Handy dandy little custom tag to clean up your page code. Picking up from my experience with ASP.NET, I wanted a way to be able to separate some of my display code from my program logic.

This custom tag allows me to set properties such as style and text from code at the top of my coldfusion template, and define the custom tag elsewhere on the page, thus neatly separating code from content. When it comes to code organization and maintainability, this is one of the best techniques I have found so far.

ColdFusion - CFML Basics - Part 3
Reader Level: Reader Level

Part 3 in a series of articles that will take you through the basic tags used in the CFML language. Providing you with an explanation of the tag along with examples. This installment will compare the <cfquery> tag to ColdFusion's 'shorthand' methods of inserting and updating records; the <cfinsert> and <cfupdate> tags.

The CFML Basics Series:
ColdFusion - CFML Basics - Part 1
ColdFusion - CFML Basics - Part 2
ColdFusion - CFML Basics - Part 3

Flash Remoting 101
Reader Level: Reader Level

When you hear the term "Flash Remoting", you might be wondering what exactly is being referred to. Macromedia's latest push towards the Rich Internet Application has at its core the Flash Remoting technology. This article will give you a brief introduction and show you the necessary requirements to getting it up and running on your machine and your web server.

Using a database to display images dynamically Free!
Reader Level: Reader Level

Let's say you have a repeat region and you want to display a unique picture with each record. There's really no way you can do that without using your database to hold information about the image you want to use. In this tutorial, you'll learn how to use your database and a repeat region to dynamically display your images. We'll even go over how to display an alternate image if there is no reference to it in your database.

ColdFusion - CFML Basics - Part 2
Reader Level: Reader Level

Part 2 in a series of articles that will take you through the basic tags used in the CFML language. Providing you with an explanation of the tag along with examples. This installment covers the <cfquery> tag.

The CFML Basics Series:
ColdFusion - CFML Basics - Part 1
ColdFusion - CFML Basics - Part 2
ColdFusion - CFML Basics - Part 3

Using the Google API from ColdFusion
Reader Level: Reader Level

Learn to build Google searches right into your own ColdFusion applications using the Google Web Service API.

Word Wacker Extension for Dreamweaver MX
Reader Level: Reader Level

Have you ever needed to display a snippet of a field from a database with ColdFusion, but wanted to determine the number of words to display instead of characters? This extension will do that for you and more. Word Wacker will take a field from a ColdFusion query (recordset) and "trim" it down to the number of words you provide. It will also allow you to strip the HTML from the "trimmed" snippet, as well as, allow you to maintain line breaks when displaying the snippet.

CFFILE: Uploading files to your server with ColdFusion
Reader Level: Reader Level

Learn how to to use multipart/formdata in your forms for transferring files from your hard drive to your server. This tutorial shows how you can use ColdFusion to transfer varying types of files and how you can set permissions to restrict the types of files that are uploaded.

Defining a Site in DreamweaverMX - The Advanced Tab
Reader Level: Reader Level

In the first part of this tutorial we covered setting up a static site in DWMX using the Basics Tab in the Site Definition window. In this second part, we will be setting up, step by step, a fictitious ColdFusion site using the Advanced Tab.

Displaying Alternate Text if Recordset is Empty
Reader Level: Reader Level

If you've got an empty recordset, rather than have a big blank spot on your page where data should be, you can show whatever text you like, or even an image. Using CFIF statements and a recordcount variable, it's a nice cool breeze.

Simplify your documents with CFINCLUDES Free!
Reader Level: Reader Level

Site maintenance can be a real bear! A simple task such as changing an address can take hours, especially if the address is repeated on every page of a large site. Simplify your code and your life with includes!

Breathing New Life Into Custom Tags
Reader Level: Reader Level

Some have predicted the death of Custom Tags with the release of ColdFusion MX and CFC's. Not only are Custom Tags alive and well...they now can be application specific. Learn why they still have a place in your application and how CFIMPORT breathes new life into them...

Dynamic Letter Anchors extension
Reader Level: Reader Level

Frequently on a dynamic page that displays a long list of content, such as a list of names, you want to allow a user to jump down to a specific letter of the alphabet. On a static list, this is easy -- just insert anchor links at key places on your page where the first letter of a word changes. On a dynamic page, it is not as easy. Using this extension, you can create a list of links for your data AND create the dynamic anchors to go along with them.

Adding a Horizontal Loop to DWMX's Repeat Region with ColdFusion
Reader Level: Reader Level

Dreamweaver provides a way to list multiple results from a recordset. Unfortunately it only enables a vertical or horizontal display of these results. Many times you may want, or need, to display your results in a horizontal and vertical manner. This tutorial will take you through the process of creating just such a page by building upon the built-in "Repeat Region" server behavior.

Updating Multiple Records without CFGrid
Reader Level: Reader Level

Have you wanted to be able to update multiple records in a table in one fell swoop, but either didn't want, or know how, to use CFGrid? Well this tutorial will take you step by step through the process. I think you'll be surprised at how easy it is using ColdFusion.

Consuming the CMX Web Service with ColdFusion Free!
Reader Level: Reader Level

Community MX publishes a web service that will display information about the latest content available from the site. This service can be used by anyone who knows how to consume a web service. The Community MX web service utilizes a standard .wsdl file that can be consumed by any technology that can consume a web service. The web service is located at http://www.communitymx.com/services/cmxfeed.wsdl. The web service exposes 3 methods: getContent: grabs the latest content descriptions available from Community MX. searchContent: search the content at Community MX for relevant content getContentTypes: the latest content types are available as a list for your applications as well (articles, extensions, etc).

Create/Email a tab-delimited text file from a web page
Reader Level: Reader Level

Many programs require that you import data via a tab or comma-delimited text file. Now you can create one right from your web page and email it at the same time.

Email the Contents of a Form Using ColdFusion
Reader Level: Reader Level

Sending the results of a simple form from your web page using some simple ColdFusion code is much easier than you might imagine.

Setting upload permissions Free!
Reader Level: Reader Level

Setting your local CFMX development server permissions so you can test image uploading prior to moving your site to yor production server.

Creating a Multi-Page Form
Reader Level: Reader Level

Create a form that carries over several pages. This is useful for loan applications, lengthy registration pages, etc.

ColdFusion - CFML Basics - Part 1
Reader Level: Reader Level

Part 1 in a series of articles that will take you through the basic tags used in the CFML language. Providing you with an explanation of the tag along with examples. This installment covers the <CFSET>, <CFPARAM> and <CFOUTPUT> tags, along with an explanation of the importance of the "#" sign.

The CFML Basics Series:
ColdFusion - CFML Basics - Part 1
ColdFusion - CFML Basics - Part 2
ColdFusion - CFML Basics - Part 3

Protecting Server Privacy During CF Errors
Reader Level: Reader Level

When errors occur on your ColdFusion page or site, are you inadvertently exposing information that could be useful to hackers? This tutorial points up the challenge and solution to this common problem.

CFInsert & CFUpdate code reuse Free!
Reader Level: Reader Level

Learn to minimize the code necessary to insert and update records in ColdFusion. Code reuse makes your applications more efficient than they could otherwise be. It reduces development time by half as you only need to create your form and insert\update pages once, ColdFusion can do the rest for you simply by creating some conditional code that allows ColdFusion to apply some logic to your requirements.