A James Brown wonder strike sparked a shock win over Rangers that left them seven points behind Celtic in the Scottish title race.
Saints got their first three points against Rangers since December of last year with a stunning victory by Nicky Clark.
Rangers dominated the game without scoring before Brown's rocket on the stroke of half-time turned the tide.
Pressure is growing on Van Bronckhorst and his Rangers players after a poor season in the European competition.
Rangers had their hosts on the ropes and backs to the wall from the very beginning. It looked like a statement of intent early on, but it wasn't safe.
The deputising keeper had to get down quickly to deny John Lundstram, before watching as Fashion Sakala rose highest at a corner and hit the underside of the net.
A bolt from the blue is what happened next. He picked up the ball 25 yards from the goal for his first goal. As he hit it, he couldn't have hit it any better.
They threw a haymaker that shocked the Rangers. They were going to put them on thecanvas.
Clark scored after Stevie May's low cross was whipped in to the front post.
Rangers were trying to get a response. Lundstram's effort clipped the outside of the post when he got on the end of a flowing move.
The first sign of recovery. Tavernier drilled one straight at the centre of goal through a clutch of bodies, and Parish was able to release it.
There was a crack in the woodwork when Lundstram drove one from a long way away. Rangers were relentless as they had done all game. They did not create anything that was dangerous enough.
If Rangers scored early, Davidson would be in for a long day. Hours must have passed after Tavernier's goal before the whistle blew.
St. John's held on. They were battered looking at most of the statistics. They looked at the pitch and they were all good.
When Rangers failed to adequately test Parish in the first half hour, more than a scintilla of doubt would have begun to loom large.
This was a match in which they were unable to make it count.
The manager is facing questions.
It shows what we can do as a group. We need to keep going on to Wednesday night.
I was surprised when James hit the back of the net. The goalkeeper was great as well.
It's a new group and it's a lot of work. If you don't get a result on Wednesday, there's no point in playing Rangers.
The Rangers manager tells Sportsound that he is disappointed. You are disappointed if you don't take any points. That's what I feel.
The game started well for us. We created a lot of chances in the first 30 minutes but weren't clinical enough to get the first goal. We conceded and that made it even more difficult.
Both Rangers and Hearts will be playing on the same night, with the former hosting the latter at 19:45GMT.