Where is my iPhone - o2 poor service
It's the birthday month in my household so I decided that I'd get an iphone for a family member (plus the price had dropped £100 to £169.) So on the 19th April 2008, I logged onto o2's website and place an order for an 8gb iphone and this is where the fun started.
The website has since changed, but at the time of ordering I received an email confirming my registration with o2 and an email stating my order reference etc. The latter email also stated that I would receive updates as my order went through the system and that I could track the order online, by logging into my new o2 account.
Pah - There was no such link on their site and I got no emails for 3 days! So enough is enough I thought, I fired off an email from there online contact form and got a bulk standard email back saying a representative would be in contact shortly. Ummm I thought.... You guessed it, I got nothing!
So what to do. I googled the net for an email address of someone with clout at o2. I always find it's a waste of time phoning and companies support line. I hate talking to idiots who have no clout and give me the run around and judging by some of the comments about o2's customer service; I definitely saved myself some time and money.
Anyway, I found an email of a guy called David Nicholas who is the communications director at o2. I sent an email to him complaining about the delay and the bad customer service and poor website. 2 Hours later I actually got a reply from the guy. Basically he was very sorry for the problems I was having and he would pass on the problem to some department would contact me very soon, and if I hadn't, to contact him again so he could chase up. Well after another few hours I heard nothing, so I emailed him again. It wasn't too long before he came back to me saying that a guy called Richard Chew was looking into the problem and would contact me directly.
To cut a long story short, I got an email from this guy saying he was looking into it for me and he would phone me the next day (it was 6pm by this point). Sure enough he did phone me and explained that there had been a problem with the system on the 19th and he offered my £100 cheque as a gesture of good will and the phone would be with me Monday. Fantastic!
So now I'm on DHL's website refreshing the screen to see if it's been delivered or not. Since 9am this morning is showing a status of "Security check" wtf. Maybe they think it's a bomb or something? I'm getting annoyed now as I just know its either going to be yet another day late, or somehow its going to get lost at DHL (or blown up)!
visit Where is my iPhone - o2 poor service at cfblog.co.ukCheapest iPhone on the internet
visit Cheapest iPhone on the internet at cfblog.co.uk
Is this a Coldfusion 8 BUG
For the last couple of days i've been building a Linux (CENTOS 4) server with Coldfusion 8 developer edition.
I think i've found a bug with the installation. Everything seems to go okay and coldfusion 8 works fine until I issue a 'shutdown -r now'. When I do this, the server starts up but coldfusion 8 hangs/stalls. This happens on stand alone and multi-server installations.
I then discovered (having left the server for over an hour) that the cf server had eventually started? So I looked into the cf logs and discoverd the following:
02/29 11:42:31 user MessageBrokerServlet: init
02/29 12:53:58 user CFFormGateway: init
As you can see from the above the MessageBrokerServlet took over an hour to start/complete. I'm at a loss as to why this is happening. Has anyone else had this problem? Any idea of a cure?
Note: I tried using JDK 1.5 as suggested by James Netherton but to no avail.
visit Is this a Coldfusion 8 BUG at cfblog.co.ukOnline CSS Layouts designer
I'm always on the lookout for great tools that aid in the design of my page layouts. Today I came across a site that lets you design your layout online! Its called YAML (Yet Another Multicolumn Layout).
The site describes it as: YAML is an (X)HTML/CSS framework for creating modern and flexible floated layouts. The structure is extremely versatile in its programming and absolutely accessible for end users.
- Based on web standards
- Accessible
- Flexible
- Easy to use
- Fully documented

