They're all correct, but they mean four different things (see 马先生's great answer). I think the problem is that you think some words or phrases must always be the same tense, when in reality the tense must reflect the context. Tenses aren't arbitrary - they're used to convey extra information.