We have used a hyperlink as add to cart button.Is there any problem with this?
Links feeds crawlers and spammers: while the first one only follow the links, so you could try adding
rel="nofollow" to your links, spammers will also submit forms (even if I never seen spammers using the
add to cart forms, is possible)
As you noticed, make the user register and login can be one solution, if you can't do that, i'll do the steps above:
rel="nofollow" to your links
- if point 2 fails too, make your users sign up.
Tip: is normal to have orders that remain in the cart for long time: if the user doesnt sign up, the session will expire soon or later and if he come back to buy after, let's say, 1 week, probably Drupal will create another cart/order.
We have a maintenance cron that delete all the cart order of anonymous users older than 1 month; even if this doesnt solve the problem, maybe is a little help ;)
** UPDATE **
Yesterday I got a situation like yours, where the add to cart must be a link and not a form (really big list of items).
To prevent fake orders (I remembered your situation), i wrote a small module where if the user is logged in, the item get added to the cart, oterwise the user get redirected to the item's page (where I can then use captcha, honeypots, whaterver)
Hope it can helps.