This system allows for the rapid development of designs with one to three columns, with fixed or variable widths. With subtemplates (flexible grids), the column system can be endlessly nested and expanded. The YAML basis layout can be extended with special containers which help set the layout width or can create a border around the layout. YAML is more than just a simple multicolumn layout. It is an entire layout framework, highly flexible, and tested under real-world conditions with Cross-Browsers Compatibility.
The YAML Builder comes as a beta version v1.0 is now available that allows the visual development of YAML based CSS layouts directly within your web browser.
visit Online CSS Layouts designer at cfblog.co.ukBlogCFC ping list and timeouts
Having decided to promote my blog as much as possible, I decided one of the best ways was to ping as many blog servers as possible.
Blogcfc has (in its settings option in the admin) an option to list ping urls. When you submit a new entry to your blog, these servers are contacted automatically telling them you have a new entry.
So, on searching google for a good list of addresses to ping I came across: 56 RPC and RPC2 Services to Ping . I have included the list in the download link incase it disappears.
Problems can arise in blogcfc with so many urls being submitted. If you're running blogcfc under coldfusion 8 you should be okay, as Ray coded the ping function to use threads. However if your not on Coldfusion 8 then you'll need to add a timeout setting in "ping7.cfc" (which can be found in "/org/camden/blog". This is because the cfloop may timeout.
Add the following line just above the cfloop:
<cfsetting requesttimeout="9999999">
Don't forget to re-init you blog before you post, so that the new line is initalised.
visit BlogCFC ping list and timeouts at cfblog.co.ukImproving your Alexa Rank and Bank Balance
Although Alexa ranking gets slated across the web community (namely as it only registers a sites activity with people who use the alexa toobar), it can still be an invaluable source for driving traffic to your site.
Another thing to bear in mind, is that if you wish to make money (monetizing) from you site by adverts, the best paid one (Text Link Ads) uses your alexa ranking to determine if your site is worthy of allowing its ads.
To view you own sites rank visit the following link Alexa ranking tool.
If your rank is in the Top 100,000, it might be worth thinking about monetizing your site using 'Text Link ads'. Click the link above to register with them.
Ok so I was going to write a post about Improving your Alexa Rank, but I ran into the article already on PureBlogging, David Culpepper's Blog.
So instead of writing the blog and starting from scratch (and because I want you all to have some Really Good Information) here is the Link to the Post at PureBlogging.Com
visit Improving your Alexa Rank and Bank Balance at cfblog.co.ukColdfusion 7 Installation Problems
If like me you are using a Windows XP with either IIS or apache, you may have encountered problems installing Coldfusion.
The usual senario is that at the end of the installation when trying to either browse to http://localhost or log into the coldfusion administrator.... It won't.
Basically whats happened is that when coldfusion installs it does a port scan for the JDNI port (I won't go into any detail on this). XP service pack 2 blocks port scanning! Thus coldfusion fails to complete its install and attach itself to your webserver.
To get around this, once the installation has completed, open up a command prompt (Start - Run - cmd.exe) and type the following command (some of the paths you have maybe different, so change as appropriate).
C:\coldfusionmx7\runtime\jre\bin\java -DWSConfig.PortScanStartPort=2920 -DWSConfig.PortScanCount=1 -jar C:\coldfusionmx7\runtime\lib\wsconfig.jar
This will (or should) make the scan on port 2920 only.
You'll then be able to complete the installation manually, by selecting the webserver etc.
visit Coldfusion 7 Installation Problems at cfblog.co.ukCF8 - Image Tag not fully complient
Really a note to myself when I get round to using the CFIMAGE TAG. This tag when used inline, doesn't allow for changes to the 'ALT' property (or LONGDESC etc).
This can cause issues with accessibility!
A workaround is as follows:
<cfsavecontent variable="cfimageout">
<cfimage
action = "captcha"
height = "50"
text = "tryalt"
width = "300"
difficulty = "low">
</cfsavecontent>
<cfoutput>#Replace(cfimageout, 'alt=""', 'alt="my alt text"')#</cfoutput>
visit CF8 - Image Tag not fully complient at cfblog.co.ukGoogle Adsense Tracking
So today i decided to utilise my adsense account which i've had since 2004. I can't remember the last time I actually used it, but it hasn't been active for quite awhile.
Anyway, I've put some ad code here and there and I thought to myself, wouldn't it be great if I could detect when someone clicked on an ad and do some simple logging. Now I know adsense allows you to gather certain information using channels, but i wanted to do my own tracking.
So the following is what I came up with:
Basically the script runs the function adsense when the window/page loads. This fuction scans through your page and attaches an 'onfocus' event to your google Adsense ads. All google adsense ads are in iframes (generated by the javascript you include in you pages). So, every time someone gives focus to an advert, the AdSenseLog function is called.
I haven't included the code i'm using for logging as i'm still working on it, but there is no reason why you couldn't utilise ajax to call some server side script/functions to do some logging.
You'll also notice that I've created my own function called AttachEvent. This is because IE doesn't support. The DOM friendly 'addEventListener' like Mozilla/FireFox does. IE uses its own event managment called 'attachEvent' (lower case 'a'). Therefore I needed a simple cross-browser solution as above, which i've called 'AttachEvent' (uppercase 'A').
visit Google Adsense Tracking at cfblog.co.ukMultiple SQL inserts: Oracle, Mysql, Mssql
Found a useful technique for inserting multiple rows into Oracle, MYSQL and MS SQL databases.
Mysql supports this:
INSERT INTO tblName (column1,column2)
VALUES
('Value1','Fernando'),
('Value2','Carlos'),
('Value3','Vincent')
Oracle does not, but can be achieved with:
INSERT INTO tblName (column1,column2)
select ('Value1','Fernando') from dual
union all
select ('Value2','Carlos') from dual
union all
select ('Value3','Vincent') from dual
DUAL is a table which is created by oracle along with the data dictionary. It consists of exactly one column whose name is dummy and one record.
In MS SQL the union all technique also works:
INSERT INTO [TABLE] (column1,column2)
select ('Value1','Fernando')
UNION ALL
select ('Value2','Carlos')
UNION ALL
select ('Value3','Vincent')
This technique is probably a lot faster than using multiple inserts in coldfusion and certainly helps reduce the round-trips that would need to be done.
visit Multiple SQL inserts: Oracle, Mysql, Mssql at cfblog.co.ukSQL - getting table info
Sometimes I've had the need to use SQL to go and get table information i.e is a field varchar or int etc.
For MS SQL server you can use the following to get info on a table
SELECT RIGHT(syscolumns.name, LEN(syscolumns.name)) AS dbFieldName, systypes.name AS typename, syscolumns.length AS maxlength, syscolumns.xprec AS [precision], syscolumns.xscale AS scale, syscolumns.isnullable AS isnullable
FROM syscolumns INNER JOIN
sysobjects ON sysobjects.id = syscolumns.id INNER JOIN
systypes ON syscolumns.xtype = systypes.xtype
WHERE (sysobjects.name = THE_TABLE_NAME)
ORDER BY syscolumns.colorder
visit SQL - getting table info at cfblog.co.ukTimeFormat function Bug
When using the timeformat function, there is a bug in the milliseconds mask.
The mask for milliseconds is defined as follows:l or L: milliseconds. l gives 3 digits. L gives 2 digits.
Infact they both give the same result - 3:digits, unless there is a trailing '0' in which case the result is a 2:digit number.
visit TimeFormat function Bug at cfblog.co.ukColdfusion Apache 2.2+
Just a quick note to myself and anyone trying to install Coldfusion for Apache 2.2
The wsconfig.jar file that is used to connect to apache needs updating (download available at bottom or on right hand side).
Adobe have a technote on this issue.
Application.cfc - NOT!
Just a reminder to peeps out there.
We all know the benefits of using application.cfc, right?
Well remember this - If you're writing a distributable application, one that may sit on BlueDragon or CFMX 6, don't use application.cfc..... it won't work.
So endith the sermon.
visit Application.cfc - NOT! at cfblog.co.ukCFQuery - metadata
You learn something new everyday! I Just discovered that in Coldfusion 7 you can get query infomation (metadata) by adding result = 'aVariable' to the cfquery tag.
for example:
<cfquery name = "aQuery" datasource = "aDataSource" result="aVariable">
select * from aTable
</cfquery>
<cfdump var="#aVariable#">
The resulting dump shows:
CACHED (boolean)
COLUMNLIST (the names of the columns returned)
EXECUTIONTIME (time to execute query ms)
RECORDCOUNT (rows returned)
SQL (the sql that was executed)
I use it mainly to see the sql that is executed from dynamically created sql.
visit CFQuery - metadata at cfblog.co.uk