Sold on ColdFusion Builder

I learned coding on Homesite and no program has been able to pry it out of my hands over the last decade -- until now. I've been using the new Coldfusion Builder for the last couple hours and I'm sold.

I really like the search/replace functions of Homesite. I'm not sure Coldfusion Builder provides the same functionality. Beyond that, I find Builder to be easy and enjoyable to use.


ColdFusion Fresh and New

Adobe released the beta previews of ColdFusion Builder and ColdFusion 9 today. I downloaded them both and can't wait to try them out. These are both very exciting releases, and the timing could not be better. Both products underscore Adobe's commitment to ColdFusion and interest in being the leaders in rapid application development.

I must admit that every once in a while I wish that a free, basic version of Coldfusion were made made available years ago. I think that single barrier was the biggest reason that Coldfusion lost developers to other languages like PHP. I also wish that there were a better, clear set of open source applications available. As a language, is hard to compete with the mature library of PHP and .NET applications available that cover most simple web sites.

I have been a big supporter of Coldfusion for the last decade and continue to believe that it provides the best mix of development ease, power and flexibility. The growth path of the language over the last year or two with the open source release of Railo and the improvements seen in Coldfusion 9 and Coldfusion Builder make me very happy with my choice.
 
I have started work on a major new project - Codename Coconut. I have spent much of the last few years creating custom web sites from my expansive code library. This latest project will be the first one in a long time to be written completely from the ground up. I'm excited about having the opportunity to modernize my work process and coding style. What better time to start than today with these two new releases from Adobe.

Time to roll up my sleeves and start installing. Thanks Adobe -- keep up the great work!



Coldfusion server troubleshooting

Want to remember this for later:

http://www.coldfusionmuse.com/index.cfm/2008/8/11/troubleshooting-part2-Stuff-to-try

SQL injection attach rewriter info

[code]
RewriteEngine on

#SQL Injection Protection --Read More www.cybercrime.gov

RewriteRule ^.*DECLARE%20.*$ http://www.cybercrime.gov/ [NC]
RewriteRule ^.*NVARCHAR.*$ http://www.cybercrime.gov/ [NC]
RewriteRule ^.*sp_password.*$ http://www.cybercrime.gov/ [NC]
RewriteRule ^.*%20xp_.*$ http://www.cybercrime.gov/ [NC]
RewriteRule ^.*EXEC\(@.*$ http://www.cybercrime.gov/ [NC]
RewriteRule ^.*CAST\(.*$ http://www.cybercrime.gov/ [NC]
RewriteRule ^.*DECLARE.*$ http://www.cybercrime.gov/ [NC]

[code]

Info on rewriteRule Directives:
http://micronovae.com/ModRewrite/ref/RewriteRule.html

IIRF:
http://cheeso.members.winisp.net/IIRF.aspx

SQL Injection Attacks

http://russ.michaels.me.uk/index.cfm/2008/7/24/SQL-Injection-Attacks--How-to-protect_yourself


<cfif cgi.SCRIPT_NAME contains "CHAR(4000)" OR cgi.PATH_INFO contains "CHAR(4000)" OR cgi.QUERY_STRING contains "CHAR(4000)">
<cfabort>
</cfif>

<cfif cgi.SCRIPT_NAME contains "EXEC(" OR cgi.PATH_INFO contains "EXEC(" OR cgi.QUERY_STRING contains "EXEC(">
<cfabort>
</cfif>

<cfif cgi.SCRIPT_NAME contains "DECLARE" OR cgi.PATH_INFO contains "DECLARE" OR cgi.QUERY_STRING contains "DECLARE">
<cfabort>
</cfif>

<cfif cgi.SCRIPT_NAME contains "CREATE TABLE" OR cgi.PATH_INFO contains "CREATE TABLE" OR cgi.QUERY_STRING contains "CREATE TABLE">
<cfabort>
</cfif>

<cfif cgi.SCRIPT_NAME contains "UPDATE" OR cgi.PATH_INFO contains "UPDATE" OR cgi.QUERY_STRING contains "UPDATE">
<cfabort>
</cfif>

<cfif cgi.SCRIPT_NAME contains "EXECUTE" OR cgi.PATH_INFO contains "EXECUTE" OR cgi.QUERY_STRING contains "EXECUTE">
<cfabort>
</cfif>

<cfif cgi.SCRIPT_NAME contains "CAST(" OR cgi.PATH_INFO contains "CAST(" OR cgi.QUERY_STRING contains "CAST(">
<cfabort>
</cfif>

Open Blue Dragon

VMWare image available:

http://blog.sixsigns.com/2008/05/11/vmware-open-bluedragon-image-made-available/

Size calculator

I had to write a quick size calculator for a web site. I'm adding here for safe-keeping...

<form name="calculator">
<table width="365" cellpadding="5">
<tbody>
<tr>
<td align="right">length:</td>
<td><input type="text" name="length" size="4" /> inches</td>
<td width="180" align="center" style="font-size: 16px;" rowspan="3">SQUARE FEET: <input type="text" style="border: 0pt none ; background-color: white; color: black;font-weight:bold;" disabled="" value="0" name="squarefeet" size="4" /></td>
</tr>
<tr>
<td align="right">width:</td>
<td><input type="text" name="width" size="4" /> inches</td>
</tr>
<tr>
<td></td>
<td><input type="button" onclick="calculator.squarefeet.value=Math.ceil((calculator.length.value * calculator.width.value)/144);" value="calculate" /></td>
</tr>
</tbody>
</table>
</form>

SqlServer Express Coldfusion Driver

I needed to set up MS SqlServer Express on a web server today. I really can't believe anybody would use SQLServer these days... MySQL seems so much better for many, many reasons.

This web page saved me from going prematurely gray:

http://www.fusioncube.net/?p=59

JS Spambot protection

[code]

For a quick and dirty fix, Mike, you might try something like this on 
one of your inputs:

<script type="text/javascript" language="javascript">
function makeHuman(input,element){
if(!document.getElementById("ishuman")){
var formText = element.innerHTML;
var ivalue = input.value;
var iid = input.getAttribute("id");
var hinput = "<input type=\"hidden\" name=\"ishuman\" id=\"ishuman\" 
value=\"true\"\/>";
element.innerHTML = formText+hinput;
//Need to rewrite the blurred field value since the blur event doesn't 
set the DOM value
document.getElementById(iid).value = ivalue;
};
};
</script>
<input type="text" name="myinput" id="myinput" value="" 
onblur="makeHuman(this,this.parentNode);"/>

this will use javascript to write a hidden input in the form.   Then 
you can validate your form by wrapping your logic with:

<cfif structKeyExists(form,"ishuman")  and form.ishuman>

[processing code here]

</cfif>

This will take care of everything but direct input by a person in a 
javascript enabled browser.  For better results, you place the script 
in one of your site .js files.  As was said earlier, sometimes the 
spammers use a human to capture the form values an then plug it in to 
their software for spamming runs.

[/code]

Railo 2 CFML Engine

I've been hearing really good things about Railo these days. Coldfusion developers have been impressed with how easy it is to install and use, and most important how lightening fast it is, even when compared to Coldfusion 8.

Here are 20 reasons to consider trying Railo out for yourself.

I am not sure of all the pricing options, but they do have a free community edition that may work just fine for many web sites and I understand that a single site license of Railo is only 200 euro (about $280). Many of our sites run on dedicated web servers and this would be a huge savings over Adobe's Coldfusion server.

Web site: http://railo.ch/en/

© 2007 MJ Frauenheim, all rights reserved.