I have also had good luck with Nature's Miracle. I usually apply the stuff as per the directions on the bottle and then do a sniff test. If I can still smell urine, I apply again. Urine often soaks down into the carpet padding. You'll have to apply enough Nature's Miracle to get down into the padding as well.
I've been using Oxyclean. Saw the product advertise enough on infomercials, finally gave it a shot when I saw it at Target. Works extremely well on odor and stain removal on my carpet...along with just about any other form of dirt.