| Why Use Coldfusion? | p. 1 |
| Introduction | p. 2 |
| Is this book for you? | p. 3 |
| How this book is organized | p. 4 |
| Versions of ColdFusion | p. 4 |
| ColdFusion 5.0 | p. 6 |
| Setting Up A Development System | p. 7 |
| Introduction | p. 8 |
| Prerequisites | p. 8 |
| The PC | p. 8 |
| Web Browser software | p. 9 |
| Web Server software | p. 9 |
| Microsoft Access | p. 10 |
| ColdFusion Server software | p. 10 |
| The Plan | p. 11 |
| Installing the web server | p. 11 |
| Installing ColdFusion | p. 15 |
| Testing ColdFusion | p. 17 |
| Creating a database file using Access | p. 18 |
| Registering the file as an ODBC datasource | p. 22 |
| Testing the installation | p. 25 |
| Counting Visitors to a Web Site | p. 29 |
| Introduction | p. 30 |
| The HTML way | p. 30 |
| The visitor database structure | p. 32 |
| Modifying the HTML | p. 34 |
| The [left angle bracket]CFQUERY[right angle bracket] tag | p. 36 |
| The [left angle bracket]CFOUTPUT[right angle bracket] Tag | p. 37 |
| Viewing the Results | p. 37 |
| Using [left angle bracket]CFQUERY[right angle bracket] | p. 38 |
| Viewing visitor logs | p. 41 |
| Formatting the output | p. 43 |
| HTML for Coldfusion | p. 47 |
| Introduction | p. 48 |
| The [left angle bracket]HTML[right angle bracket] tag | p. 48 |
| Naming the title bar with [left angle bracket]TITLE[right angle bracket] | p. 49 |
| The Paragraph tag [left angle bracket]P[right angle bracket] | p. 50 |
| The Line Break tag [left angle bracket]BR[right angle bracket] | p. 51 |
| Headings and Subheadings [left angle bracket]H1[right angle bracket] | p. 52 |
| Bold and Italics | p. 52 |
| Inserting a picture [left angle bracket]IMG[right angle bracket] | p. 53 |
| Adding a link with [left angle bracket]A[right angle bracket] | p. 54 |
| The [left angle bracket]TABLE[right angle bracket] Feature | p. 56 |
| The horizontal Rule [left angle bracket]HR[right angle bracket] tag | p. 58 |
| Acquiring user input [left angle bracket]FORM[right angle bracket] | p. 58 |
| Using SQL | p. 61 |
| Introduction | p. 62 |
| SQL's command set | p. 62 |
| SQL data types | p. 63 |
| CREATE TABLE | p. 65 |
| INSERT | p. 68 |
| SELECT | p. 71 |
| DELETE | p. 77 |
| Update | p. 79 |
| Key Coldfusion Tags | p. 83 |
| Introduction | p. 84 |
| Running SQL with [left angle bracket]CFQUERY[right angle bracket] | p. 84 |
| Processing with [left angle bracket]CFOUTPUT[right angle bracket] | p. 86 |
| Forms and Formatting | p. 91 |
| Introduction | p. 92 |
| ColdFusion's Forms [left angle bracket]CFFORM[right angle bracket] | p. 92 |
| Input control [left angle bracket]CFINPUT[right angle bracket] | p. 94 |
| Validating Input with [left angle bracket]CFFORM[right angle bracket] | p. 98 |
| Font control and [left angle bracket]CFTEXTINPUT[right angle bracket] | p. 102 |
| List controls with [left angle bracket]CFSELECT[right angle bracket] | p. 104 |
| Many choices with [left angle bracket]OPTION[right angle bracket] | p. 108 |
| Looping and Branching | p. 111 |
| Introduction | p. 112 |
| [left angle bracket]CFLOOP[right angle bracket] Index Loops | p. 113 |
| [left angle bracket]CFLOOP[right angle bracket] Conditional Loops | p. 115 |
| [left angle bracket]CFLOOP[right angle bracket] Looping over a query | p. 116 |
| Branching with [left angle bracket]CFIF[right angle bracket] | p. 118 |
| Branching again with [left angle bracket]CFELSE[right angle bracket] | p. 119 |
| Branching again with [left angle bracket]CFELSEIF[right angle bracket] | p. 123 |
| [left angle bracket]CFSWITCH[right angle bracket] | p. 126 |
| Email and the Internet | p. 129 |
| Introduction | p. 130 |
| Mail Functions | p. 130 |
| Sending mail with [left angle bracket]CFMAIL[right angle bracket] | p. 131 |
| Sending an email | p. 133 |
| Failed email | p. 134 |
| Sending emails to a group | p. 134 |
| Getting mail with [left angle bracket]CFPOP[right angle bracket] | p. 136 |
| [left angle bracket]CFPOP[right angle bracket] GetHeaderOnly | p. 138 |
| [left angle bracket]CFPOP[right angle bracket] GetAll | p. 140 |
| [left angle bracket]CFPOP[right angle bracket] Delete | p. 142 |
| Manipulating web pages | p. 143 |
| Getting web pages - [left angle bracket]CFHTTP[right angle bracket] | p. 143 |
| Moving elsewhere [left angle bracket]CFLOCATION[right angle bracket] | p. 145 |
| CF Tags - File Functions | p. 149 |
| Introduction | p. 150 |
| Reading with [left angle bracket]CFDIRECTORY[right angle bracket] | p. 150 |
| File actions with [left angle bracket]CFFILE[right angle bracket] | p. 153 |
| Using Coldfusion Variables | p. 157 |
| Introduction | p. 158 |
| Query Variables | p. 158 |
| Local Variables | p. 159 |
| URL Variables | p. 161 |
| Form Variables | p. 162 |
| Server Variables | p. 165 |
| CGI Environment variables | p. 167 |
| Cookies | p. 168 |
| Other Variables | p. 171 |
| Coldfusion Functions | p. 173 |
| Introduction | p. 174 |
| Check it is there with IsDefined | p. 174 |
| Check for a file - FileExists | p. 176 |
| Is that Dir there? DirectoryExists | p. 177 |
| Path processing: GetFileFromPath | p. 178 |
| More Paths: GetDirectoryFromPath | p. 179 |
| Paths again: ExpandPath | p. 180 |
| Work it out with Evaluate | p. 181 |
| Think of a number: RandRange | p. 182 |
| Rand | p. 184 |
| Make it more random: Randomize | p. 184 |
| How long is that string: Len | p. 184 |
| String Manipulation Functions | p. 185 |
| String Searching: FindNoCase | p. 186 |
| Find it in a String: Find | p. 188 |
| Cut that string apart: Mid | p. 188 |
| Left a bit | p. 190 |
| Right a bit | p. 191 |
| Convert the number with Val | p. 193 |
| Telling the time with Now | p. 195 |
| DateFormat | p. 196 |
| TimeFormat | p. 196 |
| CreateDateTime | p. 197 |
| DayOfWeek | p. 199 |
| DayOfWeekAsString | p. 200 |
| Custom Tags | p. 203 |
| Introduction | p. 204 |
| [left angle bracket]CFINCLUDE[right angle bracket] | p. 205 |
| Custom Tags | p. 206 |
| Custom Tag Attributes | p. 208 |
| Returning Values | p. 211 |
| [left angle bracket]CFEXIT[right angle bracket] | p. 212 |
| Application.cfm | p. 212 |
| OnRequestEnd.cfm | p. 214 |
| [left angle bracket]CFAPPLICATION[right angle bracket] | p. 214 |
| Using Cookies to Track Users | p. 217 |
| Introduction | p. 218 |
| Securing Web Pages | p. 225 |
| Introduction | p. 226 |
| User authentication | p. 226 |
| Scheduling Tasks | p. 233 |
| Introduction | p. 234 |
| Scheduling tasks | p. 234 |
| The Coldfusion Fast Web Site | p. 241 |
| Introduction | p. 242 |
| ShowMe button | p. 243 |
| News | p. 244 |
| Sitewatch | p. 244 |
| Book Site | p. 245 |
| Main Page | p. 246 |
| Administration area | p. 246 |
| Visitor Book | p. 246 |
| Additional Resources | p. 249 |
| Introduction | p. 250 |
| Manuals and CFDOCS | p. 250 |
| ColdFusion Studio | p. 251 |
| ColdFusion Developer Exchange | p. 253 |
| ColdFusion Forums | p. 255 |
| Final Words | p. 256 |
| Index | p. 257 |
| Table of Contents provided by Syndetics. All Rights Reserved. |