Well, due to my proffesion, I have been a lot into hosting searches, and I can say for sure the following:
-ANY free service, is completely unreliable. Ok, it is fine for a small comunity that does not bother if the site remains down for a few days, but for anything proffesional, free hosting sucks.
-If a host is willing to provide a testing period, typically they are worth the trouble, but be aware that some hosts are not above providing excellent service during trial, and forget about you later.
-If a host is willing to provide services without a contract, then RUN AWAY AS FAST AS POSSIBLE!. If to get a host, you only need to fill an anonymous form, without any contract guarantess on their part, they are into money making business. In short, they are companies that do not own any servers, isntead, they have rented servers on bigger hosts, and they are trying to make some fast money, and then close down the company.
-Beware of hosts that provide more than 100MB of space, for less than 100$ (domain included). They typically have extreme lagp roblems due to punny mangement.
-Beware of hosts that ask you to set up your own domain, before providing server space and bandwidth. If a host is unable to set a domain for you, they typically have incompetent technical assistance.
-NEVER take a host by web. Find their site, and then PHONE them. Ask many questions, tehcnical and not, and especially, ask them when a technician is available to provide assistance. The majority of hosts, have freelance technicians, that will take care of your problem, more or less when it will be too late for it to be taken care. Also, make sure that they provide the following:
-full functional PHP (as in no mail() function disabled etc)
-MySQL DB creation privileges (even if it is only for one DB).
-MySQL user creation privileges (many give only one user).
-technical support, AT LEAST 12/24, 6 days a week.
-Guarantees of uptime, typicaly by providing free webhosting time, in case something goes wrong (you will not find anyone providing monetal guarantees).