EncodeForSQL()
Encodes the given string for safe output in a query to reduce the risk Cross Site Scripting attacks.
Requires Extension: ESAPI extension
EncodeForSQL( string=string, dialect=string, canonicalize=boolean );
Returns: String
Examples
// example of an url variable:
// http://some.example.domain/dogs.cfm?name=lassie
url.name="lassie";
SQLQuery="SELECT * FROM dogs WHERE name='#url.name#';";
dump( SQLQuery );
// example of an url sql injection:
// http://some.example.domain/dogs.cfm?name='%20or%20'1'='1
url.name= "' or '1'='1";
SQLQuery="SELECT * FROM dogs WHERE name='#url.name#';";
dump( SQLQuery );
// example of preventing sql injection with encodeForSQL in MySQL:
SQLQuery="SELECT * FROM dogs WHERE name='#encodeForSQL( url.name, 'mySql' )#';";
dump( SQLQuery );
See also
- Encode/Decode
- Queries
- string.encodeForSQL()
- Search Issue Tracker
- Search Lucee Test Cases (good for further, detailed examples)