Magento one page checkout keeps redirecting back to the shopping cart

A few friends of mine run a Magento webshop (1.3) and they had the problem that customers would be redirected back to the shopping cart after filling in their personal information.

I tried the same, but my order would go through. I was kind of lost, why did it always work for me but it wouldn’t for other customers?

After some hours of searching I tried to enter my Gmail address instead of my personal address and that failed. I got redirected back as well.

A report showed up in var/report with a warning from the Zend Framework core saying that the gmail address could not be validated.

Some Googling brought me to the magento forums.

The bug is indeed in lib/Zend/Validate/Hostname.php on line 329

Replace:

if (Zend_Loader::isReadable($classFile)) { 

With:

if (file_exists($classFile) && Zend_Loader::isReadable($classFile)) { 

And you should be up and running again!

I haven’t debugged this further to find out what the root cause is, but I’d thought I’d share my solution.