How long will you stay there? - this is generally used for people who are going to stay at a place. So they are not already staying at the place at the time they are asked this question.
For example: you go to a hotel to book a room. They ask 'how long will you be staying here?'
How long are you staying there? - this feels more like they have already started staying at the place and so this question would be used.
For example: say you are at the hotel and have stayed for a little while. Other people in the hotel may ask 'how long are you staying here?'
I hope this helps.