I have this same problem with my 3 1/2 year old granddaughter who is living with me. I had attempted the sticker chart, rewarding her for every 3 successful nights. But over the past few weeks, we've been focusing only on the bedtime routine, and her actually GOING to bed on her own rather than spending the whole night in her room, and rewarding her with stickers and now a 5-day reward. One of MY rewards is that most nights now, she does stay in her room. In 3 weeks, without actually looking at the chart, we've probably had an average of 5 successful nights each week. That's a big accomplishment. I don't even emphasize the all-nighter anymore, just the bedtime part, and the rest is coming along well. And I try to be lenient - she's not feeling well right now, so I give her choices. We'll get back on track when she feels better. I'd rather have her comfortable and getting well than have both of us upset and sleepless in the middle of the night.
After reading some of the other responses, let me add that the "research" that I've done on sleep training says that when a child awakens in the middle of the night, and it's not "the same" as when he went to sleep, that can cause some uneasiness, which can cause the visits to the parents' room. So, if the child is put to bed in his own room before he's asleep, and is told that you will check on him in 5 minutes (follow thru with that), then when he awakens in the middle of the night, because he fell asleep on his own and finds that he's alone, it's no different than when he went to sleep, and then he (eventually) won't have any problems going back to sleep. Just keep in mind that it's called "sleep training" for a reason, and it's training both parent and child. Consistency is most important, and it may take a bit of time before every night is successful. Bedtime routine is an important part of sleep training as well.
I'm so glad, though, to know that we aren't the only family going thru this!!!! Best of luck to all of us!!!!