WebDevelopment, ColdFusion, Railo, JS, Database and Tech-related by the Co-Founder and CEO of tunesBag.com

Tuesday, 25 May 2010

CFIMAGE: Compile great looking artist images

I am really excited about the features CFIMAGE provides in railo/ColdFusion. In recent times, I've started doing advanced stuff (read: more than resizing images) and one of the thing I've really enjoyed was compiling acool artist background images from several images - below you can find three samples (Kayne West, Evanescence and Goldfrapp). Basically, it's just a simple combination of ImageRotate, ImagePaste and ImageRead ;-)

Sources: http://www.flickr.com/photos/96679304@N00/176295962, http://www.flickr.com/photos/11671827@N00/522201514, http://www.flickr.com/photos/87258901@N00/2951288353, http://www.flickr.com/photos/44124348109@N01/2834953166

Thursday, 13 May 2010

Facebook Like Button will double your page hits

Nothing to be afraid of - while implementing the Facebook Like Button for tunesBag, I found out that every hit to a page with the "Like" - Button will be responsible for a second hit by the Facebook bot (facebookexternalhit/1.0)

Tuesday, 4 May 2010

UrlEncodedFormat: Encoding space characters - plus (+) vs %20

I came across an issue with UrlEncodedFormat() today - signatures calculated by an CF9-based system always appeared to be invalid and as it seems ColdFusion is ignoring the standards when it comes to encoding of form posts (application/x-www-form-urlencoded).

The document describing the standard on W3 clearly states:


This is the default content type. Forms submitted with this content type must be encoded as follows:

  1. Control names and values are escaped. Space characters are replaced by `+', and then reserved characters are escaped as described in [RFC1738], section 2.2: Non-alphanumeric characters are replaced by `%HH', a percent sign and two hexadecimal digits representing the ASCII code of the character. Line breaks are represented as "CR LF" pairs (i.e., `%0D%0A').
  2. The control names/values are listed in the order they appear in the document. The name is separated from the value by `=' and name/value pairs are separated from each other by `&'.

When you perform an UrlEncodedFormat( ' ' ) on CF, it will return %20, the same call on railo will return "+" as described in the article above.

I solved the issue by simply replacing %20 with +.