SetEncoding  
Description
Sets the character encoding (character set) of Form and URL scope variable values; used when the character encoding of the input to a form, or the character encoding of a URL, is not in UTF-8 encoding.
 
Returns
None
 
Category
International functions, System functions
 
Function syntax
SetEncoding(scope_name,charset)
 
See also
GetEncoding, cfcontent, cfprocessingdirective, URLDecode, URLEncodedFormat
 
History
ColdFusion MX: Added this function.
 
Parameters
 
Parameter      Description
scope_name None
charset The character encoding in which text in the scope variables is encoded..
  The following list includes commonly used values::
  utf-8
  iso-8859-1
  windows-1252
  us-ascii
  shift_jis
  iso-2022-jp
  euc-jp
  euc-kr
  big5
  euc-cn
  utf-16
 
Usage
Use this function when the character encoding of the input to a form or the character encoding of a URL is not in UTF-8 encoding. For example, Traditional Chinese characters are often in Big5 encoding. Before using URL or Form variables, call this function (typically, in the Application.cfm page) to set the encoding and avoid interpreting the characters of the variables incorrectly.
For more information on character encoding, see the following web pages:
  • www.w3.org/International/O-charset.html provides general information on character encoding and the web, and has several useful links.
  • www.iana.org/assignments/character-sets is a complete list of character sets names used on the Internet, maintained by the Internet Assigned Numbers Authority.
  • java.sun.com/j2se/1.4.1/docs/guide/intl/encoding.doc.html lists the character encoding that Java 1.4.1, and therefore the default ColdFusion configuration, can interpret. If you use a JVM that does not conform to the Sun Java 2 Platform, Standard Edition, v 1.4.1, the supported locales may differ. The list uses Java internal names, not the IANA character encoding names that you normally use in the SetEncoding charset parameter and other ColdFusion attributes and parameters. Java automatically converts standard IANA names to its internal names as needed.
 
Example
<!--- This example sends and interprets the contents of two fields as
      big5 encoded text. Note that the form fields are received as URL variables
      because the form uses the GET method. --->
<cfcontent type="text/html; charset=big5">
<form action='#cgi.script_name#' method='get'>
<input name='xxx' type='text'>
<input name='yyy' type='text'>
<input type="Submit" value="Submit">
</form>

<cfif IsDefined("URL.xxx")>
<cfscript>
   SetEncoding("url", "big5");
   WriteOutput("URL.XXX is " & URL.xxx & "<br>");
   WriteOutput("URL.YYY is " & URL.yyy & "<br>");
    theEncoding = GetEncoding("URL");
    WriteOutput("The URL variables were decoded using '" &
theEncoding & "' encoding.");
</cfscript>
</cfif>

scope_name  
  • url
  • form
charset  
The character encoding in which text in the scope variables is encoded. The following list includes commonly used values:
  • utf-8
  • iso-8859-1
  • windows-1252
  • us-ascii
  • shift_jis
  • iso-2022-jp
  • euc-jp
  • euc-kr
  • big5
  • euc-cn
  • utf-16