I have found out that Google actually treats non-www and www pages as seperate websites, in Webmasters Tools I have changed the preferred domain to www and I'm trying to redirect my website's non-www to www using Godaddy's domain manager. I used the instructions here http://community.godaddy.com/help/article/422 but I just get the message "This website is temporarily unavailable, please try again later." It's been 24 hours now and I'm worried it actually hasn't worked. Is it actually possible using this method? Is there anything else I need to do? I can't use ht.access as I'm using Windows server.
Just to answer my own question, I don't think this method works for forwarding non-www to www, all it does is setup a loop and you'll get the website temporarily unavailable message. I removed the forwarding and hopefully my website will be live again soon.
There is no need to worry there is solution for this problem, first of all what type of server you have if it IIS than you have to place a script in the home page and if you have Apache server than you have to upload .htaccess file on the root which contain the code for opening site without www to www. if you want to see the script for IIS server open www.madinamadina.com site and goto source there in the head part you will find the script
If you are on IIS then you can use web.config the same way as you can use .htaccess in apach. You can search for how to write the redirection node in web.config effectively. To be on safe side you can also set option for www or non www in Google webmaster tools to avoid the duplicate contents.