I'm learning English from a TV show and a textbook. I showed some dialogues to a native speaker and she pointed out a sentence. This is the context.
Officer : Have you visited Vietnam within a month?
Dave : No, I haven't.
Officer : Okay. How long are you staying in Vietnam?
Dave : For 12 days. I don't need a visa, right?
Officer : That's correct. You can stay in Vietnam for 15 days without a visa. Do you have a return ticket?
Dave : Yes, here it is.
She said - It should say "within the last month". We would understand it but it would be better to say "have you visited Vietnam within the last month" or "the past month"
I think if she is correct, it's because 'within a month' means 'before a particular period of time has passed from now' so it's not allowed to say with present perfect. Am I correct or are there any other reasons?
A native speaker is a co-host of the show and I heard there are some proofreaders before the book publishes. That's why I am confused and double-checking.
Thank you so much in advance.