First, make sure the drains at the back of the engine bay are clear of rubbish. open the bonnet right back, and about a foot in from either side are two rubber ovals, they have a flappy cover / valve on the end that traps leaves and that, if that gully fills up, you can get water in the footwell, failing that, it could be a pipe on the heater matrix.
Is it only after rain, or all the time ? has the water level dropped in the header tank?
EE