This does put some risk on the buyerthe risk that he or she will be charged without receiving his or her merchandise. If you consider it from the other angle, if the seller ships first, then attempts to put through the charge, the risk is on him or her if the card is declined. No matter what, unless its a completely simultaneous transaction, as in a face-to-face transaction in a brick-and-mortar store, one of the parties will bear some risk of nonperformance.
If the prospective buyer is worried about this risk, there are various ways to mitigate it:
1) Only do business with reputable stores or merchants; in particular, when possible, only do business with ones that are well known (e.g. Amazon, Macys) or at least have a physical address which you know and to which you could direct correspondence (preferably, a local one, especially for smaller merchants).
2) Read all terms and conditions of sale, including any fine print carefully, so you understand your rights and responsibilities, as well as the procedures for returns, exchanges, resolving disputes, etc.
3) If you dont receive your merchandise within a reasonable time and cant get an answer you believe from the merchant, dispute the charge to your credit card issuer, which can put a hold on the charge, look into the matter for you, and/or refund the money to you.
4) If you have several cards, use one that has some sort of buyer protection program built in.
The reason why (3) and (4) are important is that if you are charged but do not get what you paid for, you dont want to be in the position of having to sue someone over a $50 chargeyoud lose more than youd gain back. Its much better to have some other recourse or way to obtain compensation.