My cat is getting old, and sometimes he fails to use his litterbox. To get rid of urine stains and odor, I bought a bottle of OUT! Cat Spray & Urine Stain & Odor Remover. The product is sold in 24 fl.oz. spray bottles (larger refilling bottles are also available) and is said to be able to deal with cat spray, urine, hairballs, vomit, feces, and other stains. It can be used on carpets, floor, furniture - practically any water-safe surface.
I have used this product only for cat urine, so I do not know about the rest, but when it comes to removing uring stains & smell, I can say that OUT! is okay, but not perfect. It works best on fresh stains, and even then repeated applications are often required. Older spots, even only a day old, take more work, and usually some of the smell will still linger.