They're both grammatically correct and have the same meaning. But the first one sounds better and is more polite.
The word "got" is somewhat harsh sounding. Not in feeling, but in the actual sound when you say it. You can usually replace it with another verb that sounds nicer.
I got the new Harry Potter book.
I bought the new Harry Potter book.
I got a cold last week.
I caught a cold last week.
Have you got any pencils?
Do you got any pencils?
Do you have any pencils?