
822
Chapter 37: Managing Files on the Server
Reviewing the code
The following table describes the code and its function:
Note:
This example performs no error checking and does not incorporate any security measures.
Before deploying an application that performs file uploads, be sure to incorporate both error handling
and security. For more information, see
Chapter 16, “Securing Applications,” on page 345
and
Chapter 14, “Handling Errors,” on page 285
.
Resolving conflicting filenames
When you save a file to the server, there is a risk that a file with the same name might already
exist. To resolve this problem, assign one of these values to the
nameConflict
attribute of the
cffile
tag:
•
Error
(default)
ColdFusion stops processing the page and returns an error. The file is not
saved.
•
Skip
Allows custom behavior based on file properties. Neither saves the file nor returns an
error.
•
Overwrite
Overwrites a file that has the same name as the uploaded file.
•
MakeUnique
Generates a unique filename for the uploaded file. The name is stored in the
file object variables serverFile and serverFileName. You can use this variable to record the name
used when the file was saved. The unique name might not resemble the attempted name. For
more information on file upload status variables, see
“Evaluating the results of a file upload”
on page 824
.
Controlling the type of file uploaded
For some applications, you might want to restrict the type of file that is uploaded. For example,
you might not want to accept graphic files in a document library.
You use the
accept
attribute to restrict the type of file that you allow in an upload. When an
accept
qualifier is present, the uploaded file’s MIME content type must match the criteria
specified or an error occurs. The
accept
attribute takes a comma-separated list of MIME data
names, optionally with wildcards.
A file’s MIME type is determined by the browser. Common types, such as image/gif and text/
plain, are registered in the browser.
Code
Description
<cffile action="upload"
Output the name and location of the uploaded file on
the client machine.
destination="c:\temp\"
Specify the destination of the file.
nameConflict="overwrite"
If the file already exists, overwrite it.
fileField="Form.FiletoUpload">
Specify the name of the file to upload. Do not
enclose the variable in pound signs.
You uploaded
#cffile.ClientFileName#.#cffile.
ClientFileExt# successfully to
#cffile.ServerDirectory#.
Inform the user of the file that was uploaded and its
destination. For information on
cffile
scope
variables, see
“Evaluating the results of a file upload”
on page 824
.
Summary of Contents for COLDFUSION MX 61-DEVELOPING COLDFUSION MX
Page 1: ...Developing ColdFusion MX Applications...
Page 22: ...22 Contents...
Page 38: ......
Page 52: ...52 Chapter 2 Elements of CFML...
Page 162: ......
Page 218: ...218 Chapter 10 Writing and Calling User Defined Functions...
Page 250: ...250 Chapter 11 Building and Using ColdFusion Components...
Page 264: ...264 Chapter 12 Building Custom CFXAPI Tags...
Page 266: ......
Page 314: ...314 Chapter 14 Handling Errors...
Page 344: ...344 Chapter 15 Using Persistent Data and Locking...
Page 349: ...About user security 349...
Page 357: ...Security scenarios 357...
Page 370: ...370 Chapter 16 Securing Applications...
Page 388: ...388 Chapter 17 Developing Globalized Applications...
Page 408: ...408 Chapter 18 Debugging and Troubleshooting Applications...
Page 410: ......
Page 426: ...426 Chapter 19 Introduction to Databases and SQL...
Page 476: ...476 Chapter 22 Using Query of Queries...
Page 534: ...534 Chapter 24 Building a Search Interface...
Page 556: ...556 Chapter 25 Using Verity Search Expressions...
Page 558: ......
Page 582: ...582 Chapter 26 Retrieving and Formatting Data...
Page 668: ......
Page 734: ...734 Chapter 32 Using Web Services...
Page 760: ...760 Chapter 33 Integrating J2EE and Java Elements in CFML Applications...
Page 786: ...786 Chapter 34 Integrating COM and CORBA Objects in CFML Applications...
Page 788: ......