"\n") and linefeed ("\r")
"<", ">", "&", single quote (') and double quote (")
"%", "[", "]", "@", "_", "*", "=" and "|"
%ENCODE{"string"}%
| Parameter: | Description: | Default: | 
|---|---|---|
| "string" | String to encode | required (can be empty) | 
| type="url" | Encode special characters for URL parameter use, like a double quote into %22 | (this is the default) | 
| type="quotes" | Escape double quotes with backslashes ( \"), does not change other characters. This type does not protect against cross-site scripting. | type="url" | 
| type="moderate" | Encode special characters into HTML entities for moderate cross-site scripting protection: "<",">", single quote (') and double quote (") are encoded. Useful to allow TWiki variables in comment boxes. | type="url" | 
| type="safe" | Encode special characters into HTML entities for cross-site scripting protection: "<",">","%", single quote (') and double quote (") are encoded. | type="url" | 
| type="entity" | Encode special characters into HTML entities, like a double quote into ". Does not encode newline (\n) or linefeed (\r). | type="url" | 
| type="entity"extra=" $n$r" | For type="entity"only, use theextraparameter to encode additional characters to HTML numeric entities. Formatting tokens can be used, such as"$n"for newline. Note thattype="entity" extra=" $n$r"is equivalent totype="html". | type="url"extra="" | 
| type="html" | Encode special characters into HTML entities. In addition to type="entity", it also encodes space,\nand\r. Useful to encode text properly in HTML input fields. See equivalent ENTITY. | type="url" | 
| type="csv" | Escape single quotes and double quotes by repeating them, other characters do not change. Use this to properly escape fields in CSV  reports that output comma-separated values, such as "field 1","field 2 with ''single'' and ""double"" quotes". | type="url" | 
| newline="..." | Replace a newline with the specified value before encoding. Please note that newline="<br/>"does not bring<br/>to the output because<and>are encoded (except with thequotesandcsvtypes). To have<br/>in the output, you need to specifynewline="$br". However,newline="$br"does not work in combination withtype="url"(the defautl type). This shouldn't be a problem because it's very rare to need to have<br/>encoded in a URL.In addition to $br,$nhas a special meaning in anewlineparameter value -$nresults in a newline in the output.This parameter is expected to be used in combination with the moderate,safe,entity, orhtmltype. With the other types, it causes unuseful results. | 
%ENCODE{"spaced name"}% expands to spaced%20name
%ENCODE{"spaced name" type="entity" extra=" "}% expands to spaced name
"html". A shorter %ENTITY{any text}% can be used instead of the more verbose %ENCODE{ "any text" type="html" }%. <input type="text" name="address" value="%ENTITY{any text}%" />
%SEARCH{ "%ENCODE{ "string with "quotes"" type="quotes" }%" noheader="on" }%
type="moderate", type="safe", type="entity" or type="html" to protect user input from URL parameters and external sources against cross-site scripting (XSS).
 (XSS). type="html" is the safest mode, but some TWiki applications might not work. type="safe" provides a safe middle ground, type="moderate" provides only moderate cross-site scripting protection.
 
  Copyright © 1999-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Copyright © 1999-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.