What's the difference between the following two sentences?
Was machen Sie heute vor?
Was hast du heute vor?
Which one is correct?
What's the difference between the following two sentences?
Was machen Sie heute vor?
Was hast du heute vor?
Which one is correct?
Your first sentence is wrong (in this context, as it has a different meaning; see last heading). Instead of machen, you have to use haben (like in the second one) from the verb vorhaben:
Was haben Sie heute vor?
Instead, you could als use the verb machen, but without vor, so the sentence would be:
Was machen Sie heute (noch)?
Your second sentence is correct. But you can use both verbs, too:
Was hast du heute vor?
Was machst du heute (noch)?
The first two are the formal form of the second ones and more polite. In German, you have two forms to address someone:
Talking with a friend, you could use one of the second sentences, but if you're talking to a stranger or (maybe) your boss, you should pick one of the first two sentences.
Some further information:
All in all, you can use them both and they don't differ much. I would say, the number 1 and 3 are a bit more formal than 2 and 4.
By the way: the word noch is optional.
Thanks to @Hubert Schölnast's comment, I realised that the first sentence is grammatically correct, but makes no sense in this context as it uses a different verb.
Was machst du/machen Sie heute vor?
It uses the verb vormachen, which means to show something. It isn't used in the context of asking or talking about your plans (today).
Was haben Sie heute vor?
This is more polite than your second version (which is correct